aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>2010-06-21 11:27:22 -0400
committerUwe Kleine-König <u.kleine-koenig@pengutronix.de>2010-06-30 03:00:46 -0400
commit642e466bf405ba558e68353cd4ae6e8ed640b123 (patch)
tree01d1123c2972fe197d7f8baae612c68b7d1a507b
parent0287073713d2d638bd89aff53750467af657da63 (diff)
ARM: imx: dynamically register spi_imx devices (imx21)
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
-rw-r--r--arch/arm/mach-imx/devices-imx21.h5
-rw-r--r--arch/arm/mach-imx/devices.c3
-rw-r--r--arch/arm/mach-imx/devices.h2
3 files changed, 7 insertions, 3 deletions
diff --git a/arch/arm/mach-imx/devices-imx21.h b/arch/arm/mach-imx/devices-imx21.h
index c6e5f50a7297..de80ccd6f744 100644
--- a/arch/arm/mach-imx/devices-imx21.h
+++ b/arch/arm/mach-imx/devices-imx21.h
@@ -14,3 +14,8 @@
14 14
15#define imx21_add_mxc_nand(pdata) \ 15#define imx21_add_mxc_nand(pdata) \
16 imx_add_mxc_nand_v1(MX21_NFC_BASE_ADDR, MX21_INT_NANDFC, pdata) 16 imx_add_mxc_nand_v1(MX21_NFC_BASE_ADDR, MX21_INT_NANDFC, pdata)
17
18#define imx21_add_spi_imx0(pdata) \
19 imx_add_spi_imx(0, MX21_CSPI1_BASE_ADDR, SZ_4K, MX21_INT_CSPI1, pdata)
20#define imx21_add_spi_imx1(pdata) \
21 imx_add_spi_imx(1, MX21_CSPI2_BASE_ADDR, SZ_4K, MX21_INT_CSPI2, pdata)
diff --git a/arch/arm/mach-imx/devices.c b/arch/arm/mach-imx/devices.c
index f8641c2c9055..e42eead9dd9a 100644
--- a/arch/arm/mach-imx/devices.c
+++ b/arch/arm/mach-imx/devices.c
@@ -225,6 +225,7 @@ int __init imx1_register_gpios(void)
225 * - i.MX21: 2 channel 225 * - i.MX21: 2 channel
226 * - i.MX27: 3 channel 226 * - i.MX27: 3 channel
227 */ 227 */
228#ifdef CONFIG_MACH_MX27
228#define DEFINE_IMX_SPI_DEVICE(n, baseaddr, irq) \ 229#define DEFINE_IMX_SPI_DEVICE(n, baseaddr, irq) \
229 static struct resource mxc_spi_resources ## n[] = { \ 230 static struct resource mxc_spi_resources ## n[] = { \
230 { \ 231 { \
@@ -247,8 +248,6 @@ int __init imx1_register_gpios(void)
247 248
248DEFINE_IMX_SPI_DEVICE(0, MX2x_CSPI1_BASE_ADDR, MX2x_INT_CSPI1); 249DEFINE_IMX_SPI_DEVICE(0, MX2x_CSPI1_BASE_ADDR, MX2x_INT_CSPI1);
249DEFINE_IMX_SPI_DEVICE(1, MX2x_CSPI2_BASE_ADDR, MX2x_INT_CSPI2); 250DEFINE_IMX_SPI_DEVICE(1, MX2x_CSPI2_BASE_ADDR, MX2x_INT_CSPI2);
250
251#ifdef CONFIG_MACH_MX27
252DEFINE_IMX_SPI_DEVICE(2, MX27_CSPI3_BASE_ADDR, MX27_INT_CSPI3); 251DEFINE_IMX_SPI_DEVICE(2, MX27_CSPI3_BASE_ADDR, MX27_INT_CSPI3);
253#endif 252#endif
254 253
diff --git a/arch/arm/mach-imx/devices.h b/arch/arm/mach-imx/devices.h
index 4fe99354f222..c15b0de42d65 100644
--- a/arch/arm/mach-imx/devices.h
+++ b/arch/arm/mach-imx/devices.h
@@ -34,9 +34,9 @@ extern struct platform_device mxc_otg_udc_device;
34extern struct platform_device mxc_otg_host; 34extern struct platform_device mxc_otg_host;
35extern struct platform_device mxc_usbh1; 35extern struct platform_device mxc_usbh1;
36extern struct platform_device mxc_usbh2; 36extern struct platform_device mxc_usbh2;
37#ifdef CONFIG_MACH_MX27
37extern struct platform_device mxc_spi_device0; 38extern struct platform_device mxc_spi_device0;
38extern struct platform_device mxc_spi_device1; 39extern struct platform_device mxc_spi_device1;
39#ifdef CONFIG_MACH_MX27
40extern struct platform_device mxc_spi_device2; 40extern struct platform_device mxc_spi_device2;
41#endif 41#endif
42extern struct platform_device mx21_usbhc_device; 42extern struct platform_device mx21_usbhc_device;