diff options
author | Eric Bénard <eric@eukrea.com> | 2010-10-12 10:29:20 -0400 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2010-10-19 12:45:01 -0400 |
commit | a3927416bf7f5cc9a0cfddab1e36035738bc287c (patch) | |
tree | 2a19eef1b650d28bba587d66a75de018e0026857 | |
parent | 70b1726820ba85febfd067471534a19a9902ea60 (diff) |
cpuimx51: update board support
add NAND, SDHC
Signed-off-by: Eric Bénard <eric@eukrea.com>
-rw-r--r-- | arch/arm/mach-mx5/Kconfig | 3 | ||||
-rw-r--r-- | arch/arm/mach-mx5/board-cpuimx51.c | 9 | ||||
-rw-r--r-- | arch/arm/mach-mx5/eukrea_mbimx51-baseboard.c | 23 |
3 files changed, 34 insertions, 1 deletions
diff --git a/arch/arm/mach-mx5/Kconfig b/arch/arm/mach-mx5/Kconfig index 254b89199dfa..a2df9ac37996 100644 --- a/arch/arm/mach-mx5/Kconfig +++ b/arch/arm/mach-mx5/Kconfig | |||
@@ -31,6 +31,8 @@ config MACH_EUKREA_CPUIMX51 | |||
31 | bool "Support Eukrea CPUIMX51 module" | 31 | bool "Support Eukrea CPUIMX51 module" |
32 | select IMX_HAVE_PLATFORM_IMX_I2C | 32 | select IMX_HAVE_PLATFORM_IMX_I2C |
33 | select IMX_HAVE_PLATFORM_IMX_UART | 33 | select IMX_HAVE_PLATFORM_IMX_UART |
34 | select IMX_HAVE_PLATFORM_MXC_NAND | ||
35 | select IMX_HAVE_PLATFORM_SPI_IMX | ||
34 | help | 36 | help |
35 | Include support for Eukrea CPUIMX51 platform. This includes | 37 | Include support for Eukrea CPUIMX51 platform. This includes |
36 | specific configurations for the module and its peripherals. | 38 | specific configurations for the module and its peripherals. |
@@ -43,6 +45,7 @@ choice | |||
43 | config MACH_EUKREA_MBIMX51_BASEBOARD | 45 | config MACH_EUKREA_MBIMX51_BASEBOARD |
44 | prompt "Eukrea MBIMX51 development board" | 46 | prompt "Eukrea MBIMX51 development board" |
45 | bool | 47 | bool |
48 | select IMX_HAVE_PLATFORM_ESDHC | ||
46 | help | 49 | help |
47 | This adds board specific devices that can be found on Eukrea's | 50 | This adds board specific devices that can be found on Eukrea's |
48 | MBIMX51 evaluation board. | 51 | MBIMX51 evaluation board. |
diff --git a/arch/arm/mach-mx5/board-cpuimx51.c b/arch/arm/mach-mx5/board-cpuimx51.c index 61f051043bbc..378f5327ae77 100644 --- a/arch/arm/mach-mx5/board-cpuimx51.c +++ b/arch/arm/mach-mx5/board-cpuimx51.c | |||
@@ -146,6 +146,13 @@ static struct pad_desc eukrea_cpuimx51_pads[] = { | |||
146 | MX51_PAD_USBH1_STP__USBH1_STP, | 146 | MX51_PAD_USBH1_STP__USBH1_STP, |
147 | }; | 147 | }; |
148 | 148 | ||
149 | static const struct mxc_nand_platform_data | ||
150 | eukrea_cpuimx51_nand_board_info __initconst = { | ||
151 | .width = 1, | ||
152 | .hw_ecc = 1, | ||
153 | .flash_bbt = 1, | ||
154 | }; | ||
155 | |||
149 | static const struct imxuart_platform_data uart_pdata __initconst = { | 156 | static const struct imxuart_platform_data uart_pdata __initconst = { |
150 | .flags = IMXUART_HAVE_RTSCTS, | 157 | .flags = IMXUART_HAVE_RTSCTS, |
151 | }; | 158 | }; |
@@ -239,6 +246,8 @@ static void __init eukrea_cpuimx51_init(void) | |||
239 | ARRAY_SIZE(eukrea_cpuimx51_pads)); | 246 | ARRAY_SIZE(eukrea_cpuimx51_pads)); |
240 | 247 | ||
241 | imx51_add_imx_uart(0, &uart_pdata); | 248 | imx51_add_imx_uart(0, &uart_pdata); |
249 | imx51_add_mxc_nand(&eukrea_cpuimx51_nand_board_info); | ||
250 | |||
242 | gpio_request(CPUIMX51_QUARTA_GPIO, "quarta_irq"); | 251 | gpio_request(CPUIMX51_QUARTA_GPIO, "quarta_irq"); |
243 | gpio_direction_input(CPUIMX51_QUARTA_GPIO); | 252 | gpio_direction_input(CPUIMX51_QUARTA_GPIO); |
244 | gpio_free(CPUIMX51_QUARTA_GPIO); | 253 | gpio_free(CPUIMX51_QUARTA_GPIO); |
diff --git a/arch/arm/mach-mx5/eukrea_mbimx51-baseboard.c b/arch/arm/mach-mx5/eukrea_mbimx51-baseboard.c index d0e417ce2c08..a2e6e8c39d25 100644 --- a/arch/arm/mach-mx5/eukrea_mbimx51-baseboard.c +++ b/arch/arm/mach-mx5/eukrea_mbimx51-baseboard.c | |||
@@ -113,6 +113,22 @@ static struct pad_desc mbimx51_pads[] = { | |||
113 | MX51_PAD_KEY_COL1__KEY_COL1, | 113 | MX51_PAD_KEY_COL1__KEY_COL1, |
114 | MX51_PAD_KEY_COL2__KEY_COL2, | 114 | MX51_PAD_KEY_COL2__KEY_COL2, |
115 | MX51_PAD_KEY_COL3__KEY_COL3, | 115 | MX51_PAD_KEY_COL3__KEY_COL3, |
116 | |||
117 | /* SD 1 */ | ||
118 | MX51_PAD_SD1_CMD__SD1_CMD, | ||
119 | MX51_PAD_SD1_CLK__SD1_CLK, | ||
120 | MX51_PAD_SD1_DATA0__SD1_DATA0, | ||
121 | MX51_PAD_SD1_DATA1__SD1_DATA1, | ||
122 | MX51_PAD_SD1_DATA2__SD1_DATA2, | ||
123 | MX51_PAD_SD1_DATA3__SD1_DATA3, | ||
124 | |||
125 | /* SD 2 */ | ||
126 | MX51_PAD_SD2_CMD__SD2_CMD, | ||
127 | MX51_PAD_SD2_CLK__SD2_CLK, | ||
128 | MX51_PAD_SD2_DATA0__SD2_DATA0, | ||
129 | MX51_PAD_SD2_DATA1__SD2_DATA1, | ||
130 | MX51_PAD_SD2_DATA2__SD2_DATA2, | ||
131 | MX51_PAD_SD2_DATA3__SD2_DATA3, | ||
116 | }; | 132 | }; |
117 | 133 | ||
118 | static const struct imxuart_platform_data uart_pdata __initconst = { | 134 | static const struct imxuart_platform_data uart_pdata __initconst = { |
@@ -159,9 +175,11 @@ struct tsc2007_platform_data tsc2007_data = { | |||
159 | 175 | ||
160 | static struct i2c_board_info mbimx51_i2c_devices[] = { | 176 | static struct i2c_board_info mbimx51_i2c_devices[] = { |
161 | { | 177 | { |
162 | I2C_BOARD_INFO("tsc2007", 0x48), | 178 | I2C_BOARD_INFO("tsc2007", 0x49), |
163 | .irq = MBIMX51_TSC2007_IRQ, | 179 | .irq = MBIMX51_TSC2007_IRQ, |
164 | .platform_data = &tsc2007_data, | 180 | .platform_data = &tsc2007_data, |
181 | }, { | ||
182 | I2C_BOARD_INFO("tlv320aic23", 0x1a), | ||
165 | }, | 183 | }, |
166 | }; | 184 | }; |
167 | 185 | ||
@@ -198,4 +216,7 @@ void __init eukrea_mbimx51_baseboard_init(void) | |||
198 | set_irq_type(MBIMX51_TSC2007_IRQ, IRQF_TRIGGER_FALLING); | 216 | set_irq_type(MBIMX51_TSC2007_IRQ, IRQF_TRIGGER_FALLING); |
199 | i2c_register_board_info(1, mbimx51_i2c_devices, | 217 | i2c_register_board_info(1, mbimx51_i2c_devices, |
200 | ARRAY_SIZE(mbimx51_i2c_devices)); | 218 | ARRAY_SIZE(mbimx51_i2c_devices)); |
219 | |||
220 | imx51_add_esdhc(0, NULL); | ||
221 | imx51_add_esdhc(1, NULL); | ||
201 | } | 222 | } |