I notice now that the GPIO register names in the great mess o' #defines
doesn't match with the historical names, or with documentation.  This isn't
a huge issue, as we don't really care about the GPIO (legacy "slow" GPIO)
but rather the FGPIO for most of our purposes.  The FGPIO is "correct" and
so I only now noticed.  The new list o' #defines has them in the format
"IODIRx" when the docs and whatnot have them as "IOxDIR"

Ignore, Modify or Replace?

/* General Purpose Input/Output (GPIO) */
#define GPIO_BASE_ADDR        0xE0028000
#define IOPIN0         (*(volatile unsigned int *)(GPIO_BASE_ADDR + 0x00))
#define IOSET0         (*(volatile unsigned int *)(GPIO_BASE_ADDR + 0x04))
#define IODIR0         (*(volatile unsigned int *)(GPIO_BASE_ADDR + 0x08))
#define IOCLR0         (*(volatile unsigned int *)(GPIO_BASE_ADDR + 0x0C))
#define IOPIN1         (*(volatile unsigned int *)(GPIO_BASE_ADDR + 0x10))
#define IOSET1         (*(volatile unsigned int *)(GPIO_BASE_ADDR + 0x14))
#define IODIR1         (*(volatile unsigned int *)(GPIO_BASE_ADDR + 0x18))
#define IOCLR1         (*(volatile unsigned int *)(GPIO_BASE_ADDR + 0x1C))
psas-avionics mailing list

Reply via email to