📄 fixgpio.s
字号:
#include <config.h>#include <board.h>#define GPIO_BASE 0x40E00000#define GPLR0 0x000#define GPLR1 0x004#define GPLR2 0x008#define GPDR0 0x00C#define GPDR1 0x010#define GPDR2 0x014#define GPSR0 0x018#define GPSR1 0x01C#define GPSR2 0x020#define GPCR0 0x024#define GPCR1 0x028#define GPCR2 0x02C#define GRER0 0x030#define GRER1 0x034#define GRER2 0x038#define GFER0 0x03C#define GFER1 0x040#define GFER2 0x044#define GDER0 0x048#define GDER1 0x04C#define GDER2 0x050#define GAFR0L 0x054#define GAFR0U 0x058#define GAFR1L 0x05C#define GAFR1U 0x060#define GAFR2L 0x064#define GAFR2U 0x068#if defined(CONFIG_PXA27x)#define GPLR3 0x100#define GPDR3 0x10C#define GPSR3 0x118#define GPCR3 0x124#define GRER3 0x130#define GFER3 0x13C#define GEDR3 0x148#define GAFR3L 0x06C#define GAFR3U 0x070#endif#define PSSR 0x40F00004 /* Power Manager Sleep Status Register */#define PSSR_RDH (1 << 5) /* Read Disable Hold */#define PSSR_PH (1 << 4) /* Peripheral Control Hold */.global define_gpiodefine_gpio : ldr r1, =PSSR ldr r0, [r1] ands r0, r0, #PSSR_RDH moveq pc, lr ldr r1, =GPIO_BASE ldr r0, =_GPSR0 str r0, [r1, #GPSR0] ldr r0, =_GPCR0 str r0, [r1, #GPCR0] ldr r0, =_GAFR0L str r0, [r1, #GAFR0L] ldr r0, =_GAFR0U str r0, [r1, #GAFR0U] ldr r0, =_GPDR0 str r0, [r1, #GPDR0] ldr r0, =_GPSR1 str r0, [r1, #GPSR1] ldr r0, =_GPCR1 str r0, [r1, #GPCR1] ldr r0, =_GAFR1L str r0, [r1, #GAFR1L] ldr r0, =_GAFR1U str r0, [r1, #GAFR1U] ldr r0, =_GPDR1 str r0, [r1, #GPDR1] ldr r0, =_GPSR2 str r0, [r1, #GPSR2] ldr r0, =_GPCR2 str r0, [r1, #GPCR2] ldr r0, =_GAFR2L str r0, [r1, #GAFR2L] ldr r0, =(_GAFR2U & ~0x03) str r0, [r1, #GAFR2U] ldr r0, =_GPDR2 str r0, [r1, #GPDR2] ldr r0, =_GAFR2U str r0, [r1, #GAFR2U]#if defined(CONFIG_PXA27x) ldr r0, =_GPSR3 str r0, [r1, #GPSR3] ldr r0, =_GPCR3 str r0, [r1, #GPCR3] ldr r0, =_GAFR3L str r0, [r1, #GAFR3L] ldr r0, =_GAFR3U str r0, [r1, #GAFR3U] ldr r0, =_GPDR3 str r0, [r1, #GPDR3]#endif @ enable gpio input @ PXA255 Developers Manual @ Table 2-7. Pin Description Notes (p 2-17) ldr r1, =PSSR ldr r0, [r1] str r0, [r1] mov pc, lr
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -