ARM: mx3: dynamically allocate fsl-usb2-udc devices
[pandora-kernel.git] / arch / arm / mach-mx3 / devices-imx35.h
1 /*
2  * Copyright (C) 2010 Pengutronix
3  * Uwe Kleine-Koenig <u.kleine-koenig@pengutronix.de>
4  *
5  * This program is free software; you can redistribute it and/or modify it under
6  * the terms of the GNU General Public License version 2 as published by the
7  * Free Software Foundation.
8  */
9 #include <mach/mx35.h>
10 #include <mach/devices-common.h>
11
12 extern const struct imx_fec_data imx35_fec_data __initconst;
13 #define imx35_add_fec(pdata)    \
14         imx_add_fec(&imx35_fec_data, pdata)
15
16 extern const struct imx_fsl_usb2_udc_data imx35_fsl_usb2_udc_data __initconst;
17 #define imx35_add_fsl_usb2_udc(pdata)   \
18         imx_add_fsl_usb2_udc(&imx35_fsl_usb2_udc_data, pdata)
19
20 extern const struct imx_flexcan_data imx35_flexcan_data[] __initconst;
21 #define imx35_add_flexcan(id, pdata)    \
22         imx_add_flexcan(&imx35_flexcan_data[id], pdata)
23 #define imx35_add_flexcan0(pdata)       imx35_add_flexcan(0, pdata)
24 #define imx35_add_flexcan1(pdata)       imx35_add_flexcan(1, pdata)
25
26 extern const struct imx_imx_i2c_data imx35_imx_i2c_data[] __initconst;
27 #define imx35_add_imx_i2c(id, pdata)    \
28         imx_add_imx_i2c(&imx35_imx_i2c_data[id], pdata)
29 #define imx35_add_imx_i2c0(pdata)       imx35_add_imx_i2c(0, pdata)
30 #define imx35_add_imx_i2c1(pdata)       imx35_add_imx_i2c(1, pdata)
31 #define imx35_add_imx_i2c2(pdata)       imx35_add_imx_i2c(2, pdata)
32
33 extern const struct imx_imx_ssi_data imx35_imx_ssi_data[] __initconst;
34 #define imx35_add_imx_ssi(id, pdata)    \
35         imx_add_imx_ssi(&imx35_imx_ssi_data[id], pdata)
36
37 extern const struct imx_imx_uart_1irq_data imx35_imx_uart_data[] __initconst;
38 #define imx35_add_imx_uart(id, pdata)   \
39         imx_add_imx_uart_1irq(&imx35_imx_uart_data[id], pdata)
40 #define imx35_add_imx_uart0(pdata)      imx35_add_imx_uart(0, pdata)
41 #define imx35_add_imx_uart1(pdata)      imx35_add_imx_uart(1, pdata)
42 #define imx35_add_imx_uart2(pdata)      imx35_add_imx_uart(2, pdata)
43
44 extern const struct imx_mxc_nand_data imx35_mxc_nand_data __initconst;
45 #define imx35_add_mxc_nand(pdata)       \
46         imx_add_mxc_nand(&imx35_mxc_nand_data, pdata)
47
48 extern const struct imx_mxc_w1_data imx35_mxc_w1_data __initconst;
49 #define imx35_add_mxc_w1(pdata) \
50         imx_add_mxc_w1(&imx35_mxc_w1_data)
51
52 extern const struct imx_spi_imx_data imx35_cspi_data[] __initconst;
53 #define imx35_add_cspi(id, pdata)       \
54         imx_add_spi_imx(&imx35_cspi_data[id], pdata)
55 #define imx35_add_spi_imx0(pdata)       imx35_add_cspi(0, pdata)
56 #define imx35_add_spi_imx1(pdata)       imx35_add_cspi(1, pdata)
57
58 extern const struct imx_esdhc_imx_data imx35_esdhc_data[] __initconst;
59 #define imx35_add_esdhc(id, pdata)      \
60         imx_add_esdhc(&imx35_esdhc_data[id], pdata)