blob: 5a4ba35a47ed05a85aa9c03f1d8b5f434ab819cd [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001/* SPDX-License-Identifier: GPL-2.0-only */
2/*
3 * Copyright (C) 2010 Pengutronix
4 * Uwe Kleine-Koenig <u.kleine-koenig@pengutronix.de>
5 */
6#include "devices/devices-common.h"
7
8extern const struct imx_fsl_usb2_udc_data imx31_fsl_usb2_udc_data;
9#define imx31_add_fsl_usb2_udc(pdata) \
10 imx_add_fsl_usb2_udc(&imx31_fsl_usb2_udc_data, pdata)
11
12extern const struct imx_imx2_wdt_data imx31_imx2_wdt_data;
13#define imx31_add_imx2_wdt() \
14 imx_add_imx2_wdt(&imx31_imx2_wdt_data)
15
16extern const struct imx_imx_i2c_data imx31_imx_i2c_data[];
17#define imx31_add_imx_i2c(id, pdata) \
18 imx_add_imx_i2c(&imx31_imx_i2c_data[id], pdata)
19#define imx31_add_imx_i2c0(pdata) imx31_add_imx_i2c(0, pdata)
20#define imx31_add_imx_i2c1(pdata) imx31_add_imx_i2c(1, pdata)
21#define imx31_add_imx_i2c2(pdata) imx31_add_imx_i2c(2, pdata)
22
23extern const struct imx_imx_keypad_data imx31_imx_keypad_data;
24#define imx31_add_imx_keypad(pdata) \
25 imx_add_imx_keypad(&imx31_imx_keypad_data, pdata)
26
27extern const struct imx_imx_ssi_data imx31_imx_ssi_data[];
28#define imx31_add_imx_ssi(id, pdata) \
29 imx_add_imx_ssi(&imx31_imx_ssi_data[id], pdata)
30
31extern const struct imx_imx_uart_1irq_data imx31_imx_uart_data[];
32#define imx31_add_imx_uart(id, pdata) \
33 imx_add_imx_uart_1irq(&imx31_imx_uart_data[id], pdata)
34#define imx31_add_imx_uart0(pdata) imx31_add_imx_uart(0, pdata)
35#define imx31_add_imx_uart1(pdata) imx31_add_imx_uart(1, pdata)
36#define imx31_add_imx_uart2(pdata) imx31_add_imx_uart(2, pdata)
37#define imx31_add_imx_uart3(pdata) imx31_add_imx_uart(3, pdata)
38#define imx31_add_imx_uart4(pdata) imx31_add_imx_uart(4, pdata)
39
40extern const struct imx_ipu_core_data imx31_ipu_core_data;
41#define imx31_add_ipu_core() \
42 imx_add_ipu_core(&imx31_ipu_core_data)
43#define imx31_alloc_mx3_camera(pdata) \
44 imx_alloc_mx3_camera(&imx31_ipu_core_data, pdata)
45#define imx31_add_mx3_sdc_fb(pdata) \
46 imx_add_mx3_sdc_fb(&imx31_ipu_core_data, pdata)
47
48extern const struct imx_mxc_ehci_data imx31_mxc_ehci_otg_data;
49#define imx31_add_mxc_ehci_otg(pdata) \
50 imx_add_mxc_ehci(&imx31_mxc_ehci_otg_data, pdata)
51extern const struct imx_mxc_ehci_data imx31_mxc_ehci_hs_data[];
52#define imx31_add_mxc_ehci_hs(id, pdata) \
53 imx_add_mxc_ehci(&imx31_mxc_ehci_hs_data[id - 1], pdata)
54
55extern const struct imx_mxc_mmc_data imx31_mxc_mmc_data[];
56#define imx31_add_mxc_mmc(id, pdata) \
57 imx_add_mxc_mmc(&imx31_mxc_mmc_data[id], pdata)
58
59extern const struct imx_mxc_nand_data imx31_mxc_nand_data;
60#define imx31_add_mxc_nand(pdata) \
61 imx_add_mxc_nand(&imx31_mxc_nand_data, pdata)
62
63extern const struct imx_mxc_rtc_data imx31_mxc_rtc_data;
64#define imx31_add_mxc_rtc() \
65 imx_add_mxc_rtc(&imx31_mxc_rtc_data)
66
67extern const struct imx_mxc_w1_data imx31_mxc_w1_data;
68#define imx31_add_mxc_w1() \
69 imx_add_mxc_w1(&imx31_mxc_w1_data)
70
71extern const struct imx_spi_imx_data imx31_cspi_data[];
72#define imx31_add_cspi(id, pdata) \
73 imx_add_spi_imx(&imx31_cspi_data[id], pdata)
74#define imx31_add_spi_imx0(pdata) imx31_add_cspi(0, pdata)
75#define imx31_add_spi_imx1(pdata) imx31_add_cspi(1, pdata)
76#define imx31_add_spi_imx2(pdata) imx31_add_cspi(2, pdata)
77
78extern const struct imx_pata_imx_data imx31_pata_imx_data;
79#define imx31_add_pata_imx() \
80 imx_add_pata_imx(&imx31_pata_imx_data)