Merge tag 'efi-2019-07-rc2-2' of git://git.denx.de/u-boot-efi
[platform/kernel/u-boot.git] / board / ti / dra7xx / mux_data.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * (C) Copyright 2013
4  * Texas Instruments Incorporated, <www.ti.com>
5  *
6  * Sricharan R  <r.sricharan@ti.com>
7  * Nishant Kamat <nskamat@ti.com>
8  */
9 #ifndef _MUX_DATA_DRA7XX_H_
10 #define _MUX_DATA_DRA7XX_H_
11
12 #include <asm/arch/mux_dra7xx.h>
13
14 const struct pad_conf_entry dra72x_core_padconf_array_common[] = {
15         {GPMC_AD0, (M3 | PIN_INPUT)},   /* gpmc_ad0.vout3_d0 */
16         {GPMC_AD1, (M3 | PIN_INPUT)},   /* gpmc_ad1.vout3_d1 */
17         {GPMC_AD2, (M3 | PIN_INPUT)},   /* gpmc_ad2.vout3_d2 */
18         {GPMC_AD3, (M3 | PIN_INPUT)},   /* gpmc_ad3.vout3_d3 */
19         {GPMC_AD4, (M3 | PIN_INPUT)},   /* gpmc_ad4.vout3_d4 */
20         {GPMC_AD5, (M3 | PIN_INPUT)},   /* gpmc_ad5.vout3_d5 */
21         {GPMC_AD6, (M3 | PIN_INPUT)},   /* gpmc_ad6.vout3_d6 */
22         {GPMC_AD7, (M3 | PIN_INPUT)},   /* gpmc_ad7.vout3_d7 */
23         {GPMC_AD8, (M3 | PIN_INPUT)},   /* gpmc_ad8.vout3_d8 */
24         {GPMC_AD9, (M3 | PIN_INPUT)},   /* gpmc_ad9.vout3_d9 */
25         {GPMC_AD10, (M3 | PIN_INPUT)},  /* gpmc_ad10.vout3_d10 */
26         {GPMC_AD11, (M3 | PIN_INPUT)},  /* gpmc_ad11.vout3_d11 */
27         {GPMC_AD12, (M3 | PIN_INPUT)},  /* gpmc_ad12.vout3_d12 */
28         {GPMC_AD13, (M3 | PIN_INPUT)},  /* gpmc_ad13.vout3_d13 */
29         {GPMC_AD14, (M3 | PIN_INPUT)},  /* gpmc_ad14.vout3_d14 */
30         {GPMC_AD15, (M3 | PIN_INPUT)},  /* gpmc_ad15.vout3_d15 */
31         {GPMC_A0, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a0.vout3_d16 */
32         {GPMC_A1, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a1.vout3_d17 */
33         {GPMC_A2, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a2.vout3_d18 */
34         {GPMC_A3, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a3.vout3_d19 */
35         {GPMC_A4, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a4.vout3_d20 */
36         {GPMC_A5, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a5.vout3_d21 */
37         {GPMC_A6, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a6.vout3_d22 */
38         {GPMC_A7, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a7.vout3_d23 */
39         {GPMC_A8, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a8.vout3_hsync */
40         {GPMC_A9, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a9.vout3_vsync */
41         {GPMC_A10, (M3 | PIN_INPUT_PULLDOWN)},  /* gpmc_a10.vout3_de */
42         {GPMC_A11, (M14 | PIN_INPUT_PULLDOWN)}, /* gpmc_a11.gpio2_1 */
43         {GPMC_A13, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* gpmc_a13.qspi1_rtclk */
44         {GPMC_A14, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* gpmc_a14.qspi1_d3 */
45         {GPMC_A15, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* gpmc_a15.qspi1_d2 */
46         {GPMC_A16, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* gpmc_a16.qspi1_d0 */
47         {GPMC_A17, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* gpmc_a17.qspi1_d1 */
48         {GPMC_A18, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* gpmc_a18.qspi1_sclk */
49         {GPMC_A19, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a19.mmc2_dat4 */
50         {GPMC_A20, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a20.mmc2_dat5 */
51         {GPMC_A21, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a21.mmc2_dat6 */
52         {GPMC_A22, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a22.mmc2_dat7 */
53         {GPMC_A23, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a23.mmc2_clk */
54         {GPMC_A24, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a24.mmc2_dat0 */
55         {GPMC_A25, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a25.mmc2_dat1 */
56         {GPMC_A26, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a26.mmc2_dat2 */
57         {GPMC_A27, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a27.mmc2_dat3 */
58         {GPMC_CS1, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_cs1.mmc2_cmd */
59         {GPMC_CS2, (M1 | PIN_INPUT_PULLUP | MANUAL_MODE)}, /* gpmc_cs2.qspi1_cs0 */
60         {GPMC_CS3, (M3 | PIN_INPUT_PULLUP)},    /* gpmc_cs3.vout3_clk */
61         {VIN2A_CLK0, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE9)},        /* vin2a_clk0.vin2a_clk0 */
62         {VIN2A_HSYNC0, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE6)},      /* vin2a_hsync0.vin2a_hsync0 */
63         {VIN2A_VSYNC0, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE9)},      /* vin2a_vsync0.vin2a_vsync0 */
64         {VIN2A_D0, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE14)}, /* vin2a_d0.vin2a_d0 */
65         {VIN2A_D1, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE14)}, /* vin2a_d1.vin2a_d1 */
66         {VIN2A_D2, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE14)}, /* vin2a_d2.vin2a_d2 */
67         {VIN2A_D3, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE8)},  /* vin2a_d3.vin2a_d3 */
68         {VIN2A_D4, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE8)},  /* vin2a_d4.vin2a_d4 */
69         {VIN2A_D5, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE8)},  /* vin2a_d5.vin2a_d5 */
70         {VIN2A_D6, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE6)},  /* vin2a_d6.vin2a_d6 */
71         {VIN2A_D7, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE6)},  /* vin2a_d7.vin2a_d7 */
72         {VIN2A_D8, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE2)},  /* vin2a_d8.vin2a_d8 */
73         {VIN2A_D9, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE2)},  /* vin2a_d9.vin2a_d9 */
74         {VIN2A_D10, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE5)}, /* vin2a_d10.vin2a_d10 */
75         {VIN2A_D11, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE5)}, /* vin2a_d11.vin2a_d11 */
76         {VOUT1_CLK, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_clk.vout1_clk */
77         {VOUT1_DE, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_de.vout1_de */
78         {VOUT1_HSYNC, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* vout1_hsync.vout1_hsync */
79         {VOUT1_VSYNC, (M0 | PIN_INPUT_PULLDOWN)},       /* vout1_vsync.vout1_vsync */
80         {VOUT1_D0, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d0.vout1_d0 */
81         {VOUT1_D1, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d1.vout1_d1 */
82         {VOUT1_D2, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d2.vout1_d2 */
83         {VOUT1_D3, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d3.vout1_d3 */
84         {VOUT1_D4, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d4.vout1_d4 */
85         {VOUT1_D5, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d5.vout1_d5 */
86         {VOUT1_D6, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d6.vout1_d6 */
87         {VOUT1_D7, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d7.vout1_d7 */
88         {VOUT1_D8, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d8.vout1_d8 */
89         {VOUT1_D9, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d9.vout1_d9 */
90         {VOUT1_D10, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d10.vout1_d10 */
91         {VOUT1_D11, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d11.vout1_d11 */
92         {VOUT1_D12, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d12.vout1_d12 */
93         {VOUT1_D13, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d13.vout1_d13 */
94         {VOUT1_D14, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d14.vout1_d14 */
95         {VOUT1_D15, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d15.vout1_d15 */
96         {VOUT1_D16, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d16.vout1_d16 */
97         {VOUT1_D17, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d17.vout1_d17 */
98         {VOUT1_D18, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d18.vout1_d18 */
99         {VOUT1_D19, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d19.vout1_d19 */
100         {VOUT1_D20, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d20.vout1_d20 */
101         {VOUT1_D21, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d21.vout1_d21 */
102         {VOUT1_D22, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d22.vout1_d22 */
103         {VOUT1_D23, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d23.vout1_d23 */
104         {MDIO_MCLK, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* mdio_mclk.mdio_mclk */
105         {MDIO_D, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},        /* mdio_d.mdio_d */
106         {USB1_DRVVBUS, (M0 | PIN_INPUT_SLEW)},  /* usb1_drvvbus.usb1_drvvbus */
107         {USB2_DRVVBUS, (M0 | PIN_INPUT_SLEW)},  /* usb2_drvvbus.usb2_drvvbus */
108         {GPIO6_14, (M9 | PIN_INPUT_PULLUP)},    /* gpio6_14.i2c3_sda */
109         {GPIO6_15, (M9 | PIN_INPUT_PULLUP)},    /* gpio6_15.i2c3_scl */
110         {GPIO6_16, (M14 | PIN_INPUT_PULLUP)},   /* gpio6_16.gpio6_16 */
111         {MCASP1_AXR0, (M10 | PIN_INPUT_SLEW)},  /* mcasp1_axr0.i2c5_sda */
112         {MCASP1_AXR1, (M10 | PIN_INPUT_SLEW)},  /* mcasp1_axr1.i2c5_scl */
113         {MCASP1_AXR2, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr2.gpio5_4 */
114         {MCASP1_AXR3, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr3.gpio5_5 */
115         {MCASP1_AXR4, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr4.gpio5_6 */
116         {MCASP1_AXR5, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr5.gpio5_7 */
117         {MCASP1_AXR6, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr6.gpio5_8 */
118         {MCASP1_AXR7, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr7.gpio5_9 */
119         {MCASP1_AXR12, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr12.mcasp7_axr0 */
120         {MCASP1_AXR13, (M1 | PIN_INPUT_SLEW)},  /* mcasp1_axr13.mcasp7_axr1 */
121         {MCASP1_AXR14, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr14.mcasp7_aclkx */
122         {MCASP1_AXR15, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr15.mcasp7_fsx */
123         {MCASP2_ACLKR, (M0 | PIN_INPUT_PULLDOWN)},      /* mcasp2_aclkr.mcasp2_aclkr */
124         {MCASP3_ACLKX, (M0 | PIN_INPUT_PULLDOWN)},      /* mcasp3_aclkx.mcasp3_aclkx */
125         {MCASP3_FSX, (M0 | PIN_INPUT_SLEW)},    /* mcasp3_fsx.mcasp3_fsx */
126         {MCASP3_AXR0, (M0 | PIN_INPUT_SLEW)},   /* mcasp3_axr0.mcasp3_axr0 */
127         {MCASP3_AXR1, (M0 | PIN_INPUT_SLEW | VIRTUAL_MODE6)},   /* mcasp3_axr1.mcasp3_axr1 */
128         {MMC1_CLK, (M0 | PIN_INPUT_PULLUP)},    /* mmc1_clk.mmc1_clk */
129         {MMC1_CMD, (M0 | PIN_INPUT_PULLUP)},    /* mmc1_cmd.mmc1_cmd */
130         {MMC1_DAT0, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat0.mmc1_dat0 */
131         {MMC1_DAT1, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat1.mmc1_dat1 */
132         {MMC1_DAT2, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat2.mmc1_dat2 */
133         {MMC1_DAT3, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat3.mmc1_dat3 */
134         {MMC1_SDCD, (M14 | PIN_INPUT_PULLUP)},  /* mmc1_sdcd.gpio6_27 */
135         {MMC1_SDWP, (M14 | PIN_INPUT_SLEW)},    /* mmc1_sdwp.gpio6_28 */
136         {SPI1_SCLK, (M0 | PIN_INPUT_PULLDOWN)}, /* spi1_sclk.spi1_sclk */
137         {SPI1_D1, (M0 | PIN_INPUT_PULLDOWN)},   /* spi1_d1.spi1_d1 */
138         {SPI1_D0, (M0 | PIN_INPUT_PULLDOWN)},   /* spi1_d0.spi1_d0 */
139         {SPI1_CS0, (M0 | PIN_INPUT_PULLUP)},    /* spi1_cs0.spi1_cs0 */
140         {SPI1_CS1, (M14 | PIN_OUTPUT)}, /* spi1_cs1.gpio7_11 */
141         {SPI1_CS2, (M14 | PIN_INPUT_PULLDOWN)}, /* spi1_cs2.gpio7_12 */
142         {SPI1_CS3, (M6 | PIN_INPUT | SLEWCONTROL)},     /* spi1_cs3.hdmi1_cec */
143         {SPI2_SCLK, (M1 | PIN_INPUT_PULLDOWN)}, /* spi2_sclk.uart3_rxd */
144         {SPI2_D1, (M1 | PIN_INPUT_SLEW)},       /* spi2_d1.uart3_txd */
145         {SPI2_D0, (M1 | PIN_INPUT_SLEW)},       /* spi2_d0.uart3_ctsn */
146         {SPI2_CS0, (M1 | PIN_INPUT_PULLUP | SLEWCONTROL)},      /* spi2_cs0.uart3_rtsn */
147         {DCAN1_TX, (M15 | PULL_UP)},    /* dcan1_tx.safe for dcan1_tx */
148         {DCAN1_RX, (M14 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* dcan1_rx.gpio1_15 */
149         {UART1_RXD, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* uart1_rxd.uart1_rxd */
150         {UART1_TXD, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* uart1_txd.uart1_txd */
151         {UART1_CTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart1_ctsn.mmc4_clk */
152         {UART1_RTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart1_rtsn.mmc4_cmd */
153         {UART2_RXD, (M3 | PIN_INPUT_PULLUP)},   /* uart2_rxd.mmc4_dat0 */
154         {UART2_TXD, (M3 | PIN_INPUT_PULLUP)},   /* uart2_txd.mmc4_dat1 */
155         {UART2_CTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart2_ctsn.mmc4_dat2 */
156         {UART2_RTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart2_rtsn.mmc4_dat3 */
157         {I2C2_SDA, (M1 | PIN_INPUT_PULLUP)},    /* i2c2_sda.hdmi1_ddc_scl */
158         {I2C2_SCL, (M1 | PIN_INPUT_PULLUP)},    /* i2c2_scl.hdmi1_ddc_sda */
159         {WAKEUP0, (M15 | PULL_UP)},     /* Wakeup0.safe for dcan1_rx */
160         {WAKEUP3, (M1 | PULL_ENA | PULL_UP)},   /* Wakeup3.sys_nirq1 */
161 };
162
163 const struct pad_conf_entry dra72x_rgmii_padconf_array_revb[] = {
164         {GPIO6_11, (M14 | PIN_INPUT_PULLUP)},   /* gpio6_11.gpio6_11 */
165         {RGMII0_TXC, (M0 | PIN_OUTPUT | MANUAL_MODE)},  /* rgmii0_txc.rgmii0_txc */
166         {RGMII0_TXCTL, (M0 | PIN_OUTPUT | MANUAL_MODE)},        /* rgmii0_txctl.rgmii0_txctl */
167         {RGMII0_TXD3, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd3.rgmii0_txd3 */
168         {RGMII0_TXD2, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd2.rgmii0_txd2 */
169         {RGMII0_TXD1, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd1.rgmii0_txd1 */
170         {RGMII0_TXD0, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd0.rgmii0_txd0 */
171         {RGMII0_RXC, (M0 | PIN_INPUT | MANUAL_MODE)},   /* rgmii0_rxc.rgmii0_rxc */
172         {RGMII0_RXCTL, (M0 | PIN_INPUT | MANUAL_MODE)}, /* rgmii0_rxctl.rgmii0_rxctl */
173         {RGMII0_RXD3, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_rxd3.rgmii0_rxd3 */
174         {RGMII0_RXD2, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_rxd2.rgmii0_rxd2 */
175         {RGMII0_RXD1, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_rxd1.rgmii0_rxd1 */
176         {RGMII0_RXD0, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_rxd0.rgmii0_rxd0 */
177         {VIN2A_D12, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d0.rgmii1_txc */
178         {VIN2A_D13, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d1.rgmii1_txctl */
179         {VIN2A_D14, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d2.rgmii1_txd3 */
180         {VIN2A_D15, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d3.rgmii1_txd2 */
181         {VIN2A_D16, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d4.rgmii1_txd1 */
182         {VIN2A_D17, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d5.rgmii1_txd0 */
183         {VIN2A_D18, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d6.rgmii1_rxc */
184         {VIN2A_D19, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d7.rgmii1_rxctl */
185         {VIN2A_D20, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d8.rgmii1_rxd3 */
186         {VIN2A_D21, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d9.rgmii1_rxd2 */
187         {VIN2A_D22, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d10.rgmii1_rxd1 */
188         {VIN2A_D23, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d11.rgmii1_rxd0 */
189         {XREF_CLK1, (M5 | PIN_OUTPUT)}, /* xref_clk1.atl_clk1 */
190         {XREF_CLK2, (M5 | PIN_OUTPUT)}, /* xref_clk2.atl_clk2 */
191 };
192
193 const struct pad_conf_entry dra72x_rgmii_padconf_array_revc[] = {
194         {VIN2A_FLD0, (M14 | PIN_INPUT)},        /* vin2a_fld0.gpio3_30 */
195         {RGMII0_TXC, (M0 | PIN_OUTPUT | MANUAL_MODE)},  /* rgmii0_txc.rgmii0_txc */
196         {RGMII0_TXCTL, (M0 | PIN_OUTPUT | MANUAL_MODE)},        /* rgmii0_txctl.rgmii0_txctl */
197         {RGMII0_TXD3, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd3.rgmii0_txd3 */
198         {RGMII0_TXD2, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd2.rgmii0_txd2 */
199         {RGMII0_TXD1, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd1.rgmii0_txd1 */
200         {RGMII0_TXD0, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd0.rgmii0_txd0 */
201         {RGMII0_RXC, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},  /* rgmii0_rxc.rgmii0_rxc */
202         {RGMII0_RXCTL, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},        /* rgmii0_rxctl.rgmii0_rxctl */
203         {RGMII0_RXD3, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd3.rgmii0_rxd3 */
204         {RGMII0_RXD2, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd2.rgmii0_rxd2 */
205         {RGMII0_RXD1, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd1.rgmii0_rxd1 */
206         {RGMII0_RXD0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd0.rgmii0_rxd0 */
207         {VIN2A_D12, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d12.rgmii1_txc */
208         {VIN2A_D13, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d13.rgmii1_txctl */
209         {VIN2A_D14, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d14.rgmii1_txd3 */
210         {VIN2A_D15, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d15.rgmii1_txd2 */
211         {VIN2A_D16, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d16.rgmii1_txd1 */
212         {VIN2A_D17, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d17.rgmii1_txd0 */
213         {VIN2A_D18, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d18.rgmii1_rxc */
214         {VIN2A_D19, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d19.rgmii1_rxctl */
215         {VIN2A_D20, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d20.rgmii1_rxd3 */
216         {VIN2A_D21, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d21.rgmii1_rxd2 */
217         {VIN2A_D22, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d22.rgmii1_rxd1 */
218         {VIN2A_D23, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d23.rgmii1_rxd0 */
219         {XREF_CLK2, (M5 | PIN_INPUT_PULLDOWN)}, /* xref_clk2.atl_clk2 */
220 };
221
222 const struct pad_conf_entry dra71x_core_padconf_array[] = {
223         {GPMC_A0, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a0.vout3_d16 */
224         {GPMC_A1, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a1.vout3_d17 */
225         {GPMC_A2, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a2.vout3_d18 */
226         {GPMC_A3, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a3.vout3_d19 */
227         {GPMC_A4, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a4.vout3_d20 */
228         {GPMC_A5, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a5.vout3_d21 */
229         {GPMC_A6, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a6.vout3_d22 */
230         {GPMC_A7, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a7.vout3_d23 */
231         {GPMC_A8, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a8.vout3_hsync */
232         {GPMC_A9, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a9.vout3_vsync */
233         {GPMC_A10, (M3 | PIN_INPUT_PULLDOWN)},  /* gpmc_a10.vout3_de */
234         {GPMC_A11, (M14 | PIN_INPUT)},  /* gpmc_a11.gpio2_1 */
235         {GPMC_A13, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a13.qspi1_rtclk */
236         {GPMC_A14, (M1 | PIN_INPUT_PULLUP | MANUAL_MODE)},      /* gpmc_a14.qspi1_d3 */
237         {GPMC_A15, (M1 | PIN_INPUT_PULLUP | MANUAL_MODE)},      /* gpmc_a15.qspi1_d2 */
238         {GPMC_A16, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a16.qspi1_d0 */
239         {GPMC_A17, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a17.qspi1_d1 */
240         {GPMC_A18, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a18.qspi1_sclk */
241         {GPMC_A19, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a19.mmc2_dat4 */
242         {GPMC_A20, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a20.mmc2_dat5 */
243         {GPMC_A21, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a21.mmc2_dat6 */
244         {GPMC_A22, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a22.mmc2_dat7 */
245         {GPMC_A23, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a23.mmc2_clk */
246         {GPMC_A24, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a24.mmc2_dat0 */
247         {GPMC_A25, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a25.mmc2_dat1 */
248         {GPMC_A26, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a26.mmc2_dat2 */
249         {GPMC_A27, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a27.mmc2_dat3 */
250         {GPMC_CS1, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_cs1.mmc2_cmd */
251         {GPMC_CS2, (M1 | PIN_INPUT_PULLUP | MANUAL_MODE)},      /* gpmc_cs2.qspi1_cs0 */
252         {GPMC_CS3, (M3 | PIN_INPUT_PULLUP)},    /* gpmc_cs3.vout3_clk */
253         {VIN2A_CLK0, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE9)},        /* vin2a_clk0.vin2a_clk0 */
254         {VIN2A_FLD0, (M14 | PIN_INPUT)},        /* vin2a_fld0.gpio3_30 */
255         {VIN2A_HSYNC0, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE6)},      /* vin2a_hsync0.vin2a_hsync0 */
256         {VIN2A_VSYNC0, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE9)},      /* vin2a_vsync0.vin2a_vsync0 */
257         {VIN2A_D0, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE14)}, /* vin2a_d0.vin2a_d0 */
258         {VIN2A_D1, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE14)}, /* vin2a_d1.vin2a_d1 */
259         {VIN2A_D2, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE14)}, /* vin2a_d2.vin2a_d2 */
260         {VIN2A_D3, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE8)},  /* vin2a_d3.vin2a_d3 */
261         {VIN2A_D4, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE8)},  /* vin2a_d4.vin2a_d4 */
262         {VIN2A_D5, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE8)},  /* vin2a_d5.vin2a_d5 */
263         {VIN2A_D6, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE6)},  /* vin2a_d6.vin2a_d6 */
264         {VIN2A_D7, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE6)},  /* vin2a_d7.vin2a_d7 */
265         {VIN2A_D8, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE2)},  /* vin2a_d8.vin2a_d8 */
266         {VIN2A_D9, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE2)},  /* vin2a_d9.vin2a_d9 */
267         {VIN2A_D10, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE5)}, /* vin2a_d10.vin2a_d10 */
268         {VIN2A_D11, (M0 | PIN_INPUT_PULLDOWN | VIRTUAL_MODE5)}, /* vin2a_d11.vin2a_d11 */
269         {VIN2A_D12, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d12.rgmii1_txc */
270         {VIN2A_D13, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d13.rgmii1_txctl */
271         {VIN2A_D14, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d14.rgmii1_txd3 */
272         {VIN2A_D15, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d15.rgmii1_txd2 */
273         {VIN2A_D16, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d16.rgmii1_txd1 */
274         {VIN2A_D17, (M3 | PIN_OUTPUT | MANUAL_MODE)},   /* vin2a_d17.rgmii1_txd0 */
275         {VIN2A_D18, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d18.rgmii1_rxc */
276         {VIN2A_D19, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d19.rgmii1_rxctl */
277         {VIN2A_D20, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d20.rgmii1_rxd3 */
278         {VIN2A_D21, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d21.rgmii1_rxd2 */
279         {VIN2A_D22, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d22.rgmii1_rxd1 */
280         {VIN2A_D23, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d23.rgmii1_rxd0 */
281         {VOUT1_D2, (M0 | PIN_INPUT_PULLDOWN)},  /* N/A.N/A */
282         {VOUT1_D10, (M0 | PIN_INPUT_PULLDOWN)}, /* N/A.N/A */
283         {VOUT1_D18, (M0 | PIN_INPUT_PULLDOWN)}, /* N/A.N/A */
284         {MDIO_MCLK, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* mdio_mclk.mdio_mclk */
285         {MDIO_D, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},        /* mdio_d.mdio_d */
286         {RGMII0_TXC, (M0 | PIN_OUTPUT | MANUAL_MODE)},  /* rgmii0_txc.rgmii0_txc */
287         {RGMII0_TXCTL, (M0 | PIN_OUTPUT | MANUAL_MODE)},        /* rgmii0_txctl.rgmii0_txctl */
288         {RGMII0_TXD3, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd3.rgmii0_txd3 */
289         {RGMII0_TXD2, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd2.rgmii0_txd2 */
290         {RGMII0_TXD1, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd1.rgmii0_txd1 */
291         {RGMII0_TXD0, (M0 | PIN_OUTPUT | MANUAL_MODE)}, /* rgmii0_txd0.rgmii0_txd0 */
292         {RGMII0_RXC, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},  /* rgmii0_rxc.rgmii0_rxc */
293         {RGMII0_RXCTL, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},        /* rgmii0_rxctl.rgmii0_rxctl */
294         {RGMII0_RXD3, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd3.rgmii0_rxd3 */
295         {RGMII0_RXD2, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd2.rgmii0_rxd2 */
296         {RGMII0_RXD1, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd1.rgmii0_rxd1 */
297         {RGMII0_RXD0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd0.rgmii0_rxd0 */
298         {USB1_DRVVBUS, (M0 | PIN_INPUT_SLEW)},  /* usb1_drvvbus.usb1_drvvbus */
299         {USB2_DRVVBUS, (M0 | PIN_INPUT_SLEW)},  /* usb2_drvvbus.usb2_drvvbus */
300         {GPIO6_14, (M9 | PIN_INPUT_PULLUP)},    /* gpio6_14.i2c3_sda */
301         {GPIO6_15, (M9 | PIN_INPUT_PULLUP)},    /* gpio6_15.i2c3_scl */
302         {GPIO6_16, (M14 | PIN_INPUT_PULLUP)},   /* gpio6_16.gpio6_16 */
303         {XREF_CLK2, (M5 | PIN_INPUT_PULLDOWN)}, /* xref_clk2.atl_clk2 */
304         {MCASP1_ACLKX, (M14 | PIN_INPUT)},      /* mcasp1_aclkx.gpio7_31 */
305         {MCASP1_FSX, (M14 | 0x000d0000)},       /* mcasp1_fsx.gpio7_30 */
306         {MCASP1_AXR0, (M10 | PIN_INPUT_PULLUP | SLEWCONTROL)},  /* mcasp1_axr0.i2c5_sda */
307         {MCASP1_AXR1, (M10 | PIN_INPUT_PULLUP | SLEWCONTROL)},  /* mcasp1_axr1.i2c5_scl */
308         {MCASP1_AXR2, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr2.gpio5_4 */
309         {MCASP1_AXR3, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr3.gpio5_5 */
310         {MCASP1_AXR4, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr4.gpio5_6 */
311         {MCASP1_AXR5, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr5.gpio5_7 */
312         {MCASP1_AXR6, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr6.gpio5_8 */
313         {MCASP1_AXR7, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr7.gpio5_9 */
314         {MCASP1_AXR12, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr12.mcasp7_axr0 */
315         {MCASP1_AXR13, (M1 | PIN_INPUT_SLEW)},  /* mcasp1_axr13.mcasp7_axr1 */
316         {MCASP1_AXR14, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr14.mcasp7_aclkx */
317         {MCASP1_AXR15, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr15.mcasp7_fsx */
318         {MCASP3_ACLKX, (M0 | PIN_INPUT_PULLDOWN)},      /* mcasp3_aclkx.mcasp3_aclkx */
319         {MCASP3_FSX, (M0 | PIN_INPUT_SLEW)},    /* mcasp3_fsx.mcasp3_fsx */
320         {MCASP3_AXR0, (M0 | PIN_INPUT_SLEW)},   /* mcasp3_axr0.mcasp3_axr0 */
321         {MCASP3_AXR1, (M0 | PIN_INPUT_SLEW | VIRTUAL_MODE6)},   /* mcasp3_axr1.mcasp3_axr1 */
322         {MMC1_CLK, (M0 | PIN_INPUT_PULLUP)},    /* mmc1_clk.mmc1_clk */
323         {MMC1_CMD, (M0 | PIN_INPUT_PULLUP)},    /* mmc1_cmd.mmc1_cmd */
324         {MMC1_DAT0, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat0.mmc1_dat0 */
325         {MMC1_DAT1, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat1.mmc1_dat1 */
326         {MMC1_DAT2, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat2.mmc1_dat2 */
327         {MMC1_DAT3, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat3.mmc1_dat3 */
328         {MMC1_SDCD, (M14 | PIN_INPUT_PULLUP | SLEWCONTROL)},    /* mmc1_sdcd.gpio6_27 */
329         {MMC1_SDWP, (M14 | PIN_INPUT_SLEW)},    /* mmc1_sdwp.gpio6_28 */
330         {SPI1_SCLK, (M0 | PIN_INPUT_PULLDOWN)}, /* spi1_sclk.spi1_sclk */
331         {SPI1_D1, (M0 | PIN_INPUT_PULLDOWN)},   /* spi1_d1.spi1_d1 */
332         {SPI1_D0, (M0 | PIN_INPUT_PULLDOWN)},   /* spi1_d0.spi1_d0 */
333         {SPI1_CS0, (M0 | PIN_INPUT_PULLUP)},    /* spi1_cs0.spi1_cs0 */
334         {SPI1_CS1, (M14 | PIN_INPUT_PULLUP)},   /* spi1_cs1.gpio7_11 */
335         {SPI1_CS2, (M14 | PIN_INPUT_PULLDOWN)}, /* spi1_cs2.gpio7_12 */
336         {SPI1_CS3, (M6 | PIN_INPUT | SLEWCONTROL)},     /* spi1_cs3.hdmi1_cec */
337         {SPI2_SCLK, (M1 | PIN_INPUT_PULLDOWN)}, /* spi2_sclk.uart3_rxd */
338         {SPI2_D1, (M1 | PIN_INPUT_SLEW)},       /* spi2_d1.uart3_txd */
339         {SPI2_D0, (M1 | PIN_INPUT_SLEW)},       /* spi2_d0.uart3_ctsn */
340         {SPI2_CS0, (M1 | PIN_INPUT_PULLUP | SLEWCONTROL)},      /* spi2_cs0.uart3_rtsn */
341         {DCAN1_TX, (M15 | PULL_UP)},    /* dcan1_tx.safe for dcan1_tx */
342         {DCAN1_RX, (M14 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* dcan1_rx.gpio1_15 */
343         {UART1_RXD, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* uart1_rxd.uart1_rxd */
344         {UART1_TXD, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* uart1_txd.uart1_txd */
345         {UART1_CTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart1_ctsn.mmc4_clk */
346         {UART1_RTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart1_rtsn.mmc4_cmd */
347         {UART2_RXD, (M3 | PIN_INPUT_PULLUP)},   /* uart2_rxd.mmc4_dat0 */
348         {UART2_TXD, (M3 | PIN_INPUT_PULLUP)},   /* uart2_txd.mmc4_dat1 */
349         {UART2_CTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart2_ctsn.mmc4_dat2 */
350         {UART2_RTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart2_rtsn.mmc4_dat3 */
351         {I2C2_SDA, (M1 | PIN_INPUT_PULLUP)},    /* i2c2_sda.hdmi1_ddc_scl */
352         {I2C2_SCL, (M1 | PIN_INPUT_PULLUP)},    /* i2c2_scl.hdmi1_ddc_sda */
353         {WAKEUP0, (M15 | PULL_UP)},     /* Wakeup0.safe for dcan1_rx */
354         {WAKEUP3, (M1 | PULL_ENA | PULL_UP)},   /* Wakeup3.sys_nirq1 */
355 };
356
357 const struct pad_conf_entry dra71x_vout3_padconf_array[] = {
358         {GPMC_AD0, (M3 | PIN_INPUT)},   /* gpmc_ad0.vout3_d0 */
359         {GPMC_AD1, (M3 | PIN_INPUT)},   /* gpmc_ad1.vout3_d1 */
360         {GPMC_AD2, (M3 | PIN_INPUT)},   /* gpmc_ad2.vout3_d2 */
361         {GPMC_AD3, (M3 | PIN_INPUT)},   /* gpmc_ad3.vout3_d3 */
362         {GPMC_AD4, (M3 | PIN_INPUT)},   /* gpmc_ad4.vout3_d4 */
363         {GPMC_AD5, (M3 | PIN_INPUT)},   /* gpmc_ad5.vout3_d5 */
364         {GPMC_AD6, (M3 | PIN_INPUT)},   /* gpmc_ad6.vout3_d6 */
365         {GPMC_AD7, (M3 | PIN_INPUT)},   /* gpmc_ad7.vout3_d7 */
366         {GPMC_AD8, (M3 | PIN_INPUT)},   /* gpmc_ad8.vout3_d8 */
367         {GPMC_AD9, (M3 | PIN_INPUT)},   /* gpmc_ad9.vout3_d9 */
368         {GPMC_AD10, (M3 | PIN_INPUT)},  /* gpmc_ad10.vout3_d10 */
369         {GPMC_AD11, (M3 | PIN_INPUT)},  /* gpmc_ad11.vout3_d11 */
370         {GPMC_AD12, (M3 | PIN_INPUT)},  /* gpmc_ad12.vout3_d12 */
371         {GPMC_AD13, (M3 | PIN_INPUT)},  /* gpmc_ad13.vout3_d13 */
372         {GPMC_AD14, (M3 | PIN_INPUT)},  /* gpmc_ad14.vout3_d14 */
373         {GPMC_AD15, (M3 | PIN_INPUT)},  /* gpmc_ad15.vout3_d15 */
374 };
375
376 const struct pad_conf_entry dra71x_nand_padconf_array[] = {
377         {GPMC_AD0, (M0 | PIN_INPUT)},   /* gpmc_ad0.gpmc_ad0 */
378         {GPMC_AD1, (M0 | PIN_INPUT)},   /* gpmc_ad1.gpmc_ad1 */
379         {GPMC_AD2, (M0 | PIN_INPUT)},   /* gpmc_ad2.gpmc_ad2 */
380         {GPMC_AD3, (M0 | PIN_INPUT)},   /* gpmc_ad3.gpmc_ad3 */
381         {GPMC_AD4, (M0 | PIN_INPUT)},   /* gpmc_ad4.gpmc_ad4 */
382         {GPMC_AD5, (M0 | PIN_INPUT)},   /* gpmc_ad5.gpmc_ad5 */
383         {GPMC_AD6, (M0 | PIN_INPUT)},   /* gpmc_ad6.gpmc_ad6 */
384         {GPMC_AD7, (M0 | PIN_INPUT)},   /* gpmc_ad7.gpmc_ad7 */
385         {GPMC_AD8, (M0 | PIN_INPUT)},   /* gpmc_ad8.gpmc_ad8 */
386         {GPMC_AD9, (M0 | PIN_INPUT)},   /* gpmc_ad9.gpmc_ad9 */
387         {GPMC_AD10, (M0 | PIN_INPUT)},  /* gpmc_ad10.gpmc_ad10 */
388         {GPMC_AD11, (M0 | PIN_INPUT)},  /* gpmc_ad11.gpmc_ad11 */
389         {GPMC_AD12, (M0 | PIN_INPUT)},  /* gpmc_ad12.gpmc_ad12 */
390         {GPMC_AD13, (M0 | PIN_INPUT)},  /* gpmc_ad13.gpmc_ad13 */
391         {GPMC_AD14, (M0 | PIN_INPUT)},  /* gpmc_ad14.gpmc_ad14 */
392         {GPMC_AD15, (M0 | PIN_INPUT)},  /* gpmc_ad15.gpmc_ad15 */
393         {GPMC_CS0, (M0 | PIN_INPUT_PULLUP)},    /* gpmc_cs0.gpmc_cs0 */
394         {GPMC_ADVN_ALE, (M0 | PIN_INPUT_PULLDOWN)},     /* gpmc_advn_ale.gpmc_advn_ale */
395         {GPMC_OEN_REN, (M0 | PIN_INPUT_PULLUP)},        /* gpmc_oen_ren.gpmc_oen_ren */
396         {GPMC_WEN, (M0 | PIN_INPUT_PULLUP)},    /* gpmc_wen.gpmc_wen */
397         {GPMC_BEN0, (M0 | PIN_INPUT_PULLDOWN)}, /* gpmc_ben0.gpmc_ben0 */
398         {GPMC_WAIT0, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},    /* gpmc_wait0.gpmc_wait0 */
399 };
400
401 const struct pad_conf_entry early_padconf[] = {
402         {UART1_RXD, (PIN_INPUT_SLEW | M0)}, /* UART1_RXD */
403         {UART1_TXD, (PIN_INPUT_SLEW | M0)}, /* UART1_TXD */
404         {UART3_RXD, (PIN_INPUT_SLEW | M0)}, /* UART3_RXD */
405         {UART3_TXD, (PIN_INPUT_SLEW | M0)}, /* UART3_TXD */
406         {I2C1_SDA, (PIN_INPUT | M0)},   /* I2C1_SDA */
407         {I2C1_SCL, (PIN_INPUT | M0)},   /* I2C1_SCL */
408 };
409
410 #ifdef CONFIG_IODELAY_RECALIBRATION
411 const struct iodelay_cfg_entry dra72_iodelay_cfg_array_revb[] = {
412         {0x6F0, 359, 0}, /* RGMMI0_RXC_IN */
413         {0x6FC, 129, 1896}, /* RGMMI0_RXCTL_IN */
414         {0x708, 80, 1391}, /* RGMMI0_RXD0_IN */
415         {0x714, 196, 1522}, /* RGMMI0_RXD1_IN */
416         {0x720, 40, 1860}, /* RGMMI0_RXD2_IN */
417         {0x72C, 0, 1956}, /* RGMMI0_RXD3_IN */
418         {0x740, 0, 220}, /* RGMMI0_TXC_OUT */
419         {0x74C, 1820, 180}, /* RGMMI0_TXCTL_OUT */
420         {0x758, 1740, 440}, /* RGMMI0_TXD0_OUT */
421         {0x764, 1740, 240}, /* RGMMI0_TXD1_OUT */
422         {0x770, 1680, 380}, /* RGMMI0_TXD2_OUT */
423         {0x77C, 1740, 440}, /* RGMMI0_TXD3_OUT */
424         /* These values are for using RGMII1 configuration on VIN2a_x pins. */
425         {0xAB0, 596, 0}, /* CFG_VIN2A_D18_IN */
426         {0xABC, 314, 980}, /* CFG_VIN2A_D19_IN */
427         {0xAD4, 241, 1536}, /* CFG_VIN2A_D20_IN */
428         {0xAE0, 103, 1689}, /* CFG_VIN2A_D21_IN */
429         {0xAEC, 161, 1563}, /* CFG_VIN2A_D22_IN */
430         {0xAF8, 0, 1613}, /* CFG_VIN2A_D23_IN */
431         {0xA70, 0, 200}, /* CFG_VIN2A_D12_OUT */
432         {0xA7C, 1560, 140}, /* CFG_VIN2A_D13_OUT */
433         {0xA88, 1700, 0}, /* CFG_VIN2A_D14_OUT */
434         {0xA94, 1260, 0}, /* CFG_VIN2A_D15_OUT */
435         {0xAA0, 1400, 0}, /* CFG_VIN2A_D16_OUT */
436         {0xAAC, 1290, 0}, /* CFG_VIN2A_D17_OUT */
437         {0x144, 0, 0}, /* CFG_GPMC_A13_IN */
438         {0x150, 2062, 2277}, /* CFG_GPMC_A14_IN */
439         {0x15C, 1960, 2289}, /* CFG_GPMC_A15_IN */
440         {0x168, 2058, 2386}, /* CFG_GPMC_A16_IN */
441         {0x170, 0, 0 }, /* CFG_GPMC_A16_OUT */
442         {0x174, 2062, 2350}, /* CFG_GPMC_A17_IN */
443         {0x188, 0, 0}, /* CFG_GPMC_A18_OUT */
444         {0x374, 121, 0}, /* CFG_GPMC_CS2_OUT */
445 };
446
447 const struct iodelay_cfg_entry dra72_iodelay_cfg_array_revc[] = {
448         {0x0144, 0, 0}, /* CFG_GPMC_A13_IN */
449         {0x0150, 2247, 1186},   /* CFG_GPMC_A14_IN */
450         {0x015C, 2176, 1197},   /* CFG_GPMC_A15_IN */
451         {0x0168, 2229, 1268},   /* CFG_GPMC_A16_IN */
452         {0x0170, 0, 0}, /* CFG_GPMC_A16_OUT */
453         {0x0174, 2251, 1217},   /* CFG_GPMC_A17_IN */
454         {0x0188, 0, 0}, /* CFG_GPMC_A18_OUT */
455         {0x0374, 121, 0},       /* CFG_GPMC_CS2_OUT */
456         {0x06F0, 413, 0},       /* CFG_RGMII0_RXC_IN */
457         {0x06FC, 27, 2296},     /* CFG_RGMII0_RXCTL_IN */
458         {0x0708, 3, 1721},      /* CFG_RGMII0_RXD0_IN */
459         {0x0714, 134, 1786},    /* CFG_RGMII0_RXD1_IN */
460         {0x0720, 40, 1966},     /* CFG_RGMII0_RXD2_IN */
461         {0x072C, 0, 2057},      /* CFG_RGMII0_RXD3_IN */
462         {0x0740, 0, 60},        /* CFG_RGMII0_TXC_OUT */
463         {0x074C, 0, 60},        /* CFG_RGMII0_TXCTL_OUT */
464         {0x0758, 0, 60},        /* CFG_RGMII0_TXD0_OUT */
465         {0x0764, 0, 0},         /* CFG_RGMII0_TXD1_OUT */
466         {0x0770, 0, 60},        /* CFG_RGMII0_TXD2_OUT */
467         {0x077C, 0, 120},       /* CFG_RGMII0_TXD3_OUT */
468         {0x0A70, 0, 0},         /* CFG_VIN2A_D12_OUT */
469         {0x0A7C, 170, 0},       /* CFG_VIN2A_D13_OUT */
470         {0x0A88, 150, 0},       /* CFG_VIN2A_D14_OUT */
471         {0x0A94, 0, 0},         /* CFG_VIN2A_D15_OUT */
472         {0x0AA0, 60, 0},        /* CFG_VIN2A_D16_OUT */
473         {0x0AAC, 60, 0},        /* CFG_VIN2A_D17_OUT */
474         {0x0AB0, 530, 0},       /* CFG_VIN2A_D18_IN */
475         {0x0ABC, 71, 1099},     /* CFG_VIN2A_D19_IN */
476         {0x0AC8, 2229, 10},     /* CFG_VIN2A_D1_IN */
477         {0x0AD4, 142, 1337},    /* CFG_VIN2A_D20_IN */
478         {0x0AE0, 114, 1517},    /* CFG_VIN2A_D21_IN */
479         {0x0AEC, 171, 1331},    /* CFG_VIN2A_D22_IN */
480         {0x0AF8, 0, 1328},      /* CFG_VIN2A_D23_IN */
481 };
482
483 const struct iodelay_cfg_entry dra71_iodelay_cfg_array[] = {
484         {0x0144, 0, 0}, /* CFG_GPMC_A13_IN */
485         {0x0150, 2247, 1186},   /* CFG_GPMC_A14_IN */
486         {0x015C, 2176, 1197},   /* CFG_GPMC_A15_IN */
487         {0x0168, 2229, 1268},   /* CFG_GPMC_A16_IN */
488         {0x0170, 0, 0}, /* CFG_GPMC_A16_OUT */
489         {0x0174, 2251, 1217},   /* CFG_GPMC_A17_IN */
490         {0x0188, 0, 0}, /* CFG_GPMC_A18_OUT */
491         {0x0374, 0, 0}, /* CFG_GPMC_CS2_OUT */
492         {0x06F0, 413, 0},       /* CFG_RGMII0_RXC_IN */
493         {0x06FC, 27, 2296},     /* CFG_RGMII0_RXCTL_IN */
494         {0x0708, 3, 1721},      /* CFG_RGMII0_RXD0_IN */
495         {0x0714, 134, 1786},    /* CFG_RGMII0_RXD1_IN */
496         {0x0720, 40, 1966},     /* CFG_RGMII0_RXD2_IN */
497         {0x072C, 0, 2057},      /* CFG_RGMII0_RXD3_IN */
498         {0x0740, 0, 60},        /* CFG_RGMII0_TXC_OUT */
499         {0x074C, 0, 60},        /* CFG_RGMII0_TXCTL_OUT */
500         {0x0758, 0, 60},        /* CFG_RGMII0_TXD0_OUT */
501         {0x0764, 0, 0}, /* CFG_RGMII0_TXD1_OUT */
502         {0x0770, 0, 60},        /* CFG_RGMII0_TXD2_OUT */
503         {0x077C, 0, 120},       /* CFG_RGMII0_TXD3_OUT */
504         {0x0A38, 0, 0}, /* CFG_VIN2A_CLK0_IN */
505         {0x0A44, 1936, 0},      /* CFG_VIN2A_D0_IN */
506         {0x0A50, 2031, 0},      /* CFG_VIN2A_D10_IN */
507         {0x0A5C, 1702, 0},      /* CFG_VIN2A_D11_IN */
508         {0x0A70, 0, 0}, /* CFG_VIN2A_D12_OUT */
509         {0x0A7C, 170, 0},       /* CFG_VIN2A_D13_OUT */
510         {0x0A88, 150, 0},       /* CFG_VIN2A_D14_OUT */
511         {0x0A94, 0, 0}, /* CFG_VIN2A_D15_OUT */
512         {0x0AA0, 60, 0},        /* CFG_VIN2A_D16_OUT */
513         {0x0AAC, 60, 0},        /* CFG_VIN2A_D17_OUT */
514         {0x0AB0, 530, 0},       /* CFG_VIN2A_D18_IN */
515         {0x0ABC, 71, 1099},     /* CFG_VIN2A_D19_IN */
516         {0x0AC8, 2229, 10},     /* CFG_VIN2A_D1_IN */
517         {0x0AD4, 142, 1337},    /* CFG_VIN2A_D20_IN */
518         {0x0AE0, 114, 1517},    /* CFG_VIN2A_D21_IN */
519         {0x0AEC, 171, 1331},    /* CFG_VIN2A_D22_IN */
520         {0x0AF8, 0, 1328},      /* CFG_VIN2A_D23_IN */
521         {0x0B04, 1736, 0},      /* CFG_VIN2A_D2_IN */
522         {0x0B10, 1943, 0},      /* CFG_VIN2A_D3_IN */
523         {0x0B1C, 1601, 0},      /* CFG_VIN2A_D4_IN */
524         {0x0B28, 2052, 0},      /* CFG_VIN2A_D5_IN */
525         {0x0B34, 1571, 0},      /* CFG_VIN2A_D6_IN */
526         {0x0B40, 1855, 0},      /* CFG_VIN2A_D7_IN */
527         {0x0B4C, 1224, 618},    /* CFG_VIN2A_D8_IN */
528         {0x0B58, 1373, 509},    /* CFG_VIN2A_D9_IN */
529         {0x0B7C, 1943, 0},      /* CFG_VIN2A_HSYNC0_IN */
530         {0x0B88, 1612, 0},      /* CFG_VIN2A_VSYNC0_IN */
531 };
532 #endif
533
534 const struct pad_conf_entry dra74x_core_padconf_array[] = {
535         {GPMC_AD0, (M3 | PIN_INPUT)},   /* gpmc_ad0.vout3_d0 */
536         {GPMC_AD1, (M3 | PIN_INPUT)},   /* gpmc_ad1.vout3_d1 */
537         {GPMC_AD2, (M3 | PIN_INPUT)},   /* gpmc_ad2.vout3_d2 */
538         {GPMC_AD3, (M3 | PIN_INPUT)},   /* gpmc_ad3.vout3_d3 */
539         {GPMC_AD4, (M3 | PIN_INPUT)},   /* gpmc_ad4.vout3_d4 */
540         {GPMC_AD5, (M3 | PIN_INPUT)},   /* gpmc_ad5.vout3_d5 */
541         {GPMC_AD6, (M3 | PIN_INPUT)},   /* gpmc_ad6.vout3_d6 */
542         {GPMC_AD7, (M3 | PIN_INPUT)},   /* gpmc_ad7.vout3_d7 */
543         {GPMC_AD8, (M3 | PIN_INPUT)},   /* gpmc_ad8.vout3_d8 */
544         {GPMC_AD9, (M3 | PIN_INPUT)},   /* gpmc_ad9.vout3_d9 */
545         {GPMC_AD10, (M3 | PIN_INPUT)},  /* gpmc_ad10.vout3_d10 */
546         {GPMC_AD11, (M3 | PIN_INPUT)},  /* gpmc_ad11.vout3_d11 */
547         {GPMC_AD12, (M3 | PIN_INPUT)},  /* gpmc_ad12.vout3_d12 */
548         {GPMC_AD13, (M3 | PIN_INPUT)},  /* gpmc_ad13.vout3_d13 */
549         {GPMC_AD14, (M3 | PIN_INPUT)},  /* gpmc_ad14.vout3_d14 */
550         {GPMC_AD15, (M3 | PIN_INPUT)},  /* gpmc_ad15.vout3_d15 */
551         {GPMC_A0, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a0.vout3_d16 */
552         {GPMC_A1, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a1.vout3_d17 */
553         {GPMC_A2, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a2.vout3_d18 */
554         {GPMC_A3, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a3.vout3_d19 */
555         {GPMC_A4, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a4.vout3_d20 */
556         {GPMC_A5, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a5.vout3_d21 */
557         {GPMC_A6, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a6.vout3_d22 */
558         {GPMC_A7, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a7.vout3_d23 */
559         {GPMC_A8, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a8.vout3_hsync */
560         {GPMC_A9, (M3 | PIN_INPUT_PULLDOWN)},   /* gpmc_a9.vout3_vsync */
561         {GPMC_A10, (M3 | PIN_INPUT_PULLDOWN)},  /* gpmc_a10.vout3_de */
562         {GPMC_A11, (M14 | PIN_INPUT_PULLDOWN)}, /* gpmc_a11.gpio2_1 */
563         {GPMC_A13, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a13.qspi1_rtclk */
564         {GPMC_A14, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a14.qspi1_d3 */
565         {GPMC_A15, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a15.qspi1_d2 */
566         {GPMC_A16, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a16.qspi1_d0 */
567         {GPMC_A17, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a17.qspi1_d1 */
568         {GPMC_A18, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a18.qspi1_sclk */
569         {GPMC_A19, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a19.mmc2_dat4 */
570         {GPMC_A20, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a20.mmc2_dat5 */
571         {GPMC_A21, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a21.mmc2_dat6 */
572         {GPMC_A22, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a22.mmc2_dat7 */
573         {GPMC_A23, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a23.mmc2_clk */
574         {GPMC_A24, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a24.mmc2_dat0 */
575         {GPMC_A25, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a25.mmc2_dat1 */
576         {GPMC_A26, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a26.mmc2_dat2 */
577         {GPMC_A27, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_a27.mmc2_dat3 */
578         {GPMC_CS1, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_cs1.mmc2_cmd */
579         {GPMC_CS2, (M1 | PIN_INPUT_PULLUP | MANUAL_MODE)},      /* gpmc_cs2.qspi1_cs0 */
580         {GPMC_CS3, (M3 | PIN_INPUT_PULLUP)},    /* gpmc_cs3.vout3_clk */
581         {VIN1A_CLK0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},  /* vin1a_clk0.vin1a_clk0 */
582         {VIN1A_DE0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_de0.vin1a_de0 */
583         {VIN1A_FLD0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},  /* vin1a_fld0.vin1a_fld0 */
584         {VIN1A_HSYNC0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},        /* vin1a_hsync0.vin1a_hsync0 */
585         {VIN1A_VSYNC0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},        /* vin1a_vsync0.vin1a_vsync0 */
586         {VIN1A_D0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin1a_d0.vin1a_d0 */
587         {VIN1A_D1, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin1a_d1.vin1a_d1 */
588         {VIN1A_D2, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin1a_d2.vin1a_d2 */
589         {VIN1A_D3, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin1a_d3.vin1a_d3 */
590         {VIN1A_D4, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin1a_d4.vin1a_d4 */
591         {VIN1A_D5, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin1a_d5.vin1a_d5 */
592         {VIN1A_D6, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin1a_d6.vin1a_d6 */
593         {VIN1A_D7, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin1a_d7.vin1a_d7 */
594         {VIN1A_D8, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin1a_d8.vin1a_d8 */
595         {VIN1A_D9, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin1a_d9.vin1a_d9 */
596         {VIN1A_D10, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d10.vin1a_d10 */
597         {VIN1A_D11, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d11.vin1a_d11 */
598         {VIN1A_D12, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d12.vin1a_d12 */
599         {VIN1A_D13, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d13.vin1a_d13 */
600         {VIN1A_D14, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d14.vin1a_d14 */
601         {VIN1A_D15, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d15.vin1a_d15 */
602         {VIN1A_D16, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d16.vin1a_d16 */
603         {VIN1A_D17, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d17.vin1a_d17 */
604         {VIN1A_D18, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d18.vin1a_d18 */
605         {VIN1A_D19, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d19.vin1a_d19 */
606         {VIN1A_D20, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d20.vin1a_d20 */
607         {VIN1A_D21, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d21.vin1a_d21 */
608         {VIN1A_D22, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d22.vin1a_d22 */
609         {VIN1A_D23, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin1a_d23.vin1a_d23 */
610         {VIN2A_D12, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d12.rgmii1_txc */
611         {VIN2A_D13, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d13.rgmii1_txctl */
612         {VIN2A_D14, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d14.rgmii1_txd3 */
613         {VIN2A_D15, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d15.rgmii1_txd2 */
614         {VIN2A_D16, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d16.rgmii1_txd1 */
615         {VIN2A_D17, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d17.rgmii1_txd0 */
616         {VIN2A_D18, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d18.rgmii1_rxc */
617         {VIN2A_D19, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d19.rgmii1_rxctl */
618         {VIN2A_D20, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d20.rgmii1_rxd3 */
619         {VIN2A_D21, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d21.rgmii1_rxd2 */
620         {VIN2A_D22, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d22.rgmii1_rxd1 */
621         {VIN2A_D23, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d23.rgmii1_rxd0 */
622         {VOUT1_CLK, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_clk.vout1_clk */
623         {VOUT1_DE, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_de.vout1_de */
624         {VOUT1_HSYNC, (M0 | PIN_INPUT_PULLDOWN)},       /* vout1_hsync.vout1_hsync */
625         {VOUT1_VSYNC, (M0 | PIN_INPUT_PULLDOWN)},       /* vout1_vsync.vout1_vsync */
626         {VOUT1_D0, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d0.vout1_d0 */
627         {VOUT1_D1, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d1.vout1_d1 */
628         {VOUT1_D2, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d2.vout1_d2 */
629         {VOUT1_D3, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d3.vout1_d3 */
630         {VOUT1_D4, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d4.vout1_d4 */
631         {VOUT1_D5, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d5.vout1_d5 */
632         {VOUT1_D6, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d6.vout1_d6 */
633         {VOUT1_D7, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d7.vout1_d7 */
634         {VOUT1_D8, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d8.vout1_d8 */
635         {VOUT1_D9, (M0 | PIN_INPUT_PULLDOWN)},  /* vout1_d9.vout1_d9 */
636         {VOUT1_D10, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d10.vout1_d10 */
637         {VOUT1_D11, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d11.vout1_d11 */
638         {VOUT1_D12, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d12.vout1_d12 */
639         {VOUT1_D13, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d13.vout1_d13 */
640         {VOUT1_D14, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d14.vout1_d14 */
641         {VOUT1_D15, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d15.vout1_d15 */
642         {VOUT1_D16, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d16.vout1_d16 */
643         {VOUT1_D17, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d17.vout1_d17 */
644         {VOUT1_D18, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d18.vout1_d18 */
645         {VOUT1_D19, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d19.vout1_d19 */
646         {VOUT1_D20, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d20.vout1_d20 */
647         {VOUT1_D21, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d21.vout1_d21 */
648         {VOUT1_D22, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d22.vout1_d22 */
649         {VOUT1_D23, (M0 | PIN_INPUT_PULLDOWN)}, /* vout1_d23.vout1_d23 */
650         {MDIO_MCLK, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* mdio_mclk.mdio_mclk */
651         {MDIO_D, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},        /* mdio_d.mdio_d */
652         {RGMII0_TXC, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},  /* rgmii0_txc.rgmii0_txc */
653         {RGMII0_TXCTL, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},        /* rgmii0_txctl.rgmii0_txctl */
654         {RGMII0_TXD3, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_txd3.rgmii0_txd3 */
655         {RGMII0_TXD2, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_txd2.rgmii0_txd2 */
656         {RGMII0_TXD1, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_txd1.rgmii0_txd1 */
657         {RGMII0_TXD0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_txd0.rgmii0_txd0 */
658         {RGMII0_RXC, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},  /* rgmii0_rxc.rgmii0_rxc */
659         {RGMII0_RXCTL, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},        /* rgmii0_rxctl.rgmii0_rxctl */
660         {RGMII0_RXD3, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd3.rgmii0_rxd3 */
661         {RGMII0_RXD2, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd2.rgmii0_rxd2 */
662         {RGMII0_RXD1, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd1.rgmii0_rxd1 */
663         {RGMII0_RXD0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* rgmii0_rxd0.rgmii0_rxd0 */
664         {USB1_DRVVBUS, (M0 | PIN_INPUT_SLEW)},  /* usb1_drvvbus.usb1_drvvbus */
665         {USB2_DRVVBUS, (M0 | PIN_INPUT_SLEW)},  /* usb2_drvvbus.usb2_drvvbus */
666         {GPIO6_14, (M9 | PIN_INPUT_PULLUP)},    /* gpio6_14.i2c3_sda */
667         {GPIO6_15, (M9 | PIN_INPUT_PULLUP)},    /* gpio6_15.i2c3_scl */
668         {GPIO6_16, (M14 | PIN_INPUT_PULLUP)},   /* gpio6_16.gpio6_16 */
669         {XREF_CLK2, (M5 | PIN_INPUT_PULLDOWN)}, /* xref_clk2.atl_clk2 */
670         {MCASP1_ACLKX, (M0 | PIN_INPUT_PULLDOWN)},      /* mcasp1_aclkx.mcasp1_aclkx */
671         {MCASP1_FSX, (M0 | PIN_INPUT_SLEW)},    /* mcasp1_fsx.mcasp1_fsx */
672         {MCASP1_AXR0, (M0 | PIN_INPUT_SLEW | VIRTUAL_MODE15)},  /* mcasp1_axr0.mcasp1_axr0 */
673         {MCASP1_AXR1, (M0 | PIN_INPUT_SLEW)},   /* mcasp1_axr1.mcasp1_axr1 */
674         {MCASP1_AXR2, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr2.gpio5_4 */
675         {MCASP1_AXR3, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr3.gpio5_5 */
676         {MCASP1_AXR4, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr4.gpio5_6 */
677         {MCASP1_AXR5, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr5.gpio5_7 */
678         {MCASP1_AXR6, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr6.gpio5_8 */
679         {MCASP1_AXR7, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr7.gpio5_9 */
680         {MCASP1_AXR12, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr12.mcasp7_axr0 */
681         {MCASP1_AXR13, (M1 | PIN_INPUT_SLEW)},  /* mcasp1_axr13.mcasp7_axr1 */
682         {MCASP1_AXR14, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr14.mcasp7_aclkx */
683         {MCASP1_AXR15, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr15.mcasp7_fsx */
684         {MCASP2_ACLKR, (M0 | PIN_INPUT_PULLDOWN)},      /* mcasp2_aclkr.mcasp2_aclkr */
685         {MCASP3_ACLKX, (M0 | PIN_INPUT_PULLDOWN)},      /* mcasp3_aclkx.mcasp3_aclkx */
686         {MCASP3_FSX, (M0 | PIN_INPUT_SLEW)},    /* mcasp3_fsx.mcasp3_fsx */
687         {MCASP3_AXR0, (M0 | PIN_INPUT_SLEW)},   /* mcasp3_axr0.mcasp3_axr0 */
688         {MCASP3_AXR1, (M0 | PIN_INPUT_SLEW | VIRTUAL_MODE6)},   /* mcasp3_axr1.mcasp3_axr1 */
689         {MMC1_CLK, (M0 | PIN_INPUT_PULLUP)},    /* mmc1_clk.mmc1_clk */
690         {MMC1_CMD, (M0 | PIN_INPUT_PULLUP)},    /* mmc1_cmd.mmc1_cmd */
691         {MMC1_DAT0, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat0.mmc1_dat0 */
692         {MMC1_DAT1, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat1.mmc1_dat1 */
693         {MMC1_DAT2, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat2.mmc1_dat2 */
694         {MMC1_DAT3, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat3.mmc1_dat3 */
695         {MMC1_SDCD, (M14 | PIN_INPUT_PULLUP)},  /* mmc1_sdcd.gpio6_27 */
696         {MMC1_SDWP, (M14 | PIN_INPUT_SLEW)},    /* mmc1_sdwp.gpio6_28 */
697         {GPIO6_11, (M14 | PIN_INPUT_PULLUP)},   /* gpio6_11.gpio6_11 */
698         {SPI1_SCLK, (M0 | PIN_INPUT_PULLDOWN)}, /* spi1_sclk.spi1_sclk */
699         {SPI1_D1, (M0 | PIN_INPUT_PULLDOWN)},   /* spi1_d1.spi1_d1 */
700         {SPI1_D0, (M0 | PIN_INPUT_PULLDOWN)},   /* spi1_d0.spi1_d0 */
701         {SPI1_CS0, (M0 | PIN_INPUT_PULLUP)},    /* spi1_cs0.spi1_cs0 */
702         {SPI1_CS1, (M14 | PIN_OUTPUT)},         /* spi1_cs1.gpio7_11 */
703         {SPI1_CS2, (M14 | PIN_INPUT_PULLDOWN)}, /* spi1_cs2.gpio7_12 */
704         {SPI1_CS3, (M6 | PIN_INPUT | SLEWCONTROL)},     /* spi1_cs3.hdmi1_cec */
705         {SPI2_SCLK, (M1 | PIN_INPUT_PULLDOWN)}, /* spi2_sclk.uart3_rxd */
706         {SPI2_D1, (M1 | PIN_INPUT_SLEW)},       /* spi2_d1.uart3_txd */
707         {SPI2_D0, (M1 | PIN_INPUT_SLEW)},       /* spi2_d0.uart3_ctsn */
708         {SPI2_CS0, (M1 | PIN_INPUT_PULLUP | SLEWCONTROL)},      /* spi2_cs0.uart3_rtsn */
709         {DCAN1_TX, (M15 | PULL_UP)},    /* dcan1_tx.safe for dcan1_tx */
710         {DCAN1_RX, (M14 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* dcan1_rx.gpio1_15 */
711         {UART1_RXD, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* uart1_rxd.uart1_rxd */
712         {UART1_TXD, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* uart1_txd.uart1_txd */
713         {UART1_CTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart1_ctsn.mmc4_clk */
714         {UART1_RTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart1_rtsn.mmc4_cmd */
715         {UART2_RXD, (M3 | PIN_INPUT_PULLUP)},   /* N/A.mmc4_dat0 */
716         {UART2_TXD, (M3 | PIN_INPUT_PULLUP)},   /* uart2_txd.mmc4_dat1 */
717         {UART2_CTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart2_ctsn.mmc4_dat2 */
718         {UART2_RTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart2_rtsn.mmc4_dat3 */
719         {I2C2_SDA, (M0 | PIN_INPUT_PULLUP)},    /* i2c2_sda.i2c2_sda */
720         {I2C2_SCL, (M0 | PIN_INPUT_PULLUP)},    /* i2c2_scl.i2c2_scl */
721         {WAKEUP0, (M15 | PULL_UP)},     /* Wakeup0.safe for dcan1_rx */
722         {WAKEUP2, (M14)},               /* Wakeup2.gpio1_2 */
723 };
724
725 const struct pad_conf_entry dra76x_core_padconf_array[] = {
726         {GPMC_AD0, (M3 | PIN_INPUT | MANUAL_MODE)},     /* gpmc_ad0.vout3_d0 */
727         {GPMC_AD1, (M3 | PIN_INPUT | MANUAL_MODE)},     /* gpmc_ad1.vout3_d1 */
728         {GPMC_AD2, (M3 | PIN_INPUT | MANUAL_MODE)},     /* gpmc_ad2.vout3_d2 */
729         {GPMC_AD3, (M3 | PIN_INPUT | MANUAL_MODE)},     /* gpmc_ad3.vout3_d3 */
730         {GPMC_AD4, (M3 | PIN_INPUT | MANUAL_MODE)},     /* gpmc_ad4.vout3_d4 */
731         {GPMC_AD5, (M3 | PIN_INPUT | MANUAL_MODE)},     /* gpmc_ad5.vout3_d5 */
732         {GPMC_AD6, (M3 | PIN_INPUT | MANUAL_MODE)},     /* gpmc_ad6.vout3_d6 */
733         {GPMC_AD7, (M3 | PIN_INPUT | MANUAL_MODE)},     /* gpmc_ad7.vout3_d7 */
734         {GPMC_AD8, (M3 | PIN_INPUT | MANUAL_MODE)},     /* gpmc_ad8.vout3_d8 */
735         {GPMC_AD9, (M3 | PIN_INPUT | MANUAL_MODE)},     /* gpmc_ad9.vout3_d9 */
736         {GPMC_AD10, (M3 | PIN_INPUT | MANUAL_MODE)},    /* gpmc_ad10.vout3_d10 */
737         {GPMC_AD11, (M3 | PIN_INPUT | MANUAL_MODE)},    /* gpmc_ad11.vout3_d11 */
738         {GPMC_AD12, (M3 | PIN_INPUT | MANUAL_MODE)},    /* gpmc_ad12.vout3_d12 */
739         {GPMC_AD13, (M3 | PIN_INPUT | MANUAL_MODE)},    /* gpmc_ad13.vout3_d13 */
740         {GPMC_AD14, (M3 | PIN_INPUT | MANUAL_MODE)},    /* gpmc_ad14.vout3_d14 */
741         {GPMC_AD15, (M3 | PIN_INPUT | MANUAL_MODE)},    /* gpmc_ad15.vout3_d15 */
742         {GPMC_A0, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},     /* gpmc_a0.vout3_d16 */
743         {GPMC_A1, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},     /* gpmc_a1.vout3_d17 */
744         {GPMC_A2, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},     /* gpmc_a2.vout3_d18 */
745         {GPMC_A3, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},     /* gpmc_a3.vout3_d19 */
746         {GPMC_A4, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},     /* gpmc_a4.vout3_d20 */
747         {GPMC_A5, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},     /* gpmc_a5.vout3_d21 */
748         {GPMC_A6, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},     /* gpmc_a6.vout3_d22 */
749         {GPMC_A7, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},     /* gpmc_a7.vout3_d23 */
750         {GPMC_A8, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},     /* gpmc_a8.vout3_hsync */
751         {GPMC_A9, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},     /* gpmc_a9.vout3_vsync */
752         {GPMC_A10, (M3 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a10.vout3_de */
753         {GPMC_A11, (M14 | PIN_INPUT_PULLUP)},   /* gpmc_a11.gpio2_1 */
754         {GPMC_A12, (M14 | PIN_INPUT_PULLUP)},   /* gpmc_a12.gpio2_2 */
755         {GPMC_A13, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a13.qspi1_rtclk */
756         {GPMC_A14, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a14.qspi1_d3 */
757         {GPMC_A15, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a15.qspi1_d2 */
758         {GPMC_A16, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a16.qspi1_d0 */
759         {GPMC_A17, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a17.qspi1_d1 */
760         {GPMC_A18, (M1 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* gpmc_a18.qspi1_sclk */
761         {GPMC_A19, (M1 | PIN_INPUT_PULLDOWN)},  /* gpmc_a19.mmc2_dat4 */
762         {GPMC_A20, (M1 | PIN_INPUT_PULLDOWN)},  /* gpmc_a20.mmc2_dat5 */
763         {GPMC_A21, (M1 | PIN_INPUT_PULLDOWN)},  /* gpmc_a21.mmc2_dat6 */
764         {GPMC_A22, (M1 | PIN_INPUT_PULLDOWN)},  /* gpmc_a22.mmc2_dat7 */
765         {GPMC_A23, (M1 | PIN_INPUT_PULLDOWN)},  /* gpmc_a23.mmc2_clk */
766         {GPMC_A24, (M1 | PIN_INPUT_PULLDOWN)},  /* gpmc_a24.mmc2_dat0 */
767         {GPMC_A25, (M1 | PIN_INPUT_PULLDOWN)},  /* gpmc_a25.mmc2_dat1 */
768         {GPMC_A26, (M1 | PIN_INPUT_PULLDOWN)},  /* gpmc_a26.mmc2_dat2 */
769         {GPMC_A27, (M1 | PIN_INPUT_PULLDOWN)},  /* gpmc_a27.mmc2_dat3 */
770         {GPMC_CS1, (M1 | PIN_INPUT_PULLUP)},    /* gpmc_cs1.mmc2_cmd */
771         {GPMC_CS0, (M0 | PIN_INPUT_PULLUP)},    /* gpmc_cs0.gpmc_cs0 */
772         {GPMC_CS2, (M1 | PIN_INPUT_PULLUP | MANUAL_MODE)},      /* gpmc_cs2.qspi1_cs0 */
773         {GPMC_CS3, (M3 | PIN_INPUT_PULLUP | MANUAL_MODE)},      /* gpmc_cs3.vout3_clk */
774         {GPMC_ADVN_ALE, (M0 | PIN_INPUT_PULLUP)},       /* gpmc_advn_ale.gpmc_advn_ale */
775         {GPMC_OEN_REN, (M0 | PIN_INPUT_PULLUP)},        /* gpmc_oen_ren.gpmc_oen_ren */
776         {GPMC_WEN, (M0 | PIN_INPUT_PULLUP)},    /* gpmc_wen.gpmc_wen */
777         {GPMC_BEN0, (M0 | PIN_INPUT_PULLUP)},   /* gpmc_ben0.gpmc_ben0 */
778         {GPMC_WAIT0, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},    /* gpmc_wait0.gpmc_wait0 */
779         {VIN1A_FLD0, (M14 | PIN_INPUT_PULLUP)}, /* vin1a_fld0.gpio3_1 */
780         {VIN2A_CLK0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},  /* vin2a_clk0.vin2a_clk0 */
781         {VIN2A_DE0, (M15 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},  /* vin2a_de0.Driveroff */
782         {VIN2A_FLD0, (M14 | PIN_INPUT_PULLDOWN)},       /* vin2a_fld0.gpio3_30 */
783         {VIN2A_HSYNC0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},        /* vin2a_hsync0.vin2a_hsync0 */
784         {VIN2A_VSYNC0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},        /* vin2a_vsync0.vin2a_vsync0 */
785         {VIN2A_D0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin2a_d0.vin2a_d0 */
786         {VIN2A_D1, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin2a_d1.vin2a_d1 */
787         {VIN2A_D2, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin2a_d2.vin2a_d2 */
788         {VIN2A_D3, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin2a_d3.vin2a_d3 */
789         {VIN2A_D4, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin2a_d4.vin2a_d4 */
790         {VIN2A_D5, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin2a_d5.vin2a_d5 */
791         {VIN2A_D6, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin2a_d6.vin2a_d6 */
792         {VIN2A_D7, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin2a_d7.vin2a_d7 */
793         {VIN2A_D8, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin2a_d8.vin2a_d8 */
794         {VIN2A_D9, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vin2a_d9.vin2a_d9 */
795         {VIN2A_D10, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d10.vin2a_d10 */
796         {VIN2A_D11, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vin2a_d11.vin2a_d11 */
797         {VIN2A_D12, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d12.rgmii1_txc */
798         {VIN2A_D13, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d13.rgmii1_txctl */
799         {VIN2A_D14, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d14.rgmii1_txd3 */
800         {VIN2A_D15, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d15.rgmii1_txd2 */
801         {VIN2A_D16, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d16.rgmii1_txd1 */
802         {VIN2A_D17, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d17.rgmii1_txd0 */
803         {VIN2A_D18, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d18.rgmii1_rxc */
804         {VIN2A_D19, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d19.rgmii1_rxctl */
805         {VIN2A_D20, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d20.rgmii1_rxd3 */
806         {VIN2A_D21, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d21.rgmii1_rxd2 */
807         {VIN2A_D22, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d22.rgmii1_rxd1 */
808         {VIN2A_D23, (M3 | PIN_INPUT | MANUAL_MODE)},    /* vin2a_d23.rgmii1_rxd0 */
809         {VOUT1_CLK, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_clk.vout1_clk */
810         {VOUT1_DE, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_de.vout1_de */
811         {VOUT1_FLD, (M14 | PIN_INPUT_PULLUP)},  /* vout1_fld.gpio4_21 */
812         {VOUT1_HSYNC, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* vout1_hsync.vout1_hsync */
813         {VOUT1_VSYNC, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)}, /* vout1_vsync.vout1_vsync */
814         {VOUT1_D0, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_d0.vout1_d0 */
815         {VOUT1_D1, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_d1.vout1_d1 */
816         {VOUT1_D2, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_d2.vout1_d2 */
817         {VOUT1_D3, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_d3.vout1_d3 */
818         {VOUT1_D4, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_d4.vout1_d4 */
819         {VOUT1_D5, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_d5.vout1_d5 */
820         {VOUT1_D6, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_d6.vout1_d6 */
821         {VOUT1_D7, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_d7.vout1_d7 */
822         {VOUT1_D8, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_d8.vout1_d8 */
823         {VOUT1_D9, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},    /* vout1_d9.vout1_d9 */
824         {VOUT1_D10, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d10.vout1_d10 */
825         {VOUT1_D11, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d11.vout1_d11 */
826         {VOUT1_D12, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d12.vout1_d12 */
827         {VOUT1_D13, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d13.vout1_d13 */
828         {VOUT1_D14, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d14.vout1_d14 */
829         {VOUT1_D15, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d15.vout1_d15 */
830         {VOUT1_D16, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d16.vout1_d16 */
831         {VOUT1_D17, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d17.vout1_d17 */
832         {VOUT1_D18, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d18.vout1_d18 */
833         {VOUT1_D19, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d19.vout1_d19 */
834         {VOUT1_D20, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d20.vout1_d20 */
835         {VOUT1_D21, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d21.vout1_d21 */
836         {VOUT1_D22, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d22.vout1_d22 */
837         {VOUT1_D23, (M0 | PIN_INPUT_PULLDOWN | MANUAL_MODE)},   /* vout1_d23.vout1_d23 */
838         {MDIO_MCLK, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* mdio_mclk.mdio_mclk */
839         {MDIO_D, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},        /* mdio_d.mdio_d */
840         {RGMII0_TXC, (M0 | PIN_INPUT | MANUAL_MODE)},   /* rgmii0_txc.rgmii0_txc */
841         {RGMII0_TXCTL, (M0 | PIN_INPUT | MANUAL_MODE)}, /* rgmii0_txctl.rgmii0_txctl */
842         {RGMII0_TXD3, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_txd3.rgmii0_txd3 */
843         {RGMII0_TXD2, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_txd2.rgmii0_txd2 */
844         {RGMII0_TXD1, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_txd1.rgmii0_txd1 */
845         {RGMII0_TXD0, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_txd0.rgmii0_txd0 */
846         {RGMII0_RXC, (M0 | PIN_INPUT | MANUAL_MODE)},   /* rgmii0_rxc.rgmii0_rxc */
847         {RGMII0_RXCTL, (M0 | PIN_INPUT | MANUAL_MODE)}, /* rgmii0_rxctl.rgmii0_rxctl */
848         {RGMII0_RXD3, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_rxd3.rgmii0_rxd3 */
849         {RGMII0_RXD2, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_rxd2.rgmii0_rxd2 */
850         {RGMII0_RXD1, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_rxd1.rgmii0_rxd1 */
851         {RGMII0_RXD0, (M0 | PIN_INPUT | MANUAL_MODE)},  /* rgmii0_rxd0.rgmii0_rxd0 */
852         {USB1_DRVVBUS, (M0 | PIN_INPUT_SLEW)},  /* usb1_drvvbus.usb1_drvvbus */
853         {USB2_DRVVBUS, (M0 | PIN_INPUT_SLEW)},  /* usb2_drvvbus.usb2_drvvbus */
854         {GPIO6_14, (M9 | PIN_INPUT_PULLUP)},    /* gpio6_14.i2c3_sda */
855         {GPIO6_15, (M9 | PIN_INPUT_PULLUP)},    /* gpio6_15.i2c3_scl */
856         {GPIO6_16, (M0 | PIN_INPUT_PULLUP)},    /* gpio6_16.gpio6_16 */
857         {XREF_CLK2, (M5 | PIN_INPUT_PULLDOWN)}, /* xref_clk2.atl_clk2 */
858         {MCASP1_ACLKX, (M14 | 0x00070000)},     /* mcasp1_aclkx.gpio7_31 */
859         {MCASP1_FSX, (M14 | PIN_INPUT | SLEWCONTROL)},  /* mcasp1_fsx.gpio7_30 */
860         {MCASP1_AXR0, (M10 | PIN_INPUT_PULLUP | SLEWCONTROL)},  /* mcasp1_axr0.i2c5_sda */
861         {MCASP1_AXR1, (M10 | 0x000f0000)},      /* mcasp1_axr1.i2c5_scl */
862         {MCASP1_AXR2, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr2.gpio5_4 */
863         {MCASP1_AXR3, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr3.gpio5_5 */
864         {MCASP1_AXR4, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr4.gpio5_6 */
865         {MCASP1_AXR5, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr5.gpio5_7 */
866         {MCASP1_AXR6, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr6.gpio5_8 */
867         {MCASP1_AXR7, (M14 | PIN_INPUT_PULLDOWN)},      /* mcasp1_axr7.gpio5_9 */
868         {MCASP1_AXR12, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr12.mcasp7_axr0 */
869         {MCASP1_AXR13, (M1 | PIN_INPUT_SLEW)},  /* mcasp1_axr13.mcasp7_axr1 */
870         {MCASP1_AXR14, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr14.mcasp7_aclkx */
871         {MCASP1_AXR15, (M1 | PIN_INPUT_SLEW | VIRTUAL_MODE10)}, /* mcasp1_axr15.mcasp7_fsx */
872         {MCASP2_ACLKR, (M15 | PIN_INPUT_PULLUP)},       /* mcasp2_aclkr.Driveroff */
873         {MCASP3_ACLKX, (M0 | PIN_INPUT_PULLDOWN)},      /* mcasp3_aclkx.mcasp3_aclkx */
874         {MCASP3_FSX, (M0 | PIN_INPUT_SLEW)},    /* mcasp3_fsx.mcasp3_fsx */
875         {MCASP3_AXR0, (M0 | PIN_INPUT_SLEW)},   /* mcasp3_axr0.mcasp3_axr0 */
876         {MCASP3_AXR1, (M0 | PIN_INPUT_SLEW | VIRTUAL_MODE6)},   /* mcasp3_axr1.mcasp3_axr1 */
877         {MMC1_CLK, (M0 | PIN_INPUT_PULLUP)},    /* mmc1_clk.mmc1_clk */
878         {MMC1_CMD, (M0 | PIN_INPUT_PULLUP)},    /* mmc1_cmd.mmc1_cmd */
879         {MMC1_DAT0, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat0.mmc1_dat0 */
880         {MMC1_DAT1, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat1.mmc1_dat1 */
881         {MMC1_DAT2, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat2.mmc1_dat2 */
882         {MMC1_DAT3, (M0 | PIN_INPUT_PULLUP)},   /* mmc1_dat3.mmc1_dat3 */
883         {MMC1_SDCD, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* mmc1_sdcd.mmc1_sdcd */
884         {MMC1_SDWP, (M14 | PIN_INPUT_SLEW)},    /* mmc1_sdwp.gpio6_28 */
885         {SPI1_SCLK, (M0 | PIN_INPUT_PULLDOWN)}, /* spi1_sclk.spi1_sclk */
886         {SPI1_D1, (M0 | PIN_INPUT_PULLDOWN)},   /* spi1_d1.spi1_d1 */
887         {SPI1_D0, (M0 | PIN_INPUT_PULLDOWN)},   /* spi1_d0.spi1_d0 */
888         {SPI1_CS0, (M0 | PIN_INPUT_PULLUP)},    /* spi1_cs0.spi1_cs0 */
889         {SPI1_CS2, (M14 | PIN_INPUT_PULLDOWN)}, /* spi1_cs2.gpio7_12 */
890         {SPI1_CS3, (M6 | PIN_INPUT | SLEWCONTROL)},     /* spi1_cs3.hdmi1_cec */
891         {SPI2_SCLK, (M1 | PIN_INPUT_PULLDOWN)}, /* spi2_sclk.uart3_rxd */
892         {SPI2_D1, (M1 | PIN_INPUT_SLEW)},       /* spi2_d1.uart3_txd */
893         {SPI2_D0, (M1 | PIN_INPUT_SLEW)},       /* spi2_d0.uart3_ctsn */
894         {SPI2_CS0, (M1 | PIN_INPUT_PULLUP | SLEWCONTROL)},      /* spi2_cs0.uart3_rtsn */
895         {DCAN1_TX, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},      /* dcan1_tx.dcan1_tx */
896         {DCAN1_RX, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},      /* dcan1_rx.dcan1_rx */
897         {UART1_RXD, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* uart1_rxd.uart1_rxd */
898         {UART1_TXD, (M0 | PIN_INPUT_PULLUP | SLEWCONTROL)},     /* uart1_txd.uart1_txd */
899         {UART1_CTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart1_ctsn.mmc4_clk */
900         {UART1_RTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart1_rtsn.mmc4_cmd */
901         {UART2_RXD, (M3 | PIN_INPUT_PULLUP)},   /* N/A.mmc4_dat0 */
902         {UART2_TXD, (M3 | PIN_INPUT_PULLUP)},   /* uart2_txd.mmc4_dat1 */
903         {UART2_CTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart2_ctsn.mmc4_dat2 */
904         {UART2_RTSN, (M3 | PIN_INPUT_PULLUP)},  /* uart2_rtsn.mmc4_dat3 */
905         {I2C2_SDA, (M1 | PIN_INPUT_PULLUP)},    /* i2c2_sda.hdmi1_ddc_scl */
906         {I2C2_SCL, (M1 | PIN_INPUT_PULLUP)},    /* i2c2_scl.hdmi1_ddc_sda */
907         {WAKEUP0, (M14 | PIN_OUTPUT)},  /* N/A.gpio1_0 */
908         {WAKEUP1, (M14 | PIN_OUTPUT)},  /* N/A.gpio1_1 */
909         {WAKEUP2, (M14 | PIN_INPUT)},   /* N/A.gpio1_2 */
910         {WAKEUP3, (M1 | PIN_OUTPUT)},   /* N/A.sys_nirq1 */
911 };
912
913 #ifdef CONFIG_IODELAY_RECALIBRATION
914 const struct iodelay_cfg_entry dra742_es1_1_iodelay_cfg_array[] = {
915         {0x06F0, 480, 0},       /* CFG_RGMII0_RXC_IN */
916         {0x06FC, 111, 1641},    /* CFG_RGMII0_RXCTL_IN */
917         {0x0708, 272, 1116},    /* CFG_RGMII0_RXD0_IN */
918         {0x0714, 243, 1260},    /* CFG_RGMII0_RXD1_IN */
919         {0x0720, 0, 1614},      /* CFG_RGMII0_RXD2_IN */
920         {0x072C, 105, 1673},    /* CFG_RGMII0_RXD3_IN */
921         {0x0740, 0, 0},         /* CFG_RGMII0_TXC_OUT */
922         {0x074C, 1560, 120},    /* CFG_RGMII0_TXCTL_OUT */
923         {0x0758, 1570, 120},    /* CFG_RGMII0_TXD0_OUT */
924         {0x0764, 1500, 120},    /* CFG_RGMII0_TXD1_OUT */
925         {0x0770, 1775, 120},    /* CFG_RGMII0_TXD2_OUT */
926         {0x077C, 1875, 120},    /* CFG_RGMII0_TXD3_OUT */
927         {0x08D0, 0, 0},         /* CFG_VIN1A_CLK0_IN */
928         {0x08DC, 2600, 0},      /* CFG_VIN1A_D0_IN */
929         {0x08E8, 2652, 46},     /* CFG_VIN1A_D10_IN */
930         {0x08F4, 2541, 0},      /* CFG_VIN1A_D11_IN */
931         {0x0900, 2603, 574},    /* CFG_VIN1A_D12_IN */
932         {0x090C, 2548, 443},    /* CFG_VIN1A_D13_IN */
933         {0x0918, 2624, 598},    /* CFG_VIN1A_D14_IN */
934         {0x0924, 2535, 1027},   /* CFG_VIN1A_D15_IN */
935         {0x0930, 2526, 818},    /* CFG_VIN1A_D16_IN */
936         {0x093C, 2623, 797},    /* CFG_VIN1A_D17_IN */
937         {0x0948, 2578, 888},    /* CFG_VIN1A_D18_IN */
938         {0x0954, 2574, 1008},   /* CFG_VIN1A_D19_IN */
939         {0x0960, 2527, 123},    /* CFG_VIN1A_D1_IN */
940         {0x096C, 2577, 737},    /* CFG_VIN1A_D20_IN */
941         {0x0978, 2627, 616},    /* CFG_VIN1A_D21_IN */
942         {0x0984, 2573, 777},    /* CFG_VIN1A_D22_IN */
943         {0x0990, 2730, 67},     /* CFG_VIN1A_D23_IN */
944         {0x099C, 2509, 303},    /* CFG_VIN1A_D2_IN */
945         {0x09A8, 2494, 267},    /* CFG_VIN1A_D3_IN */
946         {0x09B4, 2474, 0},      /* CFG_VIN1A_D4_IN */
947         {0x09C0, 2556, 181},    /* CFG_VIN1A_D5_IN */
948         {0x09CC, 2516, 195},    /* CFG_VIN1A_D6_IN */
949         {0x09D8, 2589, 210},    /* CFG_VIN1A_D7_IN */
950         {0x09E4, 2624, 75},     /* CFG_VIN1A_D8_IN */
951         {0x09F0, 2704, 14},     /* CFG_VIN1A_D9_IN */
952         {0x09FC, 2469, 55},     /* CFG_VIN1A_DE0_IN */
953         {0x0A08, 2557, 264},    /* CFG_VIN1A_FLD0_IN */
954         {0x0A14, 2465, 269},    /* CFG_VIN1A_HSYNC0_IN */
955         {0x0A20, 2411, 348},    /* CFG_VIN1A_VSYNC0_IN */
956         {0x0A70, 150, 0},       /* CFG_VIN2A_D12_OUT */
957         {0x0A7C, 1500, 0},      /* CFG_VIN2A_D13_OUT */
958         {0x0A88, 1600, 0},      /* CFG_VIN2A_D14_OUT */
959         {0x0A94, 900, 0},       /* CFG_VIN2A_D15_OUT */
960         {0x0AA0, 680, 0},       /* CFG_VIN2A_D16_OUT */
961         {0x0AAC, 500, 0},       /* CFG_VIN2A_D17_OUT */
962         {0x0AB0, 702, 0},       /* CFG_VIN2A_D18_IN */
963         {0x0ABC, 136, 976},     /* CFG_VIN2A_D19_IN */
964         {0x0AD4, 210, 1357},    /* CFG_VIN2A_D20_IN */
965         {0x0AE0, 189, 1462},    /* CFG_VIN2A_D21_IN */
966         {0x0AEC, 232, 1278},    /* CFG_VIN2A_D22_IN */
967         {0x0AF8, 0, 1397},      /* CFG_VIN2A_D23_IN */
968         {0x0144, 0, 0},         /* CFG_GPMC_A13_IN */
969         {0x0150, 1976, 1389},   /* CFG_GPMC_A14_IN */
970         {0x015C, 1872, 1408},   /* CFG_GPMC_A15_IN */
971         {0x0168, 1914, 1506},   /* CFG_GPMC_A16_IN */
972         {0x0170, 57, 0},        /* CFG_GPMC_A16_OUT */
973         {0x0174, 1904, 1471},   /* CFG_GPMC_A17_IN */
974         {0x0188, 1690, 0},      /* CFG_GPMC_A18_OUT */
975         {0x0374, 0, 0},         /* CFG_GPMC_CS2_OUT */
976 };
977
978 const struct iodelay_cfg_entry dra742_es2_0_iodelay_cfg_array[] = {
979         {0x06F0, 471, 0},       /* CFG_RGMII0_RXC_IN */
980         {0x06FC, 30, 1919},     /* CFG_RGMII0_RXCTL_IN */
981         {0x0708, 74, 1688},     /* CFG_RGMII0_RXD0_IN */
982         {0x0714, 94, 1697},     /* CFG_RGMII0_RXD1_IN */
983         {0x0720, 0, 1703},      /* CFG_RGMII0_RXD2_IN */
984         {0x072C, 70, 1804},     /* CFG_RGMII0_RXD3_IN */
985         {0x0740, 70, 70},       /* CFG_RGMII0_TXC_OUT */
986         {0x074C, 35, 70},       /* CFG_RGMII0_TXCTL_OUT */
987         {0x0758, 100, 130},     /* CFG_RGMII0_TXD0_OUT */
988         {0x0764, 0, 70},        /* CFG_RGMII0_TXD1_OUT */
989         {0x0770, 0, 0}, /* CFG_RGMII0_TXD2_OUT */
990         {0x077C, 100, 130},     /* CFG_RGMII0_TXD3_OUT */
991         {0x08D0, 0, 0}, /* CFG_VIN1A_CLK0_IN */
992         {0x08DC, 2105, 619},    /* CFG_VIN1A_D0_IN */
993         {0x08E8, 2107, 739},    /* CFG_VIN1A_D10_IN */
994         {0x08F4, 2005, 788},    /* CFG_VIN1A_D11_IN */
995         {0x0900, 2059, 1297},   /* CFG_VIN1A_D12_IN */
996         {0x090C, 2027, 1141},   /* CFG_VIN1A_D13_IN */
997         {0x0918, 2071, 1332},   /* CFG_VIN1A_D14_IN */
998         {0x0924, 1995, 1764},   /* CFG_VIN1A_D15_IN */
999         {0x0930, 1999, 1542},   /* CFG_VIN1A_D16_IN */
1000         {0x093C, 2072, 1540},   /* CFG_VIN1A_D17_IN */
1001         {0x0948, 2034, 1629},   /* CFG_VIN1A_D18_IN */
1002         {0x0954, 2026, 1761},   /* CFG_VIN1A_D19_IN */
1003         {0x0960, 2017, 757},    /* CFG_VIN1A_D1_IN */
1004         {0x096C, 2037, 1469},   /* CFG_VIN1A_D20_IN */
1005         {0x0978, 2077, 1349},   /* CFG_VIN1A_D21_IN */
1006         {0x0984, 2022, 1545},   /* CFG_VIN1A_D22_IN */
1007         {0x0990, 2168, 784},    /* CFG_VIN1A_D23_IN */
1008         {0x099C, 1996, 962},    /* CFG_VIN1A_D2_IN */
1009         {0x09A8, 1993, 901},    /* CFG_VIN1A_D3_IN */
1010         {0x09B4, 2098, 499},    /* CFG_VIN1A_D4_IN */
1011         {0x09C0, 2038, 844},    /* CFG_VIN1A_D5_IN */
1012         {0x09CC, 2002, 863},    /* CFG_VIN1A_D6_IN */
1013         {0x09D8, 2063, 873},    /* CFG_VIN1A_D7_IN */
1014         {0x09E4, 2088, 759},    /* CFG_VIN1A_D8_IN */
1015         {0x09F0, 2152, 701},    /* CFG_VIN1A_D9_IN */
1016         {0x09FC, 1926, 728},    /* CFG_VIN1A_DE0_IN */
1017         {0x0A08, 2043, 937},    /* CFG_VIN1A_FLD0_IN */
1018         {0x0A14, 1978, 909},    /* CFG_VIN1A_HSYNC0_IN */
1019         {0x0A20, 1926, 987},    /* CFG_VIN1A_VSYNC0_IN */
1020         {0x0A70, 140, 0},       /* CFG_VIN2A_D12_OUT */
1021         {0x0A7C, 90, 70},       /* CFG_VIN2A_D13_OUT */
1022         {0x0A88, 0, 0}, /* CFG_VIN2A_D14_OUT */
1023         {0x0A94, 0, 0}, /* CFG_VIN2A_D15_OUT */
1024         {0x0AA0, 0, 70},        /* CFG_VIN2A_D16_OUT */
1025         {0x0AAC, 0, 0}, /* CFG_VIN2A_D17_OUT */
1026         {0x0AB0, 612, 0},       /* CFG_VIN2A_D18_IN */
1027         {0x0ABC, 4, 927},       /* CFG_VIN2A_D19_IN */
1028         {0x0AD4, 136, 1340},    /* CFG_VIN2A_D20_IN */
1029         {0x0AE0, 130, 1450},    /* CFG_VIN2A_D21_IN */
1030         {0x0AEC, 144, 1269},    /* CFG_VIN2A_D22_IN */
1031         {0x0AF8, 0, 1330},      /* CFG_VIN2A_D23_IN */
1032         {0x0144, 0, 0},         /* CFG_GPMC_A13_IN */
1033         {0x0150, 2575, 966},    /* CFG_GPMC_A14_IN */
1034         {0x015C, 2503, 889},    /* CFG_GPMC_A15_IN */
1035         {0x0168, 2528, 1007},   /* CFG_GPMC_A16_IN */
1036         {0x0170, 0, 0},         /* CFG_GPMC_A16_OUT */
1037         {0x0174, 2533, 980},    /* CFG_GPMC_A17_IN */
1038         {0x0188, 590, 0},       /* CFG_GPMC_A18_OUT */
1039         {0x0374, 0, 0},         /* CFG_GPMC_CS2_OUT */
1040 };
1041
1042 const struct iodelay_cfg_entry dra76x_es1_0_iodelay_cfg_array[] = {
1043         {0x011C, 787, 0},       /* CFG_GPMC_A0_OUT */
1044         {0x0128, 1181, 0},      /* CFG_GPMC_A10_OUT */
1045         {0x0144, 0, 0}, /* CFG_GPMC_A13_IN */
1046         {0x0150, 2149, 1052},   /* CFG_GPMC_A14_IN */
1047         {0x015C, 2121, 997},    /* CFG_GPMC_A15_IN */
1048         {0x0168, 2159, 1134},   /* CFG_GPMC_A16_IN */
1049         {0x0170, 0, 0}, /* CFG_GPMC_A16_OUT */
1050         {0x0174, 2135, 1085},   /* CFG_GPMC_A17_IN */
1051         {0x0188, 0, 0}, /* CFG_GPMC_A18_OUT */
1052         {0x01A0, 592, 0},       /* CFG_GPMC_A1_OUT */
1053         {0x020C, 641, 0},       /* CFG_GPMC_A2_OUT */
1054         {0x0218, 1481, 0},      /* CFG_GPMC_A3_OUT */
1055         {0x0224, 1775, 0},      /* CFG_GPMC_A4_OUT */
1056         {0x0230, 785, 0},       /* CFG_GPMC_A5_OUT */
1057         {0x023C, 848, 0},       /* CFG_GPMC_A6_OUT */
1058         {0x0248, 851, 0},       /* CFG_GPMC_A7_OUT */
1059         {0x0254, 1783, 0},      /* CFG_GPMC_A8_OUT */
1060         {0x0260, 951, 0},       /* CFG_GPMC_A9_OUT */
1061         {0x026C, 1091, 0},      /* CFG_GPMC_AD0_OUT */
1062         {0x0278, 1027, 0},      /* CFG_GPMC_AD10_OUT */
1063         {0x0284, 824, 0},       /* CFG_GPMC_AD11_OUT */
1064         {0x0290, 1196, 0},      /* CFG_GPMC_AD12_OUT */
1065         {0x029C, 754, 0},       /* CFG_GPMC_AD13_OUT */
1066         {0x02A8, 665, 0},       /* CFG_GPMC_AD14_OUT */
1067         {0x02B4, 1027, 0},      /* CFG_GPMC_AD15_OUT */
1068         {0x02C0, 937, 0},       /* CFG_GPMC_AD1_OUT */
1069         {0x02CC, 1168, 0},      /* CFG_GPMC_AD2_OUT */
1070         {0x02D8, 872, 0},       /* CFG_GPMC_AD3_OUT */
1071         {0x02E4, 1092, 0},      /* CFG_GPMC_AD4_OUT */
1072         {0x02F0, 576, 0},       /* CFG_GPMC_AD5_OUT */
1073         {0x02FC, 1113, 0},      /* CFG_GPMC_AD6_OUT */
1074         {0x0308, 943, 0},       /* CFG_GPMC_AD7_OUT */
1075         {0x0314, 0, 0}, /* CFG_GPMC_AD8_OUT */
1076         {0x0320, 0, 0}, /* CFG_GPMC_AD9_OUT */
1077         {0x0374, 0, 0}, /* CFG_GPMC_CS2_OUT */
1078         {0x0380, 1801, 948},    /* CFG_GPMC_CS3_OUT */
1079         {0x06F0, 451, 0},       /* CFG_RGMII0_RXC_IN */
1080         {0x06FC, 127, 1571},    /* CFG_RGMII0_RXCTL_IN */
1081         {0x0708, 165, 1178},    /* CFG_RGMII0_RXD0_IN */
1082         {0x0714, 136, 1302},    /* CFG_RGMII0_RXD1_IN */
1083         {0x0720, 0, 1520},      /* CFG_RGMII0_RXD2_IN */
1084         {0x072C, 28, 1690},     /* CFG_RGMII0_RXD3_IN */
1085         {0x0740, 121, 0},       /* CFG_RGMII0_TXC_OUT */
1086         {0x074C, 60, 0},        /* CFG_RGMII0_TXCTL_OUT */
1087         {0x0758, 153, 0},       /* CFG_RGMII0_TXD0_OUT */
1088         {0x0764, 35, 0},        /* CFG_RGMII0_TXD1_OUT */
1089         {0x0770, 0, 0}, /* CFG_RGMII0_TXD2_OUT */
1090         {0x077C, 172, 0},       /* CFG_RGMII0_TXD3_OUT */
1091         {0x0A38, 0, 0}, /* CFG_VIN2A_CLK0_IN */
1092         {0x0A44, 2180, 0},      /* CFG_VIN2A_D0_IN */
1093         {0x0A50, 2297, 110},    /* CFG_VIN2A_D10_IN */
1094         {0x0A5C, 1938, 0},      /* CFG_VIN2A_D11_IN */
1095         {0x0A70, 147, 0},       /* CFG_VIN2A_D12_OUT */
1096         {0x0A7C, 110, 0},       /* CFG_VIN2A_D13_OUT */
1097         {0x0A88, 18, 0},        /* CFG_VIN2A_D14_OUT */
1098         {0x0A94, 82, 0},        /* CFG_VIN2A_D15_OUT */
1099         {0x0AA0, 33, 0},        /* CFG_VIN2A_D16_OUT */
1100         {0x0AAC, 0, 0}, /* CFG_VIN2A_D17_OUT */
1101         {0x0AB0, 417, 0},       /* CFG_VIN2A_D18_IN */
1102         {0x0ABC, 156, 843},     /* CFG_VIN2A_D19_IN */
1103         {0x0AC8, 2326, 309},    /* CFG_VIN2A_D1_IN */
1104         {0x0AD4, 223, 1413},    /* CFG_VIN2A_D20_IN */
1105         {0x0AE0, 169, 1415},    /* CFG_VIN2A_D21_IN */
1106         {0x0AEC, 43, 1150},     /* CFG_VIN2A_D22_IN */
1107         {0x0AF8, 0, 1210},      /* CFG_VIN2A_D23_IN */
1108         {0x0B04, 2057, 0},      /* CFG_VIN2A_D2_IN */
1109         {0x0B10, 2440, 257},    /* CFG_VIN2A_D3_IN */
1110         {0x0B1C, 2142, 0},      /* CFG_VIN2A_D4_IN */
1111         {0x0B28, 2455, 252},    /* CFG_VIN2A_D5_IN */
1112         {0x0B34, 1883, 0},      /* CFG_VIN2A_D6_IN */
1113         {0x0B40, 2229, 0},      /* CFG_VIN2A_D7_IN */
1114         {0x0B4C, 2250, 151},    /* CFG_VIN2A_D8_IN */
1115         {0x0B58, 2279, 27},     /* CFG_VIN2A_D9_IN */
1116         {0x0B7C, 2233, 0},      /* CFG_VIN2A_HSYNC0_IN */
1117         {0x0B88, 1936, 0},      /* CFG_VIN2A_VSYNC0_IN */
1118         {0x0B9C, 1281, 497},    /* CFG_VOUT1_CLK_OUT */
1119         {0x0BA8, 379, 0},       /* CFG_VOUT1_D0_OUT */
1120         {0x0BB4, 441, 0},       /* CFG_VOUT1_D10_OUT */
1121         {0x0BC0, 461, 0},       /* CFG_VOUT1_D11_OUT */
1122         {0x0BCC, 1189, 0},      /* CFG_VOUT1_D12_OUT */
1123         {0x0BD8, 312, 0},       /* CFG_VOUT1_D13_OUT */
1124         {0x0BE4, 298, 0},       /* CFG_VOUT1_D14_OUT */
1125         {0x0BF0, 284, 0},       /* CFG_VOUT1_D15_OUT */
1126         {0x0BFC, 152, 0},       /* CFG_VOUT1_D16_OUT */
1127         {0x0C08, 216, 0},       /* CFG_VOUT1_D17_OUT */
1128         {0x0C14, 408, 0},       /* CFG_VOUT1_D18_OUT */
1129         {0x0C20, 519, 0},       /* CFG_VOUT1_D19_OUT */
1130         {0x0C2C, 475, 0},       /* CFG_VOUT1_D1_OUT */
1131         {0x0C38, 316, 0},       /* CFG_VOUT1_D20_OUT */
1132         {0x0C44, 59, 0},        /* CFG_VOUT1_D21_OUT */
1133         {0x0C50, 221, 0},       /* CFG_VOUT1_D22_OUT */
1134         {0x0C5C, 96, 0},        /* CFG_VOUT1_D23_OUT */
1135         {0x0C68, 264, 0},       /* CFG_VOUT1_D2_OUT */
1136         {0x0C74, 421, 0},       /* CFG_VOUT1_D3_OUT */
1137         {0x0C80, 1257, 0},      /* CFG_VOUT1_D4_OUT */
1138         {0x0C8C, 432, 0},       /* CFG_VOUT1_D5_OUT */
1139         {0x0C98, 436, 0},       /* CFG_VOUT1_D6_OUT */
1140         {0x0CA4, 440, 0},       /* CFG_VOUT1_D7_OUT */
1141         {0x0CB0, 81, 100},      /* CFG_VOUT1_D8_OUT */
1142         {0x0CBC, 471, 0},       /* CFG_VOUT1_D9_OUT */
1143         {0x0CC8, 0, 0}, /* CFG_VOUT1_DE_OUT */
1144         {0x0CE0, 0, 0}, /* CFG_VOUT1_HSYNC_OUT */
1145         {0x0CEC, 815, 0},       /* CFG_VOUT1_VSYNC_OUT */
1146 };
1147 #endif
1148
1149 #endif /* _MUX_DATA_DRA7XX_H_ */