2 * Copyright (C) 2011 Freescale Semiconductor, Inc. All Rights Reserved.
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License along
15 * with this program; if not, write to the Free Software Foundation, Inc.,
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 #include <mach/devices-common.h>
22 extern const struct imx_imx_uart_1irq_data imx6q_imx_uart_data[] __initconst;
23 #define imx6q_add_imx_uart(id, pdata) \
24 imx_add_imx_uart_1irq(&imx6q_imx_uart_data[id], pdata)
26 extern const struct imx_snvs_rtc_data imx6q_imx_snvs_rtc_data __initconst;
27 #define imx6q_add_imx_snvs_rtc() \
28 imx_add_snvs_rtc(&imx6q_imx_snvs_rtc_data)
30 extern const struct imx_anatop_thermal_imx_data
31 imx6q_anatop_thermal_imx_data __initconst;
32 #define imx6q_add_anatop_thermal_imx(id, pdata) \
33 imx_add_anatop_thermal_imx(&imx6q_anatop_thermal_imx_data, pdata)
35 extern const struct imx_dma_data imx6q_dma_data __initconst;
36 #define imx6q_add_dma() imx_add_dma(&imx6q_dma_data);
38 #define imx6q_add_gpmi(platform_data) imx_add_gpmi(platform_data);
40 extern const struct imx_fec_data imx6q_fec_data __initconst;
41 #define imx6q_add_fec(pdata) \
42 imx_add_fec(&imx6q_fec_data, pdata)
44 extern const struct imx_sdhci_esdhc_imx_data
45 imx6q_sdhci_usdhc_imx_data[] __initconst;
46 #define imx6q_add_sdhci_usdhc_imx(id, pdata) \
47 imx_add_sdhci_esdhc_imx(&imx6q_sdhci_usdhc_imx_data[id], pdata)
49 extern const struct imx_spi_imx_data imx6q_ecspi_data[] __initconst;
50 #define imx6q_add_ecspi(id, pdata) \
51 imx_add_spi_imx(&imx6q_ecspi_data[id], pdata)
53 extern const struct imx_imx_i2c_data imx6q_imx_i2c_data[] __initconst;
54 #define imx6q_add_imx_i2c(id, pdata) \
55 imx_add_imx_i2c(&imx6q_imx_i2c_data[id], pdata)
57 extern const struct imx_fsl_usb2_udc_data imx6q_fsl_usb2_udc_data __initconst;
58 #define imx6q_add_fsl_usb2_udc(pdata) \
59 imx_add_fsl_usb2_udc(&imx6q_fsl_usb2_udc_data, pdata)
61 extern const struct imx_mxc_ehci_data imx6q_mxc_ehci_otg_data __initconst;
62 #define imx6q_add_fsl_ehci_otg(pdata) \
63 imx_add_fsl_ehci(&imx6q_mxc_ehci_otg_data, pdata)
65 extern const struct imx_mxc_ehci_data imx6q_mxc_ehci_hs_data[] __initconst;
66 #define imx6q_add_fsl_ehci_hs(id, pdata) \
67 imx_add_fsl_ehci(&imx6q_mxc_ehci_hs_data[id - 1], pdata)
69 extern const struct imx_fsl_usb2_otg_data imx6q_fsl_usb2_otg_data __initconst;
70 #define imx6q_add_fsl_usb2_otg(pdata) \
71 imx_add_fsl_usb2_otg(&imx6q_fsl_usb2_otg_data, pdata)
73 extern const struct imx_fsl_usb2_wakeup_data imx6q_fsl_otg_wakeup_data __initconst;
74 #define imx6q_add_fsl_usb2_otg_wakeup(pdata) \
75 imx_add_fsl_usb2_wakeup(&imx6q_fsl_otg_wakeup_data, pdata)
77 extern const struct imx_fsl_usb2_wakeup_data imx6q_fsl_hs_wakeup_data[] __initconst;
78 #define imx6q_add_fsl_usb2_hs_wakeup(id, pdata) \
79 imx_add_fsl_usb2_wakeup(&imx6q_fsl_hs_wakeup_data[id - 1], pdata)
81 extern const struct imx_imx_esai_data imx6q_imx_esai_data[] __initconst;
82 #define imx6q_add_imx_esai(id, pdata) \
83 imx_add_imx_esai(&imx6q_imx_esai_data[id], pdata)
85 extern const struct imx_viv_gpu_data imx6_gpu_data __initconst;
87 extern const struct imx_ahci_data imx6q_ahci_data __initconst;
88 #define imx6q_add_ahci(id, pdata) \
89 imx_add_ahci(&imx6q_ahci_data, pdata)
91 extern const struct imx_ipuv3_data imx6q_ipuv3_data[] __initconst;
92 #define imx6q_add_ipuv3(id, pdata) imx_add_ipuv3(id, &imx6q_ipuv3_data[id], pdata)
93 #define imx6q_add_ipuv3fb(id, pdata) imx_add_ipuv3_fb(id, pdata)
95 #define imx6q_add_lcdif(pdata) \
96 platform_device_register_resndata(NULL, "mxc_lcdif",\
97 0, NULL, 0, pdata, sizeof(*pdata));
99 extern const struct imx_ldb_data imx6q_ldb_data __initconst;
100 #define imx6q_add_ldb(pdata) \
101 imx_add_ldb(&imx6q_ldb_data, pdata);
103 #define imx6q_add_v4l2_output(id) \
104 platform_device_register_resndata(NULL, "mxc_v4l2_output",\
105 id, NULL, 0, NULL, 0);
107 #define imx6q_add_v4l2_capture(id) \
108 platform_device_register_resndata(NULL, "mxc_v4l2_capture",\
109 id, NULL, 0, NULL, 0);
111 extern const struct imx_mxc_hdmi_data imx6q_mxc_hdmi_data __initconst;
112 #define imx6q_add_mxc_hdmi(pdata) \
113 imx_add_mxc_hdmi(&imx6q_mxc_hdmi_data, pdata)
115 extern const struct imx_mxc_hdmi_core_data imx6q_mxc_hdmi_core_data __initconst;
116 #define imx6q_add_mxc_hdmi_core() \
117 imx_add_mxc_hdmi_core(&imx6q_mxc_hdmi_core_data)
119 extern const struct imx_vpu_data imx6q_vpu_data __initconst;
120 #define imx6q_add_vpu() imx_add_vpu(&imx6q_vpu_data)
122 extern const struct imx_otp_data imx6q_otp_data __initconst;
123 #define imx6q_add_otp() \
124 imx_add_otp(&imx6q_otp_data)
126 extern const struct imx_viim_data imx6q_viim_data __initconst;
127 #define imx6q_add_viim() \
128 imx_add_viim(&imx6q_viim_data)
130 extern const struct imx_imx2_wdt_data imx6q_imx2_wdt_data[] __initconst;
131 #define imx6q_add_imx2_wdt(id, pdata) \
132 imx_add_imx2_wdt(&imx6q_imx2_wdt_data[id])
134 extern const struct imx_pm_imx_data imx6q_pm_imx_data __initconst;
135 #define imx6q_add_pm_imx(id, pdata) \
136 imx_add_pm_imx(&imx6q_pm_imx_data, pdata)
138 extern const struct imx_imx_asrc_data imx6q_imx_asrc_data[] __initconst;
139 #define imx6q_add_asrc(pdata) \
140 imx_add_imx_asrc(imx6q_imx_asrc_data, pdata)