122 sizeof(g_ppui32GPIOIntMapSnowflake[0]));
167 _GPIOBaseValid(uint32_t ui32Port)
214 uint_fast32_t ui32Idx, ui32Rows;
215 const uint32_t (*ppui32GPIOIntMap)[2];
220 ASSERT(_GPIOBaseValid(ui32Port));
235 for(ui32Idx = 0; ui32Idx < ui32Rows; ui32Idx++)
240 if(ppui32GPIOIntMap[ui32Idx][0] == ui32Port)
245 return(ppui32GPIOIntMap[ui32Idx][1]);
303 ASSERT(_GPIOBaseValid(ui32Port));
340 uint32_t ui32Dir, ui32AFSEL;
345 ASSERT(_GPIOBaseValid(ui32Port));
351 ui8Pin = 1 << ui8Pin;
358 return(((ui32Dir & ui8Pin) ? 1 : 0) | ((ui32AFSEL & ui8Pin) ? 2 : 0));
403 uint32_t ui32IntType)
408 ASSERT(_GPIOBaseValid(ui32Port));
456 uint32_t ui32IBE, ui32IS, ui32IEV, ui32SI;
461 ASSERT(_GPIOBaseValid(ui32Port));
467 ui8Pin = 1 << ui8Pin;
476 return(((ui32IBE & ui8Pin) ? 1 : 0) | ((ui32IS & ui8Pin) ? 2 : 0) |
477 ((ui32IEV & ui8Pin) ? 4 : 0) | (ui32SI & 0x01) ? 0x10000 : 0);
547 uint32_t ui32Strength, uint32_t ui32PinType)
554 ASSERT(_GPIOBaseValid(ui32Port));
577 for(ui8Bit = 0; ui8Bit < 8; ui8Bit++)
579 if(ui8Pins & (1 << ui8Bit))
582 ~(0x3 << (2 * ui8Bit)));
685 uint32_t *pui32Strength, uint32_t *pui32PinType)
687 uint32_t ui32PinType, ui32Strength;
692 ASSERT(_GPIOBaseValid(ui32Port));
698 ui8Pin = (1 << ui8Pin);
709 (2 * ui8Pin)) & 0x3) << 5);
710 *pui32Strength = ui32Strength;
724 *pui32PinType = ui32PinType;
768 ASSERT(_GPIOBaseValid(ui32Port));
808 ASSERT(_GPIOBaseValid(ui32Port));
838 ASSERT(_GPIOBaseValid(ui32Port));
883 ASSERT(_GPIOBaseValid(ui32Port));
919 ASSERT(_GPIOBaseValid(ui32Port));
964 ASSERT(_GPIOBaseValid(ui32Port));
1011 ASSERT(_GPIOBaseValid(ui32Port));
1043 ASSERT(_GPIOBaseValid(ui32Port));
1086 ASSERT(_GPIOBaseValid(ui32Port));
1138 ASSERT(_GPIOBaseValid(ui32Port));
1188 ASSERT(_GPIOBaseValid(ui32Port));
1242 ASSERT(_GPIOBaseValid(ui32Port));
1292 ASSERT(_GPIOBaseValid(ui32Port));
1342 ASSERT(_GPIOBaseValid(ui32Port));
1387 ASSERT(_GPIOBaseValid(ui32Port));
1432 ASSERT(_GPIOBaseValid(ui32Port));
1477 ASSERT(_GPIOBaseValid(ui32Port));
1527 ASSERT(_GPIOBaseValid(ui32Port));
1577 ASSERT(_GPIOBaseValid(ui32Port));
1628 ASSERT(_GPIOBaseValid(ui32Port));
1679 ASSERT(_GPIOBaseValid(ui32Port));
1729 ASSERT(_GPIOBaseValid(ui32Port));
1780 ASSERT(_GPIOBaseValid(ui32Port));
1831 ASSERT(_GPIOBaseValid(ui32Port));
1882 ASSERT(_GPIOBaseValid(ui32Port));
1934 ASSERT(_GPIOBaseValid(ui32Port));
1985 ASSERT(_GPIOBaseValid(ui32Port));
2036 ASSERT(_GPIOBaseValid(ui32Port));
2086 ASSERT(_GPIOBaseValid(ui32Port));
2142 ASSERT(_GPIOBaseValid(ui32Port));
2187 ASSERT(_GPIOBaseValid(ui32Port));
2233 ASSERT(_GPIOBaseValid(ui32Port));
2285 ASSERT(_GPIOBaseValid(ui32Port));
2336 ASSERT(_GPIOBaseValid(ui32Port));
2387 ASSERT(_GPIOBaseValid(ui32Port));
2439 ASSERT(_GPIOBaseValid(ui32Port));
2511 uint32_t ui32Base, ui32Shift;
2516 ASSERT(((ui32PinConfig >> 16) & 0xff) < 15);
2517 ASSERT(((ui32PinConfig >> 8) & 0xe3) == 0);
2522 ui32Base = (ui32PinConfig >> 16) & 0xff;
2530 ui32Base = g_pui32GPIOBaseAddrs[(ui32Base << 1) + 1];
2534 ui32Base = g_pui32GPIOBaseAddrs[ui32Base << 1];
2540 ui32Shift = (ui32PinConfig >> 8) & 0xff;
2546 ~(0xf << ui32Shift)) |
2547 ((ui32PinConfig & 0xf) << ui32Shift));
2571 ASSERT(_GPIOBaseValid(ui32Port));
2599 ASSERT(_GPIOBaseValid(ui32Port));
2630 ASSERT(_GPIOBaseValid(ui32Port));
2658 ASSERT(_GPIOBaseValid(ui32Port));
#define GPIO_PORTB_AHB_BASE
#define INT_GPION_TM4C129
#define GPIO_STRENGTH_4MA
#define GPIO_PORTD_AHB_BASE
void GPIOIntTypeSet(uint32_t ui32Port, uint8_t ui8Pins, uint32_t ui32IntType)
#define INT_GPIOA_TM4C123
#define INT_GPIOG_TM4C129
void GPIOPinTypeWakeHigh(uint32_t ui32Port, uint8_t ui8Pins)
void GPIOPinTypeKBColumn(uint32_t ui32Port, uint8_t ui8Pins)
void GPIOPinTypeEthernetMII(uint32_t ui32Port, uint8_t ui8Pins)
void GPIOPinWrite(uint32_t ui32Port, uint8_t ui8Pins, uint8_t ui8Val)
void GPIOPinTypeI2C(uint32_t ui32Port, uint8_t ui8Pins)
#define INT_GPIOH_TM4C123
#define INT_GPIOE_TM4C123
void GPIOPinTypeUART(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_PIN_TYPE_STD
void GPIOIntUnregister(uint32_t ui32Port)
void GPIOPinTypeEthernetLED(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_PIN_TYPE_STD_WPU
void GPIOIntDisable(uint32_t ui32Port, uint32_t ui32IntFlags)
uint32_t GPIODirModeGet(uint32_t ui32Port, uint8_t ui8Pin)
#define GPIO_FALLING_EDGE
#define INT_GPIOA_TM4C129
#define INT_GPIOJ_TM4C123
#define GPIO_PORTE_AHB_BASE
#define INT_GPIOM_TM4C123
#define INT_GPION_TM4C123
void GPIOPinTypeLEDSeq(uint32_t ui32Port, uint8_t ui8Pins)
static const uint_fast32_t g_ui32GPIOIntMapSnowflakeRows
static uint32_t _GPIOIntNumberGet(uint32_t ui32Port)
#define INT_GPIOL_TM4C123
void GPIOPinTypeEPI(uint32_t ui32Port, uint8_t ui8Pins)
uint32_t GPIOIntTypeGet(uint32_t ui32Port, uint8_t ui8Pin)
void GPIODMATriggerDisable(uint32_t ui32Port, uint8_t ui8Pins)
#define INT_GPIOE_TM4C129
void GPIOPadConfigSet(uint32_t ui32Port, uint8_t ui8Pins, uint32_t ui32Strength, uint32_t ui32PinType)
static const uint32_t g_ppui32GPIOIntMapBlizzard[][2]
#define INT_GPIOH_TM4C129
#define GPIO_DIR_MODE_OUT
void GPIOADCTriggerDisable(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_PIN_TYPE_WAKE_HIGH
#define INT_GPIOG_TM4C123
#define INT_GPIOQ0_TM4C123
#define GPIO_PORTF_AHB_BASE
#define GPIO_PORTA_AHB_BASE
#define INT_GPIOB_TM4C123
void GPIOPinTypePECITx(uint32_t ui32Port, uint8_t ui8Pins)
void GPIOPinTypeI2CSCL(uint32_t ui32Port, uint8_t ui8Pins)
#define INT_GPIOP0_TM4C123
void GPIOPinTypeUSBDigital(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_PIN_TYPE_WAKE_LOW
void GPIOIntEnable(uint32_t ui32Port, uint32_t ui32IntFlags)
void GPIOPinTypeLPC(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_PIN_TYPE_STD_WPD
#define INT_GPIOF_TM4C129
void GPIOPadConfigGet(uint32_t ui32Port, uint8_t ui8Pin, uint32_t *pui32Strength, uint32_t *pui32PinType)
void GPIOIntRegister(uint32_t ui32Port, void(*pfnIntHandler)(void))
void GPIOPinTypePECIRx(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_STRENGTH_8MA
#define INT_GPIOC_TM4C123
#define GPIO_STRENGTH_2MA
void GPIOPinTypePWM(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_STRENGTH_12MA
void GPIODMATriggerEnable(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_PORTH_AHB_BASE
void GPIOADCTriggerEnable(uint32_t ui32Port, uint8_t ui8Pins)
void GPIOPinTypeQEI(uint32_t ui32Port, uint8_t ui8Pins)
#define INT_GPIOK_TM4C123
void GPIOPinTypeLCD(uint32_t ui32Port, uint8_t ui8Pins)
void GPIOPinTypeKBRow(uint32_t ui32Port, uint8_t ui8Pins)
void GPIOPinTypeGPIOOutput(uint32_t ui32Port, uint8_t ui8Pins)
#define INT_GPIOP0_TM4C129
#define GPIO_PORTJ_AHB_BASE
void GPIOPinTypeComparator(uint32_t ui32Port, uint8_t ui8Pins)
void GPIOPinTypeWakeLow(uint32_t ui32Port, uint8_t ui8Pins)
#define INT_GPIOK_TM4C129
void GPIOPinConfigure(uint32_t ui32PinConfig)
#define INT_GPIOJ_TM4C129
#define INT_GPIOM_TM4C129
#define INT_GPIOD_TM4C123
static const uint_fast32_t g_ui32GPIOIntMapBlizzardRows
#define INT_GPIOQ0_TM4C129
void GPIOPinTypeTimer(uint32_t ui32Port, uint8_t ui8Pins)
void IntUnregister(uint32_t ui32Interrupt)
#define INT_GPIOF_TM4C123
void GPIOPinTypeCIR(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_STRENGTH_6MA
void GPIOPinTypeGPIOInput(uint32_t ui32Port, uint8_t ui8Pins)
#define INT_GPIOD_TM4C129
void GPIOPinTypeADC(uint32_t ui32Port, uint8_t ui8Pins)
#define INT_GPIOC_TM4C129
void GPIOPinTypeGPIOOutputOD(uint32_t ui32Port, uint8_t ui8Pins)
uint32_t GPIOPinWakeStatus(uint32_t ui32Port)
void GPIOPinTypeSSI(uint32_t ui32Port, uint8_t ui8Pins)
void GPIOPinTypeUSBAnalog(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_STRENGTH_10MA
void GPIOIntClear(uint32_t ui32Port, uint32_t ui32IntFlags)
#define INT_GPIOL_TM4C129
static const uint32_t g_pui32GPIOBaseAddrs[]
int32_t GPIOPinRead(uint32_t ui32Port, uint8_t ui8Pins)
#define GPIO_PORTG_AHB_BASE
static const uint32_t g_ppui32GPIOIntMapSnowflake[][2]
#define GPIO_STRENGTH_8MA_SC
#define INT_GPIOB_TM4C129
void GPIOPinTypeCAN(uint32_t ui32Port, uint8_t ui8Pins)
void IntDisable(uint32_t ui32Interrupt)
void GPIODirModeSet(uint32_t ui32Port, uint8_t ui8Pins, uint32_t ui32PinIO)
void IntRegister(uint32_t ui32Interrupt, void(*pfnHandler)(void))
void IntEnable(uint32_t ui32Interrupt)
#define GPIO_PORTC_AHB_BASE
uint32_t GPIOIntStatus(uint32_t ui32Port, bool bMasked)
#define GPIO_PIN_TYPE_ANALOG