blob: 1b1bdadea15b835fcfcd8b2711bb8bd28d18234f [file] [log] [blame]
Thomas Gleixnerd2912cb2019-06-04 10:11:33 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Uwe Kleine-Könige2611ba2010-06-16 12:26:53 +02002/*
3 * Copyright (C) 2010 Pengutronix
4 * Uwe Kleine-Koenig <u.kleine-koenig@pengutronix.de>
Uwe Kleine-Könige2611ba2010-06-16 12:26:53 +02005 */
Shawn Guoe0557c02012-09-13 15:51:15 +08006#include "devices/devices-common.h"
Uwe Kleine-Könige2611ba2010-06-16 12:26:53 +02007
Richard Zhaoaf12e3a2011-03-31 18:16:23 +08008extern const struct imx_fec_data imx35_fec_data;
Uwe Kleine-König6bd96f32010-10-06 12:00:18 +02009#define imx35_add_fec(pdata) \
10 imx_add_fec(&imx35_fec_data, pdata)
11
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080012extern const struct imx_fsl_usb2_udc_data imx35_fsl_usb2_udc_data;
Uwe Kleine-König9e1dde32010-11-12 16:40:06 +010013#define imx35_add_fsl_usb2_udc(pdata) \
14 imx_add_fsl_usb2_udc(&imx35_fsl_usb2_udc_data, pdata)
15
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080016extern const struct imx_flexcan_data imx35_flexcan_data[];
Marc Kleine-Budde30caa4b2013-06-10 23:12:56 -030017#define imx35_add_flexcan(id) \
18 imx_add_flexcan(&imx35_flexcan_data[id])
19#define imx35_add_flexcan0() imx35_add_flexcan(0)
20#define imx35_add_flexcan1() imx35_add_flexcan(1)
Marc Kleine-Budde61c68502010-07-22 11:45:34 +020021
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080022extern const struct imx_imx2_wdt_data imx35_imx2_wdt_data;
Benoît Thébaudeaubec31a82012-07-04 16:35:54 +020023#define imx35_add_imx2_wdt() \
Uwe Kleine-König742269e2010-11-15 15:28:45 +010024 imx_add_imx2_wdt(&imx35_imx2_wdt_data)
25
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080026extern const struct imx_imx_i2c_data imx35_imx_i2c_data[];
Uwe Kleine-König64de5ec2010-09-21 12:13:34 +020027#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)
Uwe Kleine-König7cdc8fa2010-06-16 19:25:34 +020032
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080033extern const struct imx_imx_keypad_data imx35_imx_keypad_data;
Ryan Lortie4dbbaa62011-02-26 19:41:53 -050034#define imx35_add_imx_keypad(pdata) \
Uwe Kleine-Königd690b4c2010-11-16 21:27:33 +010035 imx_add_imx_keypad(&imx35_imx_keypad_data, pdata)
36
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080037extern const struct imx_imx_ssi_data imx35_imx_ssi_data[];
Uwe Kleine-König4697bb922010-08-25 17:37:45 +020038#define imx35_add_imx_ssi(id, pdata) \
39 imx_add_imx_ssi(&imx35_imx_ssi_data[id], pdata)
40
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080041extern const struct imx_imx_uart_1irq_data imx35_imx_uart_data[];
Uwe Kleine-König5162de02010-08-10 22:57:24 +020042#define imx35_add_imx_uart(id, pdata) \
43 imx_add_imx_uart_1irq(&imx35_imx_uart_data[id], pdata)
44#define imx35_add_imx_uart0(pdata) imx35_add_imx_uart(0, pdata)
45#define imx35_add_imx_uart1(pdata) imx35_add_imx_uart(1, pdata)
46#define imx35_add_imx_uart2(pdata) imx35_add_imx_uart(2, pdata)
Uwe Kleine-König6eafde52010-06-23 11:49:34 +020047
Uwe Kleine-Königafa77ef2011-03-03 21:32:02 +010048extern const struct imx_ipu_core_data imx35_ipu_core_data;
Shawn Guo88289c82012-06-13 14:07:31 +080049#define imx35_add_ipu_core() \
50 imx_add_ipu_core(&imx35_ipu_core_data)
Uwe Kleine-Königafa77ef2011-03-03 21:32:02 +010051#define imx35_alloc_mx3_camera(pdata) \
52 imx_alloc_mx3_camera(&imx35_ipu_core_data, pdata)
53#define imx35_add_mx3_sdc_fb(pdata) \
54 imx_add_mx3_sdc_fb(&imx35_ipu_core_data, pdata)
55
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080056extern const struct imx_mxc_ehci_data imx35_mxc_ehci_otg_data;
Uwe Kleine-König2d58de22010-11-15 11:57:49 +010057#define imx35_add_mxc_ehci_otg(pdata) \
58 imx_add_mxc_ehci(&imx35_mxc_ehci_otg_data, pdata)
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080059extern const struct imx_mxc_ehci_data imx35_mxc_ehci_hs_data;
Uwe Kleine-König2d58de22010-11-15 11:57:49 +010060#define imx35_add_mxc_ehci_hs(pdata) \
61 imx_add_mxc_ehci(&imx35_mxc_ehci_hs_data, pdata)
62
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080063extern const struct imx_mxc_nand_data imx35_mxc_nand_data;
Uwe Kleine-Könige2611ba2010-06-16 12:26:53 +020064#define imx35_add_mxc_nand(pdata) \
Uwe Kleine-König00b57bf2010-08-23 11:25:52 +020065 imx_add_mxc_nand(&imx35_mxc_nand_data, pdata)
Uwe Kleine-Königa4dc0132010-06-22 10:14:15 +020066
Benoît Thébaudeau114ea992012-07-04 16:36:11 +020067extern const struct imx_mxc_rtc_data imx35_mxc_rtc_data;
68#define imx35_add_mxc_rtc() \
69 imx_add_mxc_rtc(&imx35_mxc_rtc_data)
70
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080071extern const struct imx_mxc_w1_data imx35_mxc_w1_data;
Benoît Thébaudeaubec31a82012-07-04 16:35:54 +020072#define imx35_add_mxc_w1() \
Uwe Kleine-Königae71a562010-10-29 10:56:07 +020073 imx_add_mxc_w1(&imx35_mxc_w1_data)
74
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080075extern const struct imx_sdhci_esdhc_imx_data imx35_sdhci_esdhc_imx_data[];
Uwe Kleine-König124bf942010-11-19 21:03:33 +010076#define imx35_add_sdhci_esdhc_imx(id, pdata) \
77 imx_add_sdhci_esdhc_imx(&imx35_sdhci_esdhc_imx_data[id], pdata)
78
Richard Zhaoaf12e3a2011-03-31 18:16:23 +080079extern const struct imx_spi_imx_data imx35_cspi_data[];
Uwe Kleine-König35bab052010-09-09 21:02:02 +020080#define imx35_add_cspi(id, pdata) \
81 imx_add_spi_imx(&imx35_cspi_data[id], pdata)
82#define imx35_add_spi_imx0(pdata) imx35_add_cspi(0, pdata)
83#define imx35_add_spi_imx1(pdata) imx35_add_cspi(1, pdata)
Fabio Estevamd5534ba2011-08-24 12:04:14 -030084
85extern const struct imx_pata_imx_data imx35_pata_imx_data;
86#define imx35_add_pata_imx() \
87 imx_add_pata_imx(&imx35_pata_imx_data)