#ifndef _GSC3280A_IOMUX_H_ #define _GSC3280A_IOMUX_H_ #include #define SYSCTL_IOMUX_USB 33 #define SYSCTL_IOMUX_JTAG 32 #define SYSCTL_IOMUX_EMI 31 #define SYSCTL_IOMUX_SPI1 30 #define SYSCTL_IOMUX_SPI0 29 #define SYSCTL_IOMUX_PWM 28 #define SYSCTL_IOMUX_PS2_1 27 #define SYSCTL_IOMUX_PS2_0 26 #define SYSCTL_IOMUX_I2S 25 #define SYSCTL_IOMUX_I2C 24 #define SYSCTL_IOMUX_KEYPAD 23 #define SYSCTL_IOMUX_MAC_RMII 22 #define SYSCTL_IOMUX_MAC_MII 21 #define SYSCTL_IOMUX_LCDC 20 #define SYSCTL_IOMUX_SCI1_1 19 #define SYSCTL_IOMUX_SCI1_0 18 #define SYSCTL_IOMUX_SCI0 17 #define SYSCTL_IOMUX_CAN_1 16 #define SYSCTL_IOMUX_CAN_0 15 #define SYSCTL_IOMUX_UART7 14 #define SYSCTL_IOMUX_UART6 13 #define SYSCTL_IOMUX_UART5_TXE1 12 #define SYSCTL_IOMUX_UART5_TXE0 11 #define SYSCTL_IOMUX_UART5 10 #define SYSCTL_IOMUX_UART4_1 9 #define SYSCTL_IOMUX_UART4_0 8 #define SYSCTL_IOMUX_UART3_1 7 #define SYSCTL_IOMUX_UART3_0 6 #define SYSCTL_IOMUX_UART2 5 #define SYSCTL_IOMUX_UART1 4 #define SYSCTL_IOMUX_UART0 3 #define SYSCTL_IOMUX_NFC 2 #define SYSCTL_IOMUX_SDIO 1 #define SYSCTL_IOMUX_CLKOUT 0 #define SYSCTL_IOMUX_MIN SYSCTL_IOMUX_CLKOUT #define SYSCTL_IOMUX_MAX SYSCTL_IOMUX_USB #if defined(CONFIG_MAC_RMII) && defined(CONFIG_MAC_MII) #error mac PHY rmii & mii conflict. #endif #if defined(CONFIG_MAC_MII) && (defined(CONFIG_MAC_RMII) || defined(CONFIG_FB_GSC3280) || defined(EMI)) #error mii PHY & some of (rmii, lcdc, emi) conflict. #endif #if defined(CONFIG_MTD_NAND_GSC3280) && defined(EMI) #error nand & emi io conflict. #endif #if defined(CONFIG_UART0) && (defined(CONFIG_CAN_1) || defined(CONFIG_UART5_TXE0) || defined(CONFIG_SCI1_0)) #error uart0 & (can1,uart5_txe0,sci) io conflict. #endif #if defined(CONFIG_UART1) && (defined(CONFIG_GSC3280_PWM) || defined(CONFIG_JTAG)) #error uart1 & (pwm,jtag) conflict; #endif #if defined(CONFIG_UART2) && defined(CONFIG_FB_GSC3280) #error uart2 & lcdc conflict. #endif #if defined(CONFIG_UART3_0) && (defined(CONFIG_MMC_GSC3280) || defined(CONFIG_UART6) || defined(CONFIG_UART3_1)) #error uart3_0 & (sdio(mmc),uart6) conflict. #endif #if defined(CONFIG_UART3_1) && (defined(CONFIG_SCI0/*SCI0*/) || defined(CONFIG_FB_GSC3280) || defined(CONFIG_KEYPAD_GSC3280) || defined(CONFIG_UART3_0) || defined(CONFIG_DISTANCE_SENSOR)) #error uart3_1 & (sci,lcdc,keypad) confict. #endif #if defined(CONFIG_UART4_0) && (defined(CONFIG_UART6) || defined(CONFIG_MMC_GSC3280) || defined(CONFIG_UART4_1)) #error uart4_0 & (sdio,uart6) confict. #endif #if defined(CONFIG_UART4_1) && (defined(CONFIG_SCI0/*SCI0*/) || defined(CONFIG_FB_GSC3280) || defined(CONFIG_KEYPAD_GSC3280) || defined(CONFIG_UART4_0)) #error uart4_1 & (sci,lcdc,keypad) conflict. #endif #if defined(CONFIG_UART5_TXE0) && (defined(CONFIG_CAN_1) || defined(CONFIG_SCI1_0) || defined(CONFIG_UART5_TXE1)) #error uart5_txe0 & (can,sci,uart5_txe1) conflict. #endif #if defined(CONFIG_UART5_TXE1) && (defined(EMI) || defined(CONFIG_SCI1_0) || defined(CONFIG_UART5_TXE0)) #error uart5_txe1 & (emi,sci,uart5_txe0) conflict. #endif #if defined(CONFIG_UART6) && (defined(CONFIG_MMC_GSC3280) || defined(CONFIG_UART3_0) || defined(CONFIG_CAN_0)) #error uart6 & (sdio,uart3_0,can_0) conflict. #endif #if defined(CONFIG_UART7) && defined(CONFIG_FB_GSC3280) #error uart7 & lcdc conflict. #endif #if defined(CONFIG_CAN_0) && (defined(CONFIG_MMC_GSC3280) || defined(CONFIG_UART6) || defined(CONFIG_CAN_1)) #error can_0 & (sdio(mmc),uart6) conflict. #endif #if defined(CONFIG_CAN_1) && (defined(CONFIG_UART0) || defined(CONFIG_UART5_TXE0) || defined(CONFIG_SCI1_0) || defined(CONFIG_CAN_0)) #error can_1 & (uart0,uart5_txe0,sci1_0) conflict. #endif #ifdef SCI_USE_JTMS_AS_HOTPLUG #if defined(CONFIG_SCI0) && (defined(CONFIG_KEYPAD_GSC3280) || defined(EMI) || defined(CONFIG_UART4_1) || defined(CONFIG_UART3_1) || defined(CONFIG_GSC3280_PWM) || defined(CONFIG_JTAG) || defined(CONFIG_DISTANCE_SENSOR)) #error sci0 & (keypad, emi, uart4, uart3_1, pwm, jtag) conflict. #endif #if defined(CONFIG_SCI1_0) && (defined(CONFIG_CAN_1) || defined(CONFIG_UART0) || defined(CONFIG_UART5_TXE0) || defined(CONFIG_UART5_TXE1) || defined(CONFIG_GSC3280_SOC_I2S) || defined(CONFIG_SCI1_1) || defined(CONFIG_GSC3280_PWM) || defined(CONFIG_JTAG)) #error sci1_0 & (can_1,uart0,uart5,i2s,sci1_1, pwm, jtag) conflict. #endif #if defined(CONFIG_SCI1_1) && (defined(CONFIG_FB_GSC3280) || defined(CONFIG_GSC3280_SOC_I2S) || defined(CONFIG_SCI1_0) || defined(CONFIG_GSC3280_PWM) || defined(CONFIG_JTAG)) #error sci1_1 & (lcdc,i2s,sci1_0, pwm, jtag) conflict. #endif #else #if defined(CONFIG_SCI0) && (defined(CONFIG_KEYPAD_GSC3280) || defined(EMI) || defined(CONFIG_UART4_1) || defined(CONFIG_UART3_1) || defined(CONFIG_DISTANCE_SENSOR)) #error sci0 & (keypad, emi, uart4, uart3_1, pwm, jtag) conflict. #endif #if defined(CONFIG_SCI1_0) && (defined(CONFIG_CAN_1) || defined(CONFIG_UART0) || defined(CONFIG_UART5_TXE0) || defined(CONFIG_UART5_TXE1) || defined(CONFIG_GSC3280_SOC_I2S) || defined(CONFIG_SCI1_1)) #error sci1_0 & (can_1,uart0,uart5,i2s,sci1_1, pwm, jtag) conflict. #endif #if defined(CONFIG_SCI1_1) && (defined(CONFIG_FB_GSC3280) || defined(CONFIG_GSC3280_SOC_I2S) || defined(CONFIG_SCI1_0)) #error sci1_1 & (lcdc,i2s,sci1_0, pwm, jtag) conflict. #endif #endif #if defined(CONFIG_FB_GSC3280) && (defined(CONFIG_UART2) || defined(CONFIG_UART3_1) || defined(CONFIG_UART4_1) || defined(CONFIG_UART7) || defined(CONFIG_SCI1_1) || defined(EMI) || defined(CONFIG_MAC_MII)) #error lcdc & (uart2,uart3_1,uart4_1,uart7,sci1_1,emi,mac_mii) conflict. #endif #if defined(CONFIG_KEYPAD_GSC3280) && (defined(CONFIG_SPI0) || defined(EMI) || defined(CONFIG_UART4_1) || defined(CONFIG_UART3_1) || defined(CONFIG_SCI0) || defined(CONFIG_DISTANCE_SENSOR)) #error keypad & (spi0,emi,uart4_1,uart3_1,sci0) conflict. #endif #if defined(CONFIG_GSC3280_SOC_I2S) && (defined(EMI) || defined(CONFIG_GSC3280_PWM) || defined(CONFIG_SCI1_0) || defined(CONFIG_SCI1_1)) #error i2s & (emi,pwm,sci1_0,sci1_1) conflict. #endif #if defined(CONFIG_PS2_0) && (defined(CONFIG_GSC3280_PWM) || defined(EMI)) #error ps2_0 & (pwm,emi) conflict. #endif #if defined(CONFIG_PS2_1) && (defined(CONFIG_GSC3280_PWM) || defined(EMI)) #error ps2_1 & (pwm,emi) conflict. #endif #ifdef SCI_USE_JTMS_AS_HOTPLUG #if defined(CONFIG_GSC3280_PWM) && (defined(CONFIG_GSC3280_SOC_I2S) || defined(EMI) || defined(CONFIG_PS2_0) || defined(CONFIG_PS2_1) || defined(CONFIG_MMC_GSC3280) || defined(CONFIG_UART1) || defined(CONFIG_JTAG) || defined(CONFIG_SCI0) || defined(CONFIG_SCI1_0) || defined(CONFIG_SCI1_1)) #error pwm & (i2s,emi,ps2_0,ps2_1,sdio,uart1,jtag) conflict. #endif #else #if defined(CONFIG_GSC3280_PWM) && (defined(CONFIG_GSC3280_SOC_I2S) || defined(EMI) || defined(CONFIG_PS2_0) || defined(CONFIG_PS2_1) || defined(CONFIG_MMC_GSC3280) || defined(CONFIG_UART1) || defined(CONFIG_JTAG)) #error pwm & (i2s,emi,ps2_0,ps2_1,sdio,uart1,jtag) conflict. #endif #endif #if defined(CONFIG_SPI0) && (defined(CONFIG_KEYPAD_GSC3280) || defined(EMI)) #error spi0 & (keypad,emi) conflict. #endif #if defined(CONFIG_SPI1) && defined(EMI) #error spi1 & emi conflict. #endif #if defined(EMI) && (defined(CONFIG_MTD_NAND_GSC3280) || defined(CONFIG_SPI0) || defined(CONFIG_SPI1) || defined(CONFIG_GSC3280_PWM) || defined(CONFIG_GSC3280_SOC_I2S) || defined(CONFIG_FB_GSC3280) || defined(CONFIG_MAC_RMII) || defined(CONFIG_MAC_MII) || defined(CONFIG_SCI0) || defined(CONFIG_UART5_TXE1) || defined(CONFIG_KEYPAD_GSC3280)) #error emi & (nand,spi0,spi1,pwm,i2s,lcdc,mac_rmii,mac_mii,sci0,uart5_txe1,usb,keypad) conflict. #endif #ifdef SCI_USE_JTMS_AS_HOTPLUG #if defined(CONFIG_JTAG) && (defined(CONFIG_UART1) || defined(CONFIG_GSC3280_PWM) || defined(CONFIG_SCI0) || defined(CONFIG_SCI1_0) || defined(CONFIG_SCI1_1)) #error jtag & (uart1,pwm,sci) conflict. #endif #else #if defined(CONFIG_JTAG) && (defined(CONFIG_UART1) || defined(CONFIG_GSC3280_PWM)) #error jtag & (uart1,pwm) conflict. #endif #endif static char iomux_tab[][16] = { {SYSCTL_IOMUX_CLKOUT, -1, -1, -1, }, {SYSCTL_IOMUX_SDIO, -1, -1, SYSCTL_IOMUX_UART6, SYSCTL_IOMUX_UART3_0, SYSCTL_IOMUX_UART4_0, SYSCTL_IOMUX_CAN_0, SYSCTL_IOMUX_PWM, -1, }, {SYSCTL_IOMUX_NFC, -1, -1, SYSCTL_IOMUX_EMI, -1, }, {SYSCTL_IOMUX_UART0, -1, -1, SYSCTL_IOMUX_CAN_1, SYSCTL_IOMUX_UART5_TXE0, SYSCTL_IOMUX_SCI1_0, -1, }, {SYSCTL_IOMUX_UART1, -1, -1, SYSCTL_IOMUX_PWM, SYSCTL_IOMUX_JTAG, -1, }, {SYSCTL_IOMUX_UART2, -1, -1, SYSCTL_IOMUX_LCDC, -1, }, {SYSCTL_IOMUX_UART3_0, -1, -1, SYSCTL_IOMUX_SDIO, SYSCTL_IOMUX_UART6, -1, }, {SYSCTL_IOMUX_UART3_1, -1, -1, SYSCTL_IOMUX_SCI0, SYSCTL_IOMUX_LCDC, SYSCTL_IOMUX_KEYPAD, -1, }, {SYSCTL_IOMUX_UART4_0, -1, -1, SYSCTL_IOMUX_UART6, SYSCTL_IOMUX_SDIO, -1, }, {SYSCTL_IOMUX_UART4_1, -1, -1, SYSCTL_IOMUX_SCI0, SYSCTL_IOMUX_LCDC, SYSCTL_IOMUX_KEYPAD, -1, }, {-1,/*SYSCTL_IOMUX_UART5*/ }, {SYSCTL_IOMUX_UART5_TXE0, SYSCTL_IOMUX_UART5, -1, SYSCTL_IOMUX_CAN_1, SYSCTL_IOMUX_UART0, SYSCTL_IOMUX_SCI1_0, -1, }, {SYSCTL_IOMUX_UART5_TXE1, SYSCTL_IOMUX_UART5, -1, SYSCTL_IOMUX_EMI, SYSCTL_IOMUX_SCI1_0, -1, }, {SYSCTL_IOMUX_UART6, -1, -1, SYSCTL_IOMUX_SDIO, SYSCTL_IOMUX_UART3_0, SYSCTL_IOMUX_CAN_0, -1, }, {SYSCTL_IOMUX_UART7, -1, -1, SYSCTL_IOMUX_LCDC, -1, }, {SYSCTL_IOMUX_CAN_0, -1, -1, SYSCTL_IOMUX_SDIO, SYSCTL_IOMUX_UART6, -1, }, {SYSCTL_IOMUX_CAN_1, -1, -1, SYSCTL_IOMUX_UART0, SYSCTL_IOMUX_UART5_TXE0, SYSCTL_IOMUX_SCI1_0, -1, }, {SYSCTL_IOMUX_SCI0, -1, -1, SYSCTL_IOMUX_KEYPAD, SYSCTL_IOMUX_EMI, SYSCTL_IOMUX_UART4_1, SYSCTL_IOMUX_UART3_1, #ifdef SCI_USE_JTMS_AS_HOTPLUG SYSCTL_IOMUX_JTAG, SYSCTL_IOMUX_PWM, #endif -1, }, {SYSCTL_IOMUX_SCI1_0, -1, -1, SYSCTL_IOMUX_CAN_1, SYSCTL_IOMUX_UART0, SYSCTL_IOMUX_UART5, SYSCTL_IOMUX_I2S, #ifdef SCI_USE_JTMS_AS_HOTPLUG SYSCTL_IOMUX_JTAG, SYSCTL_IOMUX_PWM, #endif -1, }, {SYSCTL_IOMUX_SCI1_1, -1, -1, SYSCTL_IOMUX_LCDC, SYSCTL_IOMUX_I2S, #ifdef SCI_USE_JTMS_AS_HOTPLUG SYSCTL_IOMUX_JTAG, SYSCTL_IOMUX_PWM, #endif -1, }, {SYSCTL_IOMUX_LCDC, -1, -1, SYSCTL_IOMUX_UART2, SYSCTL_IOMUX_UART3_1, SYSCTL_IOMUX_UART4_1, SYSCTL_IOMUX_UART7, SYSCTL_IOMUX_SCI1_1, SYSCTL_IOMUX_EMI, SYSCTL_IOMUX_MAC_MII, -1, }, {SYSCTL_IOMUX_MAC_MII, -1, -1, SYSCTL_IOMUX_LCDC, SYSCTL_IOMUX_EMI, SYSCTL_IOMUX_MAC_RMII, -1, }, {SYSCTL_IOMUX_MAC_RMII, -1, -1, SYSCTL_IOMUX_MAC_MII, -1, }, {SYSCTL_IOMUX_KEYPAD, -1, -1, SYSCTL_IOMUX_SPI0, SYSCTL_IOMUX_EMI, SYSCTL_IOMUX_UART4_1, SYSCTL_IOMUX_UART3_1, SYSCTL_IOMUX_SCI0, -1, }, {SYSCTL_IOMUX_I2C, -1, -1, -1, }, {SYSCTL_IOMUX_I2S, -1, -1, SYSCTL_IOMUX_EMI, SYSCTL_IOMUX_PWM, SYSCTL_IOMUX_SCI1_0, SYSCTL_IOMUX_SCI1_1, -1, }, {SYSCTL_IOMUX_PS2_0, -1, -1, SYSCTL_IOMUX_PWM, SYSCTL_IOMUX_EMI, -1, }, {SYSCTL_IOMUX_PS2_1, -1, -1, SYSCTL_IOMUX_PWM, SYSCTL_IOMUX_EMI, -1, }, {SYSCTL_IOMUX_PWM, -1, -1, SYSCTL_IOMUX_I2S, SYSCTL_IOMUX_EMI, SYSCTL_IOMUX_PS2_0, SYSCTL_IOMUX_PS2_1, SYSCTL_IOMUX_SDIO, SYSCTL_IOMUX_UART1, SYSCTL_IOMUX_JTAG, #ifdef SCI_USE_JTMS_AS_HOTPLUG SYSCTL_IOMUX_SCI0, SYSCTL_IOMUX_SCI1_0, SYSCTL_IOMUX_SCI1_1, #endif -1, }, {SYSCTL_IOMUX_SPI0, -1, -1, SYSCTL_IOMUX_KEYPAD, SYSCTL_IOMUX_EMI, -1, }, {SYSCTL_IOMUX_SPI1, -1, -1, SYSCTL_IOMUX_EMI, -1, }, {SYSCTL_IOMUX_EMI, -1, -1, SYSCTL_IOMUX_NFC, SYSCTL_IOMUX_SPI0, SYSCTL_IOMUX_SPI1, SYSCTL_IOMUX_PWM, SYSCTL_IOMUX_I2S, SYSCTL_IOMUX_LCDC, SYSCTL_IOMUX_MAC_RMII, SYSCTL_IOMUX_MAC_MII, SYSCTL_IOMUX_SCI0, SYSCTL_IOMUX_UART5_TXE1, SYSCTL_IOMUX_KEYPAD, -1, }, {SYSCTL_IOMUX_JTAG, -1, -1, SYSCTL_IOMUX_UART1, SYSCTL_IOMUX_PWM, #ifdef SCI_USE_JTMS_AS_HOTPLUG SYSCTL_IOMUX_SCI0, SYSCTL_IOMUX_SCI1_0, SYSCTL_IOMUX_SCI1_1, #endif -1, }, {SYSCTL_IOMUX_USB, -1, -1, -1, }, }; #endif