diff --git a/arch/arm/src/lpc17xx/chip/lpc178x_pinconfig.h b/arch/arm/src/lpc17xx/chip/lpc178x_pinconfig.h index 4131513c04..170d9ceee1 100644 --- a/arch/arm/src/lpc17xx/chip/lpc178x_pinconfig.h +++ b/arch/arm/src/lpc17xx/chip/lpc178x_pinconfig.h @@ -76,36 +76,36 @@ #define GPIO_I2S_RXCLK_1 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN4) #define GPIO_CAN2_RD_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN4) #define GPIO_CAP2p0_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN4) -#define GPIO_LCD_VD0_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT0 | GPIO_PIN4) +#define GPIO_LCD_VD0_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT0 | GPIO_PIN4) #define GPIO_I2S_RXWS_1 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN5) #define GPIO_CAN2_TD_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN5) #define GPIO_CAP2p1_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN5) -#define GPIO_LCD_VD1_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT0 | GPIO_PIN5) +#define GPIO_LCD_VD1_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT0 | GPIO_PIN5) #define GPIO_I2S_RXSDA_1 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN6) #define GPIO_SSP1_SSEL_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN6) #define GPIO_MAT2p0_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN6) #define GPIO_UART1_RTS_1 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN6) -#define GPIO_LCD_VD8_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT0 | GPIO_PIN6) +#define GPIO_LCD_VD8_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT0 | GPIO_PIN6) #define GPIO_I2S_TXCLK_1 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN7) #define GPIO_SSP1_SCK_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN7) #define GPIO_MAT2p1_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN7) #define GPIO_RTC_EV0_1 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN7) -#define GPIO_LCD_VD9_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT0 | GPIO_PIN7) +#define GPIO_LCD_VD9_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT0 | GPIO_PIN7) #define GPIO_I2S_TXWS_1 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN8) #define GPIO_SSP1_MISO_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN8) #define GPIO_MAT2p2_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN8) #define GPIO_RTC_EV1_1 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN8) -#define GPIO_LCD_VD16 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT0 | GPIO_PIN8) +#define GPIO_LCD_VD16 (GPIO_ALT7 | GPIO_FLOA | GPIO_HYSTERESIST | GPIO_PORT0 | GPIO_PIN8) #define GPIO_I2S_TXSDA_1 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN9) #define GPIO_SSP1_MOSI_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN9) #define GPIO_MAT2p3_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN9) #define GPIO_RTC_EV2_1 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN9) -#define GPIO_LCD_VD17 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT0 | GPIO_PIN9) +#define GPIO_LCD_VD17 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT0 | GPIO_PIN9) #define GPIO_UART2_TXD_1 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN10) #define GPIO_I2C2_SDA_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN10) @@ -117,11 +117,11 @@ #define GPIO_USB_PPWR2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN12) #define GPIO_SSP1_MISO_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN12) -#define GPIO_AD0p6 (GPIO_ALT3 | GPIO_PULLUP | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN12) +#define GPIO_AD0p6 (GPIO_ALT3 | GPIO_FLOAT | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN12) #define GPIO_USB_LED2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN13) #define GPIO_SSP1_MOSI_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN13) -#define GPIO_AD0p7 (GPIO_ALT3 | GPIO_PULLUP | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN13) +#define GPIO_AD0p7 (GPIO_ALT3 | GPIO_FLOAT | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN13) #define GPIO_USB_HSTEN2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN14) #define GPIO_SSP1_SSEL_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN14) @@ -163,20 +163,20 @@ #define GPIO_CAN1_TD_2 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN22) #define GPIO_SPIFI_SCLK (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN22) -#define GPIO_AD0p0 (GPIO_ALT1 | GPIO_PULLUP | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN23) +#define GPIO_AD0p0 (GPIO_ALT1 | GPIO_FLOAT | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN23) #define GPIO_I2S_RXCLK_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN23) #define GPIO_CAP3p0_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN23) -#define GPIO_AD0p1 (GPIO_ALT1 | GPIO_PULLUP | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN24) +#define GPIO_AD0p1 (GPIO_ALT1 | GPIO_FLOAT | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN24) #define GPIO_I2S_RXWS_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN24) #define GPIO_CAP3p1_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN24) -#define GPIO_AD0p2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN25) +#define GPIO_AD0p2 (GPIO_ALT1 | GPIO_FLOAT | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN25) #define GPIO_I2S_RXSDA_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN25) #define GPIO_UART3_TXD_3 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN25) -#define GPIO_AD0p3 (GPIO_ALT1 | GPIO_PULLUP | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN26) -#define GPIO_AOUT (GPIO_ALT2 | GPIO_PULLUP | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN26) +#define GPIO_AD0p3 (GPIO_ALT1 | GPIO_FLOAT | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN26) +#define GPIO_AOUT (GPIO_ALT2 | GPIO_FLOAT | GPIO_ADMODE | GPIO_PORT0 | GPIO_PIN26) #define GPIO_UART3_RXD_3 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN26) #define GPIO_I2C0_SDA_1 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT0 | GPIO_PIN27) @@ -274,93 +274,93 @@ #define GPIO_QEI_PHA (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN20) #define GPIO_MCPWM_MCFB0 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN20) #define GPIO_SSP0_SCK_2 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN20) -#define GPIO_LCD_VD6_1 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN20) -#define GPIO_LCD_VD10_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN20) +#define GPIO_LCD_VD6_1 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN20) +#define GPIO_LCD_VD10_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN20) #define GPIO_USB1_TXDM (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN21) #define GPIO_PWM1p3_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN21) #define GPIO_SSP0_SSEL_2 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN21) #define GPIO_MCPWM_ABORT (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN21) -#define GPIO_LCD_VD7_1 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN21) -#define GPIO_LCD_VD11_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN21) +#define GPIO_LCD_VD7_1 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN21) +#define GPIO_LCD_VD11_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN21) #define GPIO_USB1_RCV (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN22) #define GPIO_USB1_PWRD (GPIO_ALT2 | GPIO_PULLDN | GPIO_PORT1 | GPIO_PIN22) #define GPIO_MAT1p0_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN22) #define GPIO_MCPWM_MCOB (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN22) #define GPIO_SSP1_MOSI_3 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN22) -#define GPIO_LCD_VD8_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN22) -#define GPIO_LCD_VD12_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN22) +#define GPIO_LCD_VD8_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN22) +#define GPIO_LCD_VD12_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN22) #define GPIO_USB1_RXDP (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN23) #define GPIO_PWM1p4_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN23) #define GPIO_QEI_PHB (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN23) #define GPIO_MCPWM_MCFB1 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN23) #define GPIO_SSP0_MOSI_2 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN23) -#define GPIO_LCD_VD9_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN23) -#define GPIO_LCD_VD13_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN23) +#define GPIO_LCD_VD9_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN23) +#define GPIO_LCD_VD13_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN23) #define GPIO_USB1_RXDM (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN24) #define GPIO_PWM1p5_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN24) #define GPIO_QEI_IDX (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN24) #define GPIO_MCPWM_MCFB2 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN24) #define GPIO_SSP0_MOSI_3 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN24) -#define GPIO_LCD_VD10_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN24) -#define GPIO_LCD_VD14_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN24) +#define GPIO_LCD_VD10_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN24) +#define GPIO_LCD_VD14_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN24) #define GPIO_USB1_LS (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN25) #define GPIO_USB1_HSTEN (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN25) #define GPIO_MAT1p1_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN25) #define GPIO_MCPWM_MC1A (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN25) #define GPIO_CLKOUT_ (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN25) -#define GPIO_LCD_VD11_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN25) -#define GPIO_LCD_VD15_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN25) +#define GPIO_LCD_VD11_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN25) +#define GPIO_LCD_VD15_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN25) #define GPIO_USB1_SSPND (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN26) #define GPIO_PWM1p6_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN26) #define GPIO_CAP0p0_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN26) #define GPIO_MCPWM_MC1B (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN26) #define GPIO_SSP1_SSEL_3 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN26) -#define GPIO_LCD_VD12_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN26) -#define GPIO_LCD_VD20 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN26) +#define GPIO_LCD_VD12_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN26) +#define GPIO_LCD_VD20 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN26) #define GPIO_USB1_INT (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN27) #define GPIO_USB1_OVRCR (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN27) #define GPIO_CAP0p1_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN27) #define GPIO_CLKOUT_2 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN27) -#define GPIO_LCD_VD13_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN27) -#define GPIO_LCD_VD21 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN27) +#define GPIO_LCD_VD13_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN27) +#define GPIO_LCD_VD21 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN27) #define GPIO_USB1_SCL (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN28) #define GPIO_PCAP1p0_1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN28) #define GPIO_MAT0p0_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN28) #define GPIO_MCPWM_MC2A (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN28) #define GPIO_SSP0_SSEL_3 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN28) -#define GPIO_LCD_VD14_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN28) -#define GPIO_LCD_VD22 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN28) +#define GPIO_LCD_VD14_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN28) +#define GPIO_LCD_VD22 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN28) #define GPIO_USB1_SDA (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN29) #define GPIO_PCAP1p1 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN29) #define GPIO_MAT0p1_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN29) #define GPIO_MCPWM_MC2B (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN29) #define GPIO_UART4_TXD_2 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN29) -#define GPIO_LCD_VD15_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN29) -#define GPIO_LCD_VD23 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN29) +#define GPIO_LCD_VD15_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN29) +#define GPIO_LCD_VD23 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT1 | GPIO_PIN29) #define GPIO_USB2_PWRD (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN30) #define GPIO_USB_VBUS (GPIO_ALT2 | GPIO_FLOAT | GPIO_PORT1 | GPIO_PIN30) -#define GPIO_AD0p4 (GPIO_ALT3 | GPIO_PULLUP | GPIO_ADMODE | GPIO_PORT1 | GPIO_PIN30) +#define GPIO_AD0p4 (GPIO_ALT3 | GPIO_FLOAT | GPIO_ADMODE | GPIO_PORT1 | GPIO_PIN30) #define GPIO_I2C0_SDA_2 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN30) #define GPIO_UART3_OE (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN30) #define GPIO_USB2_OVRCR (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN31) #define GPIO_SSP1_SCK_3 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN31) -#define GPIO_AD0p5 (GPIO_ALT3 | GPIO_PULLUP | GPIO_ADMODE | GPIO_PORT1 | GPIO_PIN31) +#define GPIO_AD0p5 (GPIO_ALT3 | GPIO_FLOAT | GPIO_ADMODE | GPIO_PORT1 | GPIO_PIN31) #define GPIO_I2C0_SCL_2 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT1 | GPIO_PIN31) #define GPIO_PWM1p1_2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN0) #define GPIO_UART1_TXD_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN0) -#define GPIO_LCD_PWR (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN0) +#define GPIO_LCD_PWR (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN0) #define GPIO_PWM1p2_2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN1) #define GPIO_UART1_RXD_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN1) @@ -370,53 +370,53 @@ #define GPIO_UART1_CTS_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN2) #define GPIO_MAT2p3_2 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN2) #define GPIO_TRACEDATA3 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN2) -#define GPIO_LCD_DCLK (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN2) +#define GPIO_LCD_DCLK (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN2 ) #define GPIO_PWM1p4_2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN3) #define GPIO_UART1_DCD_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN3) #define GPIO_MAT2p2_2 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN3) #define GPIO_TRACEDATA2 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN3) -#define GPIO_LCD_FP (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN3) +#define GPIO_LCD_FP (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN3) #define GPIO_PWM1p5_2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN4) #define GPIO_UART1_DSR_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN4) #define GPIO_MAT2p1_2 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN4) #define GPIO_TRACEDATA1 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN4) -#define GPIO_LCD_ENABM (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN4) +#define GPIO_LCD_ENABM (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN4) #define GPIO_PWM1p6_2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN5) #define GPIO_UART1_DTR_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN5) #define GPIO_MAT2p0_2 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN5) #define GPIO_TRACEDATA0 (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN5) -#define GPIO_LCD_LP (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN5) +#define GPIO_LCD_LP (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN5) #define GPIO_PCAP1p0_2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN6) #define GPIO_UART1_RI_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN6) #define GPIO_CAP2p0_3 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN6) #define GPIO_UART2_OE_2 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN6) #define GPIO_TRACECLK (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN6) -#define GPIO_LCD_VD0_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN6) -#define GPIO_LCD_VD4_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN6) +#define GPIO_LCD_VD0_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN6) +#define GPIO_LCD_VD4_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN6) #define GPIO_CAN2_RD_2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN7) #define GPIO_UART1_RTS_3 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN7) #define GPIO_SPIFI_CS (GPIO_ALT5 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN7) -#define GPIO_LCD_VD1_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN7) -#define GPIO_LCD_VD5_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN7) +#define GPIO_LCD_VD1_2 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN7) +#define GPIO_LCD_VD5_1 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN7) #define GPIO_CAN2_TD_2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN8) #define GPIO_UART2_TXD_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN8) #define GPIO_UART1_CTS_3 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN8) #define GPIO_ENET_MDC_2 (GPIO_ALT4 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN8) -#define GPIO_LCD_VD2_1 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN8) -#define GPIO_LCD_VD6_2 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN8) +#define GPIO_LCD_VD2_1 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN8) +#define GPIO_LCD_VD6_2 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN8) #define GPIO_USB1_CONNECT (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN9) #define GPIO_UART2_RXD_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN9) #define GPIO_UART4_RXD_1 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN9) #define GPIO_ENET_MDIO_2 (GPIO_ALT4 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN9) -#define GPIO_LCD_VD3_1 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN9) -#define GPIO_LCD_VD7_2 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN9) +#define GPIO_LCD_VD3_1 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN9) +#define GPIO_LCD_VD7_2 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN9) #define GPIO_EINT0_2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN10) #define GPIO_NMI (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN10) @@ -429,17 +429,17 @@ #define GPIO_EINT2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN12) #define GPIO_SD_DAT2_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN12) #define GPIO_I2S_TXWS_2 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN12) -#define GPIO_LCD_VD4_2 (GPIO_ALT4 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN12) -#define GPIO_LCD_VD3_2 (GPIO_ALT5 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN12) -#define GPIO_LCD_VD8_3 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN12) -#define GPIO_LCD_VD18 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN12) +#define GPIO_LCD_VD4_2 (GPIO_ALT4 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN12) +#define GPIO_LCD_VD3_2 (GPIO_ALT5 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN12) +#define GPIO_LCD_VD8_3 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN12) +#define GPIO_LCD_VD18 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN12) #define GPIO_EINT3 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN13) #define GPIO_SD_DAT3_2 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN13) #define GPIO_I2S_TXSDA_2 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN13) -#define GPIO_LCD_VD5_2 (GPIO_ALT5 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN13) -#define GPIO_LCD_VD9_3 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN13) -#define GPIO_LCD_VD19 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT2 | GPIO_PIN13) +#define GPIO_LCD_VD5_2 (GPIO_ALT5 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN13) +#define GPIO_LCD_VD9_3 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN13) +#define GPIO_LCD_VD19 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT2 | GPIO_PIN13) #define GPIO_EMC_CS2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN14) #define GPIO_I2C1_SDA_3 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT2 | GPIO_PIN14) @@ -613,17 +613,17 @@ #define GPIO_EMC_BLS2 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT4 | GPIO_PIN28) #define GPIO_UART3_TXD_4 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT4 | GPIO_PIN28) #define GPIO_MAT2p0_3 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT4 | GPIO_PIN28) -#define GPIO_LCD_VD6_3 (GPIO_ALT5 | GPIO_FLOAT | GPIO_PORT4 | GPIO_PIN28) -#define GPIO_LCD_VD10_3 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT4 | GPIO_PIN28) -#define GPIO_LCD_VD2_2 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT4 | GPIO_PIN28) +#define GPIO_LCD_VD6_3 (GPIO_ALT5 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT4 | GPIO_PIN28) +#define GPIO_LCD_VD10_3 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT4 | GPIO_PIN28) +#define GPIO_LCD_VD2_2 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT4 | GPIO_PIN28) #define GPIO_EMC_BLS3 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT4 | GPIO_PIN29) #define GPIO_UART3_RXD_4 (GPIO_ALT2 | GPIO_PULLUP | GPIO_PORT4 | GPIO_PIN29) #define GPIO_MAT2p1_3 (GPIO_ALT3 | GPIO_PULLUP | GPIO_PORT4 | GPIO_PIN29) #define GPIO_I2C2_SCL_3 (GPIO_ALT4 | GPIO_PULLUP | GPIO_PORT4 | GPIO_PIN29) -#define GPIO_LCD_VD7_3 (GPIO_ALT5 | GPIO_FLOAT | GPIO_PORT4 | GPIO_PIN29) -#define GPIO_LCD_VD11_3 (GPIO_ALT6 | GPIO_FLOAT | GPIO_PORT4 | GPIO_PIN29) -#define GPIO_LCD_VD3_3 (GPIO_ALT7 | GPIO_FLOAT | GPIO_PORT4 | GPIO_PIN29) +#define GPIO_LCD_VD7_3 (GPIO_ALT5 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT4 | GPIO_PIN29) +#define GPIO_LCD_VD11_3 (GPIO_ALT6 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT4 | GPIO_PIN29) +#define GPIO_LCD_VD3_3 (GPIO_ALT7 | GPIO_FLOAT | GPIO_HYSTERESIS | GPIO_PORT4 | GPIO_PIN29) #define GPIO_EMC_CS0 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT4 | GPIO_PIN30) #define GPIO_EMC_CS1 (GPIO_ALT1 | GPIO_PULLUP | GPIO_PORT4 | GPIO_PIN31) diff --git a/arch/arm/src/lpc17xx/lpc178x_gpio.c b/arch/arm/src/lpc17xx/lpc178x_gpio.c index 2272858a2e..2e72d7a227 100755 --- a/arch/arm/src/lpc17xx/lpc178x_gpio.c +++ b/arch/arm/src/lpc17xx/lpc178x_gpio.c @@ -278,33 +278,26 @@ static void lpc17_setinvertinput(unsigned int port, unsigned int pin) * ****************************************************************************/ -static void lpc17_setslewfast(unsigned int port, unsigned int pin) +static void lpc17_setslewmode(lpc17_pinset_t cfgset, unsigned int port, + unsigned int pin) { uint32_t regaddr; uint32_t regval; + uint32_t value; + + /* Decode the request output slew rate */ + + value = ((cfgset & GPIO_SLEW) >> GPIO_SLEW_SHIFT); + + /* Get the current IOCON register contents */ regaddr = LPC17_IOCON_P(port, pin); regval = getreg32(regaddr); - regval |= IOCON_SLEW_MASK; - putreg32(regval, regaddr); -} -/**************************************************************************** - * Name: lpc17_setslewnormal - * - * Description: - * Configure pin mode slew rate drive. Applies to Type D and Type W pins - * - ****************************************************************************/ + /* Set the driver slew rate */ -static void lpc17_setslewnormal(unsigned int port, unsigned int pin) -{ - uint32_t regaddr; - uint32_t regval; - - regaddr = LPC17_IOCON_P(port, pin); - regval = getreg32(regaddr); regval &= ~IOCON_SLEW_MASK; + regval |= ((value << IOCON_SLEW_SHIFT) & IOCON_SLEW_MASK); putreg32(regval, regaddr); } @@ -396,38 +389,29 @@ static void lpc17_setdacdisable(unsigned int port, unsigned int pin) * ****************************************************************************/ -static void lpc17_setfilter(unsigned int port, unsigned int pin) +static void lpc17_setfilter(lpc17_pinset_t cfgset, unsigned int port, + unsigned int pin) { uint32_t regaddr; uint32_t regval; + uint32_t value; + + /* Decode the request input filter */ + + value = ((cfgset & GPIO_FILTER) >> GPIO_FILTER_SHIFT); + + /* Get the current IOCON register contents */ regaddr = LPC17_IOCON_P(port, pin); regval = getreg32(regaddr); + + /* Set the input filter enable bit */ + regval &= ~IOCON_FILTER_MASK; + regval |= ((value << IOCON_FILTER_SHIFT) & IOCON_FILTER_MASK); putreg32(regval, regaddr); } -/**************************************************************************** - * Name: lpc17_clrfilter - * - * Description: - * Configure analog pin's glitch filter. Applies to Type A and Type W pins - * - ****************************************************************************/ - -#if 0 /* Not used */ -static void lpc17_clrfilter(unsigned int port, unsigned int pin) -{ - uint32_t regaddr; - uint32_t regval; - - regaddr = LPC17_IOCON_P(port, pin); - regval = getreg32(regaddr); - regval |= IOCON_FILTER_MASK; - putreg32(regval, regaddr); -} -#endif - /**************************************************************************** * Name: lpc17_setopendrain * @@ -468,28 +452,6 @@ static void lpc17_clropendrain(unsigned int port, unsigned int pin) putreg32(regval, regaddr); } -/**************************************************************************** - * Name: lpc17_clrhysteresis - * - * Description: - * Configure a GPIO's hysteresis mode. Applies to Type D and Type W pins - * Default is enabled. - * - ****************************************************************************/ - -#if 0 /* Not used */ -static void lpc17_clrhysteresis(unsigned int port, unsigned int pin) -{ - uint32_t regaddr; - uint32_t regval; - - regaddr = LPC17_IOCON_P(port, pin); - regval = getreg32(regaddr); - regval &= ~IOCON_HYS_MASK; - putreg32(regval, regaddr); -} -#endif - /**************************************************************************** * Name: lpc17_sethysteresis * @@ -499,14 +461,26 @@ static void lpc17_clrhysteresis(unsigned int port, unsigned int pin) * ****************************************************************************/ -static void lpc17_sethysteresis(unsigned int port, unsigned int pin) +static void lpc17_sethysteresis(lpc17_pinset_t cfgset, unsigned int port, + unsigned int pin) { uint32_t regaddr; uint32_t regval; + uint32_t value; + + /* Decode the request input buffer */ + + value = ((cfgset & GPIO_HYSTERESIS) >> GPIO_INBUFF_SHIFT); + + /* Get the current IOCON register contents */ regaddr = LPC17_IOCON_P(port, pin); regval = getreg32(regaddr); - regval |= IOCON_HYS_MASK; + + /* Set the input buffer enable bit */ + + regval &= ~IOCON_HYS_MASK; + regval |= ((value << IOCON_HYS_SHIFT) & IOCON_HYS_MASK); putreg32(regval, regaddr); } @@ -538,7 +512,7 @@ static void lpc17_setpullup(lpc17_pinset_t cfgset, unsigned int port, /* Set the new mode bits */ regval &= ~IOCON_MODE_MASK; - regval |= (pinmode << IOCON_MODE_SHIFT); + regval |= ((pinmode << IOCON_MODE_SHIFT) & IOCON_MODE_MASK); putreg32(regval, regaddr); } @@ -646,21 +620,13 @@ static inline int lpc17_configinput(lpc17_pinset_t cfgset, unsigned int port, lpc17_setinvertinput(port, pin); } - /* Set hysteresis */ + /* Set input hysteresis */ - if ((cfgset & GPIO_HYSTERESIS) != 0) - { - lpc17_sethysteresis(port, pin); - } + lpc17_sethysteresis(cfgset, port, pin); - /* Set filtering */ + /* Set input filtering */ - if ((cfgset & GPIO_FILTER) != 0) - { - /* Slew rate is normal mode at reset */ - - lpc17_setfilter(port, pin); - } + lpc17_setfilter(cfgset, port, pin); /* Configure as GPIO */ @@ -737,22 +703,9 @@ static inline int lpc17_configoutput(lpc17_pinset_t cfgset, unsigned int port, lpc17_setopendrain(port, pin); } - /* Check for slew rate output */ + /* Set output slew rate */ - if ((cfgset & GPIO_SLEW) != 0) - { - /* Slew rate is normal mode at reset */ - - lpc17_setslewfast(port, pin); - } - else - { - /* But we still may need to set the normal mode because we may - * be reconfiguring the GPIO pin. - */ - - lpc17_setslewnormal(port, pin); - } + lpc17_setslewmode(cfgset, port, pin); /* Set the initial value of the output */ diff --git a/arch/arm/src/lpc17xx/lpc178x_gpio.h b/arch/arm/src/lpc17xx/lpc178x_gpio.h index 2e80b0de10..953f5d8430 100644 --- a/arch/arm/src/lpc17xx/lpc178x_gpio.h +++ b/arch/arm/src/lpc17xx/lpc178x_gpio.h @@ -61,11 +61,14 @@ */ #define GPIO_IOCON_MASK (0x00ff0000) -# define GPIO_HYSTERESIS (1 << 16) /* Bit 16: HYSTERESIS: 0-Disable, 1-Enabled */ +# define GPIO_INBUFF_SHIFT (16) +# define GPIO_HYSTERESIS (1 << GPIO_INBUFF_SHIFT) /* Bit 16: HYSTERESIS: 0-Disable, 1-Enabled */ # define GPIO_INVERT (1 << 17) /* Bit 17: Input: 0-Not Inverted, 1-Inverted */ -# define GPIO_SLEW (1 << 18) /* Bit 18: Rate Control: 0-Standard mode, 1-Fast mode */ +# define GPIO_SLEW_SHIFT (18) /* Bit 18: Rate Control: 0-Standard mode, 1-Fast mode */ +# define GPIO_SLEW (1 << GPIO_SLEW_SHIFT) /* Bit 18: Rate Control: 0-Standard mode, 1-Fast mode */ # define GPIO_ADMODE (1 << 19) /* Bit 19: A/D Modes: 0-Analog, 1-Digital */ -# define GPIO_FILTER (1 << 20) /* Bit 20: Filter: 0-Off, 1-ON */ +# define GPIO_FILTER_SHIFT (20) +# define GPIO_FILTER (1 << GPIO_FILTER_SHIFT) /* Bit 20: Filter: 0-Off, 1-ON */ # define GPIO_DACEN (1 << 21) /* Bit 21: DAC: 0-Disabled, 1-Enabled, P0:26 only */ # define GPIO_I2CMODE_SHIFT (22) /* Bits 22-23: I2C mode */