]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/arm/mach-mx3/devices-imx35.h
ARM: mx3: dynamically allocate fsl-usb2-udc devices
[karo-tx-linux.git] / arch / arm / mach-mx3 / devices-imx35.h
index 766008451ccd44940004aedc84a51e93361dbf26..36561ccdfbd6a1ec3a6ae4e7378c63493bdfb9ab 100644 (file)
@@ -9,10 +9,19 @@
 #include <mach/mx35.h>
 #include <mach/devices-common.h>
 
-#define imx35_add_flexcan0(pdata)      \
-       imx_add_flexcan(0, MX35_CAN1_BASE_ADDR, SZ_16K, MX35_INT_CAN1, pdata)
-#define imx35_add_flexcan1(pdata)      \
-       imx_add_flexcan(1, MX35_CAN2_BASE_ADDR, SZ_16K, MX35_INT_CAN2, pdata)
+extern const struct imx_fec_data imx35_fec_data __initconst;
+#define imx35_add_fec(pdata)   \
+       imx_add_fec(&imx35_fec_data, pdata)
+
+extern const struct imx_fsl_usb2_udc_data imx35_fsl_usb2_udc_data __initconst;
+#define imx35_add_fsl_usb2_udc(pdata)  \
+       imx_add_fsl_usb2_udc(&imx35_fsl_usb2_udc_data, pdata)
+
+extern const struct imx_flexcan_data imx35_flexcan_data[] __initconst;
+#define imx35_add_flexcan(id, pdata)   \
+       imx_add_flexcan(&imx35_flexcan_data[id], pdata)
+#define imx35_add_flexcan0(pdata)      imx35_add_flexcan(0, pdata)
+#define imx35_add_flexcan1(pdata)      imx35_add_flexcan(1, pdata)
 
 extern const struct imx_imx_i2c_data imx35_imx_i2c_data[] __initconst;
 #define imx35_add_imx_i2c(id, pdata)   \
@@ -36,15 +45,16 @@ extern const struct imx_mxc_nand_data imx35_mxc_nand_data __initconst;
 #define imx35_add_mxc_nand(pdata)      \
        imx_add_mxc_nand(&imx35_mxc_nand_data, pdata)
 
+extern const struct imx_mxc_w1_data imx35_mxc_w1_data __initconst;
+#define imx35_add_mxc_w1(pdata)        \
+       imx_add_mxc_w1(&imx35_mxc_w1_data)
+
 extern const struct imx_spi_imx_data imx35_cspi_data[] __initconst;
 #define imx35_add_cspi(id, pdata)      \
        imx_add_spi_imx(&imx35_cspi_data[id], pdata)
 #define imx35_add_spi_imx0(pdata)      imx35_add_cspi(0, pdata)
 #define imx35_add_spi_imx1(pdata)      imx35_add_cspi(1, pdata)
 
-#define imx35_add_esdhc0(pdata)        \
-       imx_add_esdhc(0, MX35_ESDHC1_BASE_ADDR, SZ_16K, MX35_INT_MMC_SDHC1, pdata)
-#define imx35_add_esdhc1(pdata)        \
-       imx_add_esdhc(1, MX35_ESDHC2_BASE_ADDR, SZ_16K, MX35_INT_MMC_SDHC2, pdata)
-#define imx35_add_esdhc2(pdata)        \
-       imx_add_esdhc(2, MX35_ESDHC3_BASE_ADDR, SZ_16K, MX35_INT_MMC_SDHC3, pdata)
+extern const struct imx_esdhc_imx_data imx35_esdhc_data[] __initconst;
+#define imx35_add_esdhc(id, pdata)     \
+       imx_add_esdhc(&imx35_esdhc_data[id], pdata)