aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-mx2/Kconfig9
-rw-r--r--arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c8
-rw-r--r--arch/arm/mach-mx2/mach-cpuimx27.c6
3 files changed, 22 insertions, 1 deletions
diff --git a/arch/arm/mach-mx2/Kconfig b/arch/arm/mach-mx2/Kconfig
index 742fd4e6dcb9..9d3a9091dd74 100644
--- a/arch/arm/mach-mx2/Kconfig
+++ b/arch/arm/mach-mx2/Kconfig
@@ -67,9 +67,16 @@ config MACH_EUKREA_CPUIMX27_USESDHC2
67 bool "CPUIMX27 integrates SDHC2 module" 67 bool "CPUIMX27 integrates SDHC2 module"
68 depends on MACH_CPUIMX27 68 depends on MACH_CPUIMX27
69 help 69 help
70 This adds support for the internal SDHC2 used on CPUIMX27 used 70 This adds support for the internal SDHC2 used on CPUIMX27
71 for wifi or eMMC. 71 for wifi or eMMC.
72 72
73config MACH_EUKREA_CPUIMX27_USEUART4
74 bool "CPUIMX27 integrates UART4 module"
75 depends on MACH_CPUIMX27
76 help
77 This adds support for the internal UART4 used on CPUIMX27
78 for bluetooth.
79
73choice 80choice
74 prompt "Baseboard" 81 prompt "Baseboard"
75 depends on MACH_CPUIMX27 82 depends on MACH_CPUIMX27
diff --git a/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c b/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c
index 91ab7bbd9fc0..fff6c8dc4b3b 100644
--- a/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c
+++ b/arch/arm/mach-mx2/eukrea_mbimx27-baseboard.c
@@ -50,10 +50,12 @@ static int eukrea_mbimx27_pins[] = {
50 PE10_PF_UART3_CTS, 50 PE10_PF_UART3_CTS,
51 PE11_PF_UART3_RTS, 51 PE11_PF_UART3_RTS,
52 /* UART4 */ 52 /* UART4 */
53#if !defined(MACH_EUKREA_CPUIMX27_USEUART4)
53 PB26_AF_UART4_RTS, 54 PB26_AF_UART4_RTS,
54 PB28_AF_UART4_TXD, 55 PB28_AF_UART4_TXD,
55 PB29_AF_UART4_CTS, 56 PB29_AF_UART4_CTS,
56 PB31_AF_UART4_RXD, 57 PB31_AF_UART4_RXD,
58#endif
57 /* SDHC1*/ 59 /* SDHC1*/
58 PE18_PF_SD1_D0, 60 PE18_PF_SD1_D0,
59 PE19_PF_SD1_D1, 61 PE19_PF_SD1_D1,
@@ -229,6 +231,9 @@ static struct imxuart_platform_data uart_pdata[] = {
229 { 231 {
230 .flags = IMXUART_HAVE_RTSCTS, 232 .flags = IMXUART_HAVE_RTSCTS,
231 }, 233 },
234 {
235 .flags = IMXUART_HAVE_RTSCTS,
236 },
232}; 237};
233 238
234#if defined(CONFIG_TOUCHSCREEN_ADS7846) 239#if defined(CONFIG_TOUCHSCREEN_ADS7846)
@@ -293,6 +298,9 @@ void __init eukrea_mbimx27_baseboard_init(void)
293 298
294 mxc_register_device(&mxc_uart_device1, &uart_pdata[0]); 299 mxc_register_device(&mxc_uart_device1, &uart_pdata[0]);
295 mxc_register_device(&mxc_uart_device2, &uart_pdata[1]); 300 mxc_register_device(&mxc_uart_device2, &uart_pdata[1]);
301#if !defined(MACH_EUKREA_CPUIMX27_USEUART4)
302 mxc_register_device(&mxc_uart_device3, &uart_pdata[2]);
303#endif
296 304
297 mxc_register_device(&mxc_fb_device, &eukrea_mbimx27_fb_data); 305 mxc_register_device(&mxc_fb_device, &eukrea_mbimx27_fb_data);
298 mxc_register_device(&mxc_sdhc_device0, NULL); 306 mxc_register_device(&mxc_sdhc_device0, NULL);
diff --git a/arch/arm/mach-mx2/mach-cpuimx27.c b/arch/arm/mach-mx2/mach-cpuimx27.c
index 1f616dcaabc9..5c6a16b45891 100644
--- a/arch/arm/mach-mx2/mach-cpuimx27.c
+++ b/arch/arm/mach-mx2/mach-cpuimx27.c
@@ -49,10 +49,12 @@ static int eukrea_cpuimx27_pins[] = {
49 PE14_PF_UART1_CTS, 49 PE14_PF_UART1_CTS,
50 PE15_PF_UART1_RTS, 50 PE15_PF_UART1_RTS,
51 /* UART4 */ 51 /* UART4 */
52#if defined(MACH_EUKREA_CPUIMX27_USEUART4)
52 PB26_AF_UART4_RTS, 53 PB26_AF_UART4_RTS,
53 PB28_AF_UART4_TXD, 54 PB28_AF_UART4_TXD,
54 PB29_AF_UART4_CTS, 55 PB29_AF_UART4_CTS,
55 PB31_AF_UART4_RXD, 56 PB31_AF_UART4_RXD,
57#endif
56 /* FEC */ 58 /* FEC */
57 PD0_AIN_FEC_TXD0, 59 PD0_AIN_FEC_TXD0,
58 PD1_AIN_FEC_TXD1, 60 PD1_AIN_FEC_TXD1,
@@ -76,12 +78,14 @@ static int eukrea_cpuimx27_pins[] = {
76 PD17_PF_I2C_DATA, 78 PD17_PF_I2C_DATA,
77 PD18_PF_I2C_CLK, 79 PD18_PF_I2C_CLK,
78 /* SDHC2 */ 80 /* SDHC2 */
81#if defined(CONFIG_MACH_EUKREA_CPUIMX27_USESDHC2)
79 PB4_PF_SD2_D0, 82 PB4_PF_SD2_D0,
80 PB5_PF_SD2_D1, 83 PB5_PF_SD2_D1,
81 PB6_PF_SD2_D2, 84 PB6_PF_SD2_D2,
82 PB7_PF_SD2_D3, 85 PB7_PF_SD2_D3,
83 PB8_PF_SD2_CMD, 86 PB8_PF_SD2_CMD,
84 PB9_PF_SD2_CLK, 87 PB9_PF_SD2_CLK,
88#endif
85#if defined(CONFIG_SERIAL_8250) || defined(CONFIG_SERIAL_8250_MODULE) 89#if defined(CONFIG_SERIAL_8250) || defined(CONFIG_SERIAL_8250_MODULE)
86 /* Quad UART's IRQ */ 90 /* Quad UART's IRQ */
87 GPIO_PORTD | 22 | GPIO_GPIO | GPIO_IN, 91 GPIO_PORTD | 22 | GPIO_GPIO | GPIO_IN,
@@ -202,6 +206,8 @@ static void __init eukrea_cpuimx27_init(void)
202#if defined(CONFIG_MACH_EUKREA_CPUIMX27_USESDHC2) 206#if defined(CONFIG_MACH_EUKREA_CPUIMX27_USESDHC2)
203 /* SDHC2 can be used for Wifi */ 207 /* SDHC2 can be used for Wifi */
204 mxc_register_device(&mxc_sdhc_device1, NULL); 208 mxc_register_device(&mxc_sdhc_device1, NULL);
209#endif
210#if defined(MACH_EUKREA_CPUIMX27_USEUART4)
205 /* in which case UART4 is also used for Bluetooth */ 211 /* in which case UART4 is also used for Bluetooth */
206 mxc_register_device(&mxc_uart_device3, &uart_pdata[1]); 212 mxc_register_device(&mxc_uart_device3, &uart_pdata[1]);
207#endif 213#endif