aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2013-10-28 16:21:42 -0400
committerOlof Johansson <olof@lixom.net>2013-10-28 16:21:42 -0400
commit0f56438038e08e4daa460e1fdccae6d29f13e874 (patch)
tree4a3ae2101b6cda43fbc1131a063ee110ec5f41aa
parent2de1a7a855e3c543ee9c954f36103aeabc6830d1 (diff)
parent5f7adc9762a33c4aa534f575532f55804ff50609 (diff)
Merge tag 'imx-dt-3.13' of git://git.linaro.org/people/shawnguo/linux-2.6 into next/dt
From Shawn Guo: The imx/mxs device tree changes for 3.13: - Use macros for mxs pinctrl settings - New board support: VF610 Cosmic/Cosmic+, imx6q-udoo, MSR M28CU3 - Support DSPI device for vf610 - Add PCIe device for imx6qdl - Add UHS pinctrl states for imx6sl and imx6qdl - Display support for APF and imx51-babbage boards - Enable SPI NOR and USB for imx6sl-evk board - Enable LVDS for imx6q-sabrelite and SPDIF for imx6qdl-wandboard - Misc updates on boards: TX28, imx6qdl-wandboard, imx53-qsb etc. - Some random updates on imx51 device tree * tag 'imx-dt-3.13' of git://git.linaro.org/people/shawnguo/linux-2.6: (44 commits) ARM: imx: imx6sl iomuxc syscon is compatible to imx6q ARM: dts: imx6sl-evk: enable the SPI NOR ARM: dts: imx6sl: add a pinctrl for ECSPI1 ARM: imx27: add missing #pwm-cells property ARM: dts: imx6sl: add pinctrl uhs states for usdhc ARM: dts: imx6qdl-sabresd: Add backlight support for lvds ARM: dts: imx51-babbage: Make DVI and WVGA panel functional ARM: imx27-apf27dev: Add framebuffer support ARM: imx51-apf51dev: Add parallel display support ARM: dts: imx53-qsb: Do not use GPIO1_8 as wakeup source ARM: dts: imx53-qsb: SDHC1 does not have cd-gpios ARM: dts: imx53-qsb: SDHC3 is connected in 8-bit mode ARM: dts: mxs: Add MSR M28CU3 board ARM: dts: imx6qdl-wandboard: Provide phy-reset-gpios ARM: dts: imx6qdl-sabresd: Provide phy-reset-gpios ARM: dts: imx6q-sabrelite: Add ethernet phy reset pin into hog ARM: dts: imx6qdl: add pcie device node ARM: dts: imx6q-udoo: Add initial board support ARM: dts: mxs: Add muxing options for the SSP2 MMC ARM: dts: add initial VF610 Cosmic/Cosmic+ board support ... Signed-off-by: Olof Johansson <olof@lixom.net>
-rw-r--r--Documentation/devicetree/bindings/pinctrl/fsl,mxs-pinctrl.txt859
-rw-r--r--arch/arm/boot/dts/Makefile3
-rw-r--r--arch/arm/boot/dts/imx23-evk.dts16
-rw-r--r--arch/arm/boot/dts/imx23-olinuxino.dts18
-rw-r--r--arch/arm/boot/dts/imx23-pinfunc.h333
-rw-r--r--arch/arm/boot/dts/imx23-stmp378x_devb.dts12
-rw-r--r--arch/arm/boot/dts/imx23.dtsi221
-rw-r--r--arch/arm/boot/dts/imx27-apf27dev.dts26
-rw-r--r--arch/arm/boot/dts/imx27.dtsi1
-rw-r--r--arch/arm/boot/dts/imx28-apf28.dts2
-rw-r--r--arch/arm/boot/dts/imx28-apf28dev.dts36
-rw-r--r--arch/arm/boot/dts/imx28-apx4devkit.dts60
-rw-r--r--arch/arm/boot/dts/imx28-cfa10036.dts26
-rw-r--r--arch/arm/boot/dts/imx28-cfa10037.dts18
-rw-r--r--arch/arm/boot/dts/imx28-cfa10049.dts156
-rw-r--r--arch/arm/boot/dts/imx28-cfa10055.dts80
-rw-r--r--arch/arm/boot/dts/imx28-cfa10056.dts38
-rw-r--r--arch/arm/boot/dts/imx28-cfa10057.dts66
-rw-r--r--arch/arm/boot/dts/imx28-cfa10058.dts24
-rw-r--r--arch/arm/boot/dts/imx28-evk.dts59
-rw-r--r--arch/arm/boot/dts/imx28-m28cu3.dts266
-rw-r--r--arch/arm/boot/dts/imx28-m28evk.dts28
-rw-r--r--arch/arm/boot/dts/imx28-pinfunc.h506
-rw-r--r--arch/arm/boot/dts/imx28-sps1.dts14
-rw-r--r--arch/arm/boot/dts/imx28-tx28.dts703
-rw-r--r--arch/arm/boot/dts/imx28.dtsi620
-rw-r--r--arch/arm/boot/dts/imx51-apf51dev.dts27
-rw-r--r--arch/arm/boot/dts/imx51-babbage.dts37
-rw-r--r--arch/arm/boot/dts/imx51.dtsi23
-rw-r--r--arch/arm/boot/dts/imx53-qsb.dts9
-rw-r--r--arch/arm/boot/dts/imx6q-pinfunc.h4
-rw-r--r--arch/arm/boot/dts/imx6q-sabrelite.dts104
-rw-r--r--arch/arm/boot/dts/imx6q-udoo.dts39
-rw-r--r--arch/arm/boot/dts/imx6qdl-sabreauto.dtsi5
-rw-r--r--arch/arm/boot/dts/imx6qdl-sabresd.dtsi18
-rw-r--r--arch/arm/boot/dts/imx6qdl-wandboard.dtsi23
-rw-r--r--arch/arm/boot/dts/imx6qdl.dtsi67
-rw-r--r--arch/arm/boot/dts/imx6sl-evk.dts67
-rw-r--r--arch/arm/boot/dts/imx6sl.dtsi172
-rw-r--r--arch/arm/boot/dts/mxs-pinfunc.h31
-rw-r--r--arch/arm/boot/dts/vf610-cosmic.dts47
-rw-r--r--arch/arm/boot/dts/vf610-twr.dts17
-rw-r--r--arch/arm/boot/dts/vf610.dtsi12
-rw-r--r--arch/arm/mach-mxs/mach-mxs.c7
44 files changed, 3207 insertions, 1693 deletions
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,mxs-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,mxs-pinctrl.txt
index 3077370c89af..1e70a8aff260 100644
--- a/Documentation/devicetree/bindings/pinctrl/fsl,mxs-pinctrl.txt
+++ b/Documentation/devicetree/bindings/pinctrl/fsl,mxs-pinctrl.txt
@@ -59,16 +59,16 @@ Required subnode-properties:
59 59
60Optional subnode-properties: 60Optional subnode-properties:
61- fsl,drive-strength: Integer. 61- fsl,drive-strength: Integer.
62 0: 4 mA 62 0: MXS_DRIVE_4mA
63 1: 8 mA 63 1: MXS_DRIVE_8mA
64 2: 12 mA 64 2: MXS_DRIVE_12mA
65 3: 16 mA 65 3: MXS_DRIVE_16mA
66- fsl,voltage: Integer. 66- fsl,voltage: Integer.
67 0: 1.8 V 67 0: MXS_VOLTAGE_LOW - 1.8 V
68 1: 3.3 V 68 1: MXS_VOLTAGE_HIGH - 3.3 V
69- fsl,pull-up: Integer. 69- fsl,pull-up: Integer.
70 0: Disable the internal pull-up 70 0: MXS_PULL_DISABLE - Disable the internal pull-up
71 1: Enable the internal pull-up 71 1: MXS_PULL_ENABLE - Enable the internal pull-up
72 72
73Note that when enabling the pull-up, the internal pad keeper gets disabled. 73Note that when enabling the pull-up, the internal pad keeper gets disabled.
74Also, some pins doesn't have a pull up, in that case, setting the fsl,pull-up 74Also, some pins doesn't have a pull up, in that case, setting the fsl,pull-up
@@ -85,23 +85,32 @@ pinctrl@80018000 {
85 mmc0_8bit_pins_a: mmc0-8bit@0 { 85 mmc0_8bit_pins_a: mmc0-8bit@0 {
86 reg = <0>; 86 reg = <0>;
87 fsl,pinmux-ids = < 87 fsl,pinmux-ids = <
88 0x2000 0x2010 0x2020 0x2030 88 MX28_PAD_SSP0_DATA0__SSP0_D0
89 0x2040 0x2050 0x2060 0x2070 89 MX28_PAD_SSP0_DATA1__SSP0_D1
90 0x2080 0x2090 0x20a0>; 90 MX28_PAD_SSP0_DATA2__SSP0_D2
91 fsl,drive-strength = <1>; 91 MX28_PAD_SSP0_DATA3__SSP0_D3
92 fsl,voltage = <1>; 92 MX28_PAD_SSP0_DATA4__SSP0_D4
93 fsl,pull-up = <1>; 93 MX28_PAD_SSP0_DATA5__SSP0_D5
94 MX28_PAD_SSP0_DATA6__SSP0_D6
95 MX28_PAD_SSP0_DATA7__SSP0_D7
96 MX28_PAD_SSP0_CMD__SSP0_CMD
97 MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT
98 MX28_PAD_SSP0_SCK__SSP0_SCK
99 >;
100 fsl,drive-strength = <MXS_DRIVE_4mA>;
101 fsl,voltage = <MXS_VOLTAGE_HIGH>;
102 fsl,pull-up = <MXS_PULL_ENABLE>;
94 }; 103 };
95 104
96 mmc_cd_cfg: mmc-cd-cfg { 105 mmc_cd_cfg: mmc-cd-cfg {
97 fsl,pinmux-ids = <0x2090>; 106 fsl,pinmux-ids = <MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT>;
98 fsl,pull-up = <0>; 107 fsl,pull-up = <MXS_PULL_DISABLE>;
99 }; 108 };
100 109
101 mmc_sck_cfg: mmc-sck-cfg { 110 mmc_sck_cfg: mmc-sck-cfg {
102 fsl,pinmux-ids = <0x20a0>; 111 fsl,pinmux-ids = <MX28_PAD_SSP0_SCK__SSP0_SCK>;
103 fsl,drive-strength = <2>; 112 fsl,drive-strength = <MXS_DRIVE_12mA>;
104 fsl,pull-up = <0>; 113 fsl,pull-up = <MXS_PULL_DISABLE>;
105 }; 114 };
106}; 115};
107 116
@@ -112,811 +121,7 @@ adjusting the configuration for pins card-detection and clock from what group
112node mmc0-8bit defines. Only the configuration properties to be adjusted need 121node mmc0-8bit defines. Only the configuration properties to be adjusted need
113to be listed in the config nodes. 122to be listed in the config nodes.
114 123
115Valid values for i.MX28 pinmux-id: 124Valid values for i.MX28/i.MX23 pinmux-id are defined in
116 125arch/arm/boot/dts/imx28-pinfunc.h and arch/arm/boot/dts/imx23-pinfunc.h.
117pinmux id 126The definitions for the padconfig properties can be found in
118------ -- 127arch/arm/boot/dts/mxs-pinfunc.h.
119MX28_PAD_GPMI_D00__GPMI_D0 0x0000
120MX28_PAD_GPMI_D01__GPMI_D1 0x0010
121MX28_PAD_GPMI_D02__GPMI_D2 0x0020
122MX28_PAD_GPMI_D03__GPMI_D3 0x0030
123MX28_PAD_GPMI_D04__GPMI_D4 0x0040
124MX28_PAD_GPMI_D05__GPMI_D5 0x0050
125MX28_PAD_GPMI_D06__GPMI_D6 0x0060
126MX28_PAD_GPMI_D07__GPMI_D7 0x0070
127MX28_PAD_GPMI_CE0N__GPMI_CE0N 0x0100
128MX28_PAD_GPMI_CE1N__GPMI_CE1N 0x0110
129MX28_PAD_GPMI_CE2N__GPMI_CE2N 0x0120
130MX28_PAD_GPMI_CE3N__GPMI_CE3N 0x0130
131MX28_PAD_GPMI_RDY0__GPMI_READY0 0x0140
132MX28_PAD_GPMI_RDY1__GPMI_READY1 0x0150
133MX28_PAD_GPMI_RDY2__GPMI_READY2 0x0160
134MX28_PAD_GPMI_RDY3__GPMI_READY3 0x0170
135MX28_PAD_GPMI_RDN__GPMI_RDN 0x0180
136MX28_PAD_GPMI_WRN__GPMI_WRN 0x0190
137MX28_PAD_GPMI_ALE__GPMI_ALE 0x01a0
138MX28_PAD_GPMI_CLE__GPMI_CLE 0x01b0
139MX28_PAD_GPMI_RESETN__GPMI_RESETN 0x01c0
140MX28_PAD_LCD_D00__LCD_D0 0x1000
141MX28_PAD_LCD_D01__LCD_D1 0x1010
142MX28_PAD_LCD_D02__LCD_D2 0x1020
143MX28_PAD_LCD_D03__LCD_D3 0x1030
144MX28_PAD_LCD_D04__LCD_D4 0x1040
145MX28_PAD_LCD_D05__LCD_D5 0x1050
146MX28_PAD_LCD_D06__LCD_D6 0x1060
147MX28_PAD_LCD_D07__LCD_D7 0x1070
148MX28_PAD_LCD_D08__LCD_D8 0x1080
149MX28_PAD_LCD_D09__LCD_D9 0x1090
150MX28_PAD_LCD_D10__LCD_D10 0x10a0
151MX28_PAD_LCD_D11__LCD_D11 0x10b0
152MX28_PAD_LCD_D12__LCD_D12 0x10c0
153MX28_PAD_LCD_D13__LCD_D13 0x10d0
154MX28_PAD_LCD_D14__LCD_D14 0x10e0
155MX28_PAD_LCD_D15__LCD_D15 0x10f0
156MX28_PAD_LCD_D16__LCD_D16 0x1100
157MX28_PAD_LCD_D17__LCD_D17 0x1110
158MX28_PAD_LCD_D18__LCD_D18 0x1120
159MX28_PAD_LCD_D19__LCD_D19 0x1130
160MX28_PAD_LCD_D20__LCD_D20 0x1140
161MX28_PAD_LCD_D21__LCD_D21 0x1150
162MX28_PAD_LCD_D22__LCD_D22 0x1160
163MX28_PAD_LCD_D23__LCD_D23 0x1170
164MX28_PAD_LCD_RD_E__LCD_RD_E 0x1180
165MX28_PAD_LCD_WR_RWN__LCD_WR_RWN 0x1190
166MX28_PAD_LCD_RS__LCD_RS 0x11a0
167MX28_PAD_LCD_CS__LCD_CS 0x11b0
168MX28_PAD_LCD_VSYNC__LCD_VSYNC 0x11c0
169MX28_PAD_LCD_HSYNC__LCD_HSYNC 0x11d0
170MX28_PAD_LCD_DOTCLK__LCD_DOTCLK 0x11e0
171MX28_PAD_LCD_ENABLE__LCD_ENABLE 0x11f0
172MX28_PAD_SSP0_DATA0__SSP0_D0 0x2000
173MX28_PAD_SSP0_DATA1__SSP0_D1 0x2010
174MX28_PAD_SSP0_DATA2__SSP0_D2 0x2020
175MX28_PAD_SSP0_DATA3__SSP0_D3 0x2030
176MX28_PAD_SSP0_DATA4__SSP0_D4 0x2040
177MX28_PAD_SSP0_DATA5__SSP0_D5 0x2050
178MX28_PAD_SSP0_DATA6__SSP0_D6 0x2060
179MX28_PAD_SSP0_DATA7__SSP0_D7 0x2070
180MX28_PAD_SSP0_CMD__SSP0_CMD 0x2080
181MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT 0x2090
182MX28_PAD_SSP0_SCK__SSP0_SCK 0x20a0
183MX28_PAD_SSP1_SCK__SSP1_SCK 0x20c0
184MX28_PAD_SSP1_CMD__SSP1_CMD 0x20d0
185MX28_PAD_SSP1_DATA0__SSP1_D0 0x20e0
186MX28_PAD_SSP1_DATA3__SSP1_D3 0x20f0
187MX28_PAD_SSP2_SCK__SSP2_SCK 0x2100
188MX28_PAD_SSP2_MOSI__SSP2_CMD 0x2110
189MX28_PAD_SSP2_MISO__SSP2_D0 0x2120
190MX28_PAD_SSP2_SS0__SSP2_D3 0x2130
191MX28_PAD_SSP2_SS1__SSP2_D4 0x2140
192MX28_PAD_SSP2_SS2__SSP2_D5 0x2150
193MX28_PAD_SSP3_SCK__SSP3_SCK 0x2180
194MX28_PAD_SSP3_MOSI__SSP3_CMD 0x2190
195MX28_PAD_SSP3_MISO__SSP3_D0 0x21a0
196MX28_PAD_SSP3_SS0__SSP3_D3 0x21b0
197MX28_PAD_AUART0_RX__AUART0_RX 0x3000
198MX28_PAD_AUART0_TX__AUART0_TX 0x3010
199MX28_PAD_AUART0_CTS__AUART0_CTS 0x3020
200MX28_PAD_AUART0_RTS__AUART0_RTS 0x3030
201MX28_PAD_AUART1_RX__AUART1_RX 0x3040
202MX28_PAD_AUART1_TX__AUART1_TX 0x3050
203MX28_PAD_AUART1_CTS__AUART1_CTS 0x3060
204MX28_PAD_AUART1_RTS__AUART1_RTS 0x3070
205MX28_PAD_AUART2_RX__AUART2_RX 0x3080
206MX28_PAD_AUART2_TX__AUART2_TX 0x3090
207MX28_PAD_AUART2_CTS__AUART2_CTS 0x30a0
208MX28_PAD_AUART2_RTS__AUART2_RTS 0x30b0
209MX28_PAD_AUART3_RX__AUART3_RX 0x30c0
210MX28_PAD_AUART3_TX__AUART3_TX 0x30d0
211MX28_PAD_AUART3_CTS__AUART3_CTS 0x30e0
212MX28_PAD_AUART3_RTS__AUART3_RTS 0x30f0
213MX28_PAD_PWM0__PWM_0 0x3100
214MX28_PAD_PWM1__PWM_1 0x3110
215MX28_PAD_PWM2__PWM_2 0x3120
216MX28_PAD_SAIF0_MCLK__SAIF0_MCLK 0x3140
217MX28_PAD_SAIF0_LRCLK__SAIF0_LRCLK 0x3150
218MX28_PAD_SAIF0_BITCLK__SAIF0_BITCLK 0x3160
219MX28_PAD_SAIF0_SDATA0__SAIF0_SDATA0 0x3170
220MX28_PAD_I2C0_SCL__I2C0_SCL 0x3180
221MX28_PAD_I2C0_SDA__I2C0_SDA 0x3190
222MX28_PAD_SAIF1_SDATA0__SAIF1_SDATA0 0x31a0
223MX28_PAD_SPDIF__SPDIF_TX 0x31b0
224MX28_PAD_PWM3__PWM_3 0x31c0
225MX28_PAD_PWM4__PWM_4 0x31d0
226MX28_PAD_LCD_RESET__LCD_RESET 0x31e0
227MX28_PAD_ENET0_MDC__ENET0_MDC 0x4000
228MX28_PAD_ENET0_MDIO__ENET0_MDIO 0x4010
229MX28_PAD_ENET0_RX_EN__ENET0_RX_EN 0x4020
230MX28_PAD_ENET0_RXD0__ENET0_RXD0 0x4030
231MX28_PAD_ENET0_RXD1__ENET0_RXD1 0x4040
232MX28_PAD_ENET0_TX_CLK__ENET0_TX_CLK 0x4050
233MX28_PAD_ENET0_TX_EN__ENET0_TX_EN 0x4060
234MX28_PAD_ENET0_TXD0__ENET0_TXD0 0x4070
235MX28_PAD_ENET0_TXD1__ENET0_TXD1 0x4080
236MX28_PAD_ENET0_RXD2__ENET0_RXD2 0x4090
237MX28_PAD_ENET0_RXD3__ENET0_RXD3 0x40a0
238MX28_PAD_ENET0_TXD2__ENET0_TXD2 0x40b0
239MX28_PAD_ENET0_TXD3__ENET0_TXD3 0x40c0
240MX28_PAD_ENET0_RX_CLK__ENET0_RX_CLK 0x40d0
241MX28_PAD_ENET0_COL__ENET0_COL 0x40e0
242MX28_PAD_ENET0_CRS__ENET0_CRS 0x40f0
243MX28_PAD_ENET_CLK__CLKCTRL_ENET 0x4100
244MX28_PAD_JTAG_RTCK__JTAG_RTCK 0x4140
245MX28_PAD_EMI_D00__EMI_DATA0 0x5000
246MX28_PAD_EMI_D01__EMI_DATA1 0x5010
247MX28_PAD_EMI_D02__EMI_DATA2 0x5020
248MX28_PAD_EMI_D03__EMI_DATA3 0x5030
249MX28_PAD_EMI_D04__EMI_DATA4 0x5040
250MX28_PAD_EMI_D05__EMI_DATA5 0x5050
251MX28_PAD_EMI_D06__EMI_DATA6 0x5060
252MX28_PAD_EMI_D07__EMI_DATA7 0x5070
253MX28_PAD_EMI_D08__EMI_DATA8 0x5080
254MX28_PAD_EMI_D09__EMI_DATA9 0x5090
255MX28_PAD_EMI_D10__EMI_DATA10 0x50a0
256MX28_PAD_EMI_D11__EMI_DATA11 0x50b0
257MX28_PAD_EMI_D12__EMI_DATA12 0x50c0
258MX28_PAD_EMI_D13__EMI_DATA13 0x50d0
259MX28_PAD_EMI_D14__EMI_DATA14 0x50e0
260MX28_PAD_EMI_D15__EMI_DATA15 0x50f0
261MX28_PAD_EMI_ODT0__EMI_ODT0 0x5100
262MX28_PAD_EMI_DQM0__EMI_DQM0 0x5110
263MX28_PAD_EMI_ODT1__EMI_ODT1 0x5120
264MX28_PAD_EMI_DQM1__EMI_DQM1 0x5130
265MX28_PAD_EMI_DDR_OPEN_FB__EMI_DDR_OPEN_FEEDBACK 0x5140
266MX28_PAD_EMI_CLK__EMI_CLK 0x5150
267MX28_PAD_EMI_DQS0__EMI_DQS0 0x5160
268MX28_PAD_EMI_DQS1__EMI_DQS1 0x5170
269MX28_PAD_EMI_DDR_OPEN__EMI_DDR_OPEN 0x51a0
270MX28_PAD_EMI_A00__EMI_ADDR0 0x6000
271MX28_PAD_EMI_A01__EMI_ADDR1 0x6010
272MX28_PAD_EMI_A02__EMI_ADDR2 0x6020
273MX28_PAD_EMI_A03__EMI_ADDR3 0x6030
274MX28_PAD_EMI_A04__EMI_ADDR4 0x6040
275MX28_PAD_EMI_A05__EMI_ADDR5 0x6050
276MX28_PAD_EMI_A06__EMI_ADDR6 0x6060
277MX28_PAD_EMI_A07__EMI_ADDR7 0x6070
278MX28_PAD_EMI_A08__EMI_ADDR8 0x6080
279MX28_PAD_EMI_A09__EMI_ADDR9 0x6090
280MX28_PAD_EMI_A10__EMI_ADDR10 0x60a0
281MX28_PAD_EMI_A11__EMI_ADDR11 0x60b0
282MX28_PAD_EMI_A12__EMI_ADDR12 0x60c0
283MX28_PAD_EMI_A13__EMI_ADDR13 0x60d0
284MX28_PAD_EMI_A14__EMI_ADDR14 0x60e0
285MX28_PAD_EMI_BA0__EMI_BA0 0x6100
286MX28_PAD_EMI_BA1__EMI_BA1 0x6110
287MX28_PAD_EMI_BA2__EMI_BA2 0x6120
288MX28_PAD_EMI_CASN__EMI_CASN 0x6130
289MX28_PAD_EMI_RASN__EMI_RASN 0x6140
290MX28_PAD_EMI_WEN__EMI_WEN 0x6150
291MX28_PAD_EMI_CE0N__EMI_CE0N 0x6160
292MX28_PAD_EMI_CE1N__EMI_CE1N 0x6170
293MX28_PAD_EMI_CKE__EMI_CKE 0x6180
294MX28_PAD_GPMI_D00__SSP1_D0 0x0001
295MX28_PAD_GPMI_D01__SSP1_D1 0x0011
296MX28_PAD_GPMI_D02__SSP1_D2 0x0021
297MX28_PAD_GPMI_D03__SSP1_D3 0x0031
298MX28_PAD_GPMI_D04__SSP1_D4 0x0041
299MX28_PAD_GPMI_D05__SSP1_D5 0x0051
300MX28_PAD_GPMI_D06__SSP1_D6 0x0061
301MX28_PAD_GPMI_D07__SSP1_D7 0x0071
302MX28_PAD_GPMI_CE0N__SSP3_D0 0x0101
303MX28_PAD_GPMI_CE1N__SSP3_D3 0x0111
304MX28_PAD_GPMI_CE2N__CAN1_TX 0x0121
305MX28_PAD_GPMI_CE3N__CAN1_RX 0x0131
306MX28_PAD_GPMI_RDY0__SSP1_CARD_DETECT 0x0141
307MX28_PAD_GPMI_RDY1__SSP1_CMD 0x0151
308MX28_PAD_GPMI_RDY2__CAN0_TX 0x0161
309MX28_PAD_GPMI_RDY3__CAN0_RX 0x0171
310MX28_PAD_GPMI_RDN__SSP3_SCK 0x0181
311MX28_PAD_GPMI_WRN__SSP1_SCK 0x0191
312MX28_PAD_GPMI_ALE__SSP3_D1 0x01a1
313MX28_PAD_GPMI_CLE__SSP3_D2 0x01b1
314MX28_PAD_GPMI_RESETN__SSP3_CMD 0x01c1
315MX28_PAD_LCD_D03__ETM_DA8 0x1031
316MX28_PAD_LCD_D04__ETM_DA9 0x1041
317MX28_PAD_LCD_D08__ETM_DA3 0x1081
318MX28_PAD_LCD_D09__ETM_DA4 0x1091
319MX28_PAD_LCD_D20__ENET1_1588_EVENT2_OUT 0x1141
320MX28_PAD_LCD_D21__ENET1_1588_EVENT2_IN 0x1151
321MX28_PAD_LCD_D22__ENET1_1588_EVENT3_OUT 0x1161
322MX28_PAD_LCD_D23__ENET1_1588_EVENT3_IN 0x1171
323MX28_PAD_LCD_RD_E__LCD_VSYNC 0x1181
324MX28_PAD_LCD_WR_RWN__LCD_HSYNC 0x1191
325MX28_PAD_LCD_RS__LCD_DOTCLK 0x11a1
326MX28_PAD_LCD_CS__LCD_ENABLE 0x11b1
327MX28_PAD_LCD_VSYNC__SAIF1_SDATA0 0x11c1
328MX28_PAD_LCD_HSYNC__SAIF1_SDATA1 0x11d1
329MX28_PAD_LCD_DOTCLK__SAIF1_MCLK 0x11e1
330MX28_PAD_SSP0_DATA4__SSP2_D0 0x2041
331MX28_PAD_SSP0_DATA5__SSP2_D3 0x2051
332MX28_PAD_SSP0_DATA6__SSP2_CMD 0x2061
333MX28_PAD_SSP0_DATA7__SSP2_SCK 0x2071
334MX28_PAD_SSP1_SCK__SSP2_D1 0x20c1
335MX28_PAD_SSP1_CMD__SSP2_D2 0x20d1
336MX28_PAD_SSP1_DATA0__SSP2_D6 0x20e1
337MX28_PAD_SSP1_DATA3__SSP2_D7 0x20f1
338MX28_PAD_SSP2_SCK__AUART2_RX 0x2101
339MX28_PAD_SSP2_MOSI__AUART2_TX 0x2111
340MX28_PAD_SSP2_MISO__AUART3_RX 0x2121
341MX28_PAD_SSP2_SS0__AUART3_TX 0x2131
342MX28_PAD_SSP2_SS1__SSP2_D1 0x2141
343MX28_PAD_SSP2_SS2__SSP2_D2 0x2151
344MX28_PAD_SSP3_SCK__AUART4_TX 0x2181
345MX28_PAD_SSP3_MOSI__AUART4_RX 0x2191
346MX28_PAD_SSP3_MISO__AUART4_RTS 0x21a1
347MX28_PAD_SSP3_SS0__AUART4_CTS 0x21b1
348MX28_PAD_AUART0_RX__I2C0_SCL 0x3001
349MX28_PAD_AUART0_TX__I2C0_SDA 0x3011
350MX28_PAD_AUART0_CTS__AUART4_RX 0x3021
351MX28_PAD_AUART0_RTS__AUART4_TX 0x3031
352MX28_PAD_AUART1_RX__SSP2_CARD_DETECT 0x3041
353MX28_PAD_AUART1_TX__SSP3_CARD_DETECT 0x3051
354MX28_PAD_AUART1_CTS__USB0_OVERCURRENT 0x3061
355MX28_PAD_AUART1_RTS__USB0_ID 0x3071
356MX28_PAD_AUART2_RX__SSP3_D1 0x3081
357MX28_PAD_AUART2_TX__SSP3_D2 0x3091
358MX28_PAD_AUART2_CTS__I2C1_SCL 0x30a1
359MX28_PAD_AUART2_RTS__I2C1_SDA 0x30b1
360MX28_PAD_AUART3_RX__CAN0_TX 0x30c1
361MX28_PAD_AUART3_TX__CAN0_RX 0x30d1
362MX28_PAD_AUART3_CTS__CAN1_TX 0x30e1
363MX28_PAD_AUART3_RTS__CAN1_RX 0x30f1
364MX28_PAD_PWM0__I2C1_SCL 0x3101
365MX28_PAD_PWM1__I2C1_SDA 0x3111
366MX28_PAD_PWM2__USB0_ID 0x3121
367MX28_PAD_SAIF0_MCLK__PWM_3 0x3141
368MX28_PAD_SAIF0_LRCLK__PWM_4 0x3151
369MX28_PAD_SAIF0_BITCLK__PWM_5 0x3161
370MX28_PAD_SAIF0_SDATA0__PWM_6 0x3171
371MX28_PAD_I2C0_SCL__TIMROT_ROTARYA 0x3181
372MX28_PAD_I2C0_SDA__TIMROT_ROTARYB 0x3191
373MX28_PAD_SAIF1_SDATA0__PWM_7 0x31a1
374MX28_PAD_LCD_RESET__LCD_VSYNC 0x31e1
375MX28_PAD_ENET0_MDC__GPMI_CE4N 0x4001
376MX28_PAD_ENET0_MDIO__GPMI_CE5N 0x4011
377MX28_PAD_ENET0_RX_EN__GPMI_CE6N 0x4021
378MX28_PAD_ENET0_RXD0__GPMI_CE7N 0x4031
379MX28_PAD_ENET0_RXD1__GPMI_READY4 0x4041
380MX28_PAD_ENET0_TX_CLK__HSADC_TRIGGER 0x4051
381MX28_PAD_ENET0_TX_EN__GPMI_READY5 0x4061
382MX28_PAD_ENET0_TXD0__GPMI_READY6 0x4071
383MX28_PAD_ENET0_TXD1__GPMI_READY7 0x4081
384MX28_PAD_ENET0_RXD2__ENET1_RXD0 0x4091
385MX28_PAD_ENET0_RXD3__ENET1_RXD1 0x40a1
386MX28_PAD_ENET0_TXD2__ENET1_TXD0 0x40b1
387MX28_PAD_ENET0_TXD3__ENET1_TXD1 0x40c1
388MX28_PAD_ENET0_RX_CLK__ENET0_RX_ER 0x40d1
389MX28_PAD_ENET0_COL__ENET1_TX_EN 0x40e1
390MX28_PAD_ENET0_CRS__ENET1_RX_EN 0x40f1
391MX28_PAD_GPMI_CE2N__ENET0_RX_ER 0x0122
392MX28_PAD_GPMI_CE3N__SAIF1_MCLK 0x0132
393MX28_PAD_GPMI_RDY0__USB0_ID 0x0142
394MX28_PAD_GPMI_RDY2__ENET0_TX_ER 0x0162
395MX28_PAD_GPMI_RDY3__HSADC_TRIGGER 0x0172
396MX28_PAD_GPMI_ALE__SSP3_D4 0x01a2
397MX28_PAD_GPMI_CLE__SSP3_D5 0x01b2
398MX28_PAD_LCD_D00__ETM_DA0 0x1002
399MX28_PAD_LCD_D01__ETM_DA1 0x1012
400MX28_PAD_LCD_D02__ETM_DA2 0x1022
401MX28_PAD_LCD_D03__ETM_DA3 0x1032
402MX28_PAD_LCD_D04__ETM_DA4 0x1042
403MX28_PAD_LCD_D05__ETM_DA5 0x1052
404MX28_PAD_LCD_D06__ETM_DA6 0x1062
405MX28_PAD_LCD_D07__ETM_DA7 0x1072
406MX28_PAD_LCD_D08__ETM_DA8 0x1082
407MX28_PAD_LCD_D09__ETM_DA9 0x1092
408MX28_PAD_LCD_D10__ETM_DA10 0x10a2
409MX28_PAD_LCD_D11__ETM_DA11 0x10b2
410MX28_PAD_LCD_D12__ETM_DA12 0x10c2
411MX28_PAD_LCD_D13__ETM_DA13 0x10d2
412MX28_PAD_LCD_D14__ETM_DA14 0x10e2
413MX28_PAD_LCD_D15__ETM_DA15 0x10f2
414MX28_PAD_LCD_D16__ETM_DA7 0x1102
415MX28_PAD_LCD_D17__ETM_DA6 0x1112
416MX28_PAD_LCD_D18__ETM_DA5 0x1122
417MX28_PAD_LCD_D19__ETM_DA4 0x1132
418MX28_PAD_LCD_D20__ETM_DA3 0x1142
419MX28_PAD_LCD_D21__ETM_DA2 0x1152
420MX28_PAD_LCD_D22__ETM_DA1 0x1162
421MX28_PAD_LCD_D23__ETM_DA0 0x1172
422MX28_PAD_LCD_RD_E__ETM_TCTL 0x1182
423MX28_PAD_LCD_WR_RWN__ETM_TCLK 0x1192
424MX28_PAD_LCD_HSYNC__ETM_TCTL 0x11d2
425MX28_PAD_LCD_DOTCLK__ETM_TCLK 0x11e2
426MX28_PAD_SSP1_SCK__ENET0_1588_EVENT2_OUT 0x20c2
427MX28_PAD_SSP1_CMD__ENET0_1588_EVENT2_IN 0x20d2
428MX28_PAD_SSP1_DATA0__ENET0_1588_EVENT3_OUT 0x20e2
429MX28_PAD_SSP1_DATA3__ENET0_1588_EVENT3_IN 0x20f2
430MX28_PAD_SSP2_SCK__SAIF0_SDATA1 0x2102
431MX28_PAD_SSP2_MOSI__SAIF0_SDATA2 0x2112
432MX28_PAD_SSP2_MISO__SAIF1_SDATA1 0x2122
433MX28_PAD_SSP2_SS0__SAIF1_SDATA2 0x2132
434MX28_PAD_SSP2_SS1__USB1_OVERCURRENT 0x2142
435MX28_PAD_SSP2_SS2__USB0_OVERCURRENT 0x2152
436MX28_PAD_SSP3_SCK__ENET1_1588_EVENT0_OUT 0x2182
437MX28_PAD_SSP3_MOSI__ENET1_1588_EVENT0_IN 0x2192
438MX28_PAD_SSP3_MISO__ENET1_1588_EVENT1_OUT 0x21a2
439MX28_PAD_SSP3_SS0__ENET1_1588_EVENT1_IN 0x21b2
440MX28_PAD_AUART0_RX__DUART_CTS 0x3002
441MX28_PAD_AUART0_TX__DUART_RTS 0x3012
442MX28_PAD_AUART0_CTS__DUART_RX 0x3022
443MX28_PAD_AUART0_RTS__DUART_TX 0x3032
444MX28_PAD_AUART1_RX__PWM_0 0x3042
445MX28_PAD_AUART1_TX__PWM_1 0x3052
446MX28_PAD_AUART1_CTS__TIMROT_ROTARYA 0x3062
447MX28_PAD_AUART1_RTS__TIMROT_ROTARYB 0x3072
448MX28_PAD_AUART2_RX__SSP3_D4 0x3082
449MX28_PAD_AUART2_TX__SSP3_D5 0x3092
450MX28_PAD_AUART2_CTS__SAIF1_BITCLK 0x30a2
451MX28_PAD_AUART2_RTS__SAIF1_LRCLK 0x30b2
452MX28_PAD_AUART3_RX__ENET0_1588_EVENT0_OUT 0x30c2
453MX28_PAD_AUART3_TX__ENET0_1588_EVENT0_IN 0x30d2
454MX28_PAD_AUART3_CTS__ENET0_1588_EVENT1_OUT 0x30e2
455MX28_PAD_AUART3_RTS__ENET0_1588_EVENT1_IN 0x30f2
456MX28_PAD_PWM0__DUART_RX 0x3102
457MX28_PAD_PWM1__DUART_TX 0x3112
458MX28_PAD_PWM2__USB1_OVERCURRENT 0x3122
459MX28_PAD_SAIF0_MCLK__AUART4_CTS 0x3142
460MX28_PAD_SAIF0_LRCLK__AUART4_RTS 0x3152
461MX28_PAD_SAIF0_BITCLK__AUART4_RX 0x3162
462MX28_PAD_SAIF0_SDATA0__AUART4_TX 0x3172
463MX28_PAD_I2C0_SCL__DUART_RX 0x3182
464MX28_PAD_I2C0_SDA__DUART_TX 0x3192
465MX28_PAD_SAIF1_SDATA0__SAIF0_SDATA1 0x31a2
466MX28_PAD_SPDIF__ENET1_RX_ER 0x31b2
467MX28_PAD_ENET0_MDC__SAIF0_SDATA1 0x4002
468MX28_PAD_ENET0_MDIO__SAIF0_SDATA2 0x4012
469MX28_PAD_ENET0_RX_EN__SAIF1_SDATA1 0x4022
470MX28_PAD_ENET0_RXD0__SAIF1_SDATA2 0x4032
471MX28_PAD_ENET0_TX_CLK__ENET0_1588_EVENT2_OUT 0x4052
472MX28_PAD_ENET0_RXD2__ENET0_1588_EVENT0_OUT 0x4092
473MX28_PAD_ENET0_RXD3__ENET0_1588_EVENT0_IN 0x40a2
474MX28_PAD_ENET0_TXD2__ENET0_1588_EVENT1_OUT 0x40b2
475MX28_PAD_ENET0_TXD3__ENET0_1588_EVENT1_IN 0x40c2
476MX28_PAD_ENET0_RX_CLK__ENET0_1588_EVENT2_IN 0x40d2
477MX28_PAD_ENET0_COL__ENET0_1588_EVENT3_OUT 0x40e2
478MX28_PAD_ENET0_CRS__ENET0_1588_EVENT3_IN 0x40f2
479MX28_PAD_GPMI_D00__GPIO_0_0 0x0003
480MX28_PAD_GPMI_D01__GPIO_0_1 0x0013
481MX28_PAD_GPMI_D02__GPIO_0_2 0x0023
482MX28_PAD_GPMI_D03__GPIO_0_3 0x0033
483MX28_PAD_GPMI_D04__GPIO_0_4 0x0043
484MX28_PAD_GPMI_D05__GPIO_0_5 0x0053
485MX28_PAD_GPMI_D06__GPIO_0_6 0x0063
486MX28_PAD_GPMI_D07__GPIO_0_7 0x0073
487MX28_PAD_GPMI_CE0N__GPIO_0_16 0x0103
488MX28_PAD_GPMI_CE1N__GPIO_0_17 0x0113
489MX28_PAD_GPMI_CE2N__GPIO_0_18 0x0123
490MX28_PAD_GPMI_CE3N__GPIO_0_19 0x0133
491MX28_PAD_GPMI_RDY0__GPIO_0_20 0x0143
492MX28_PAD_GPMI_RDY1__GPIO_0_21 0x0153
493MX28_PAD_GPMI_RDY2__GPIO_0_22 0x0163
494MX28_PAD_GPMI_RDY3__GPIO_0_23 0x0173
495MX28_PAD_GPMI_RDN__GPIO_0_24 0x0183
496MX28_PAD_GPMI_WRN__GPIO_0_25 0x0193
497MX28_PAD_GPMI_ALE__GPIO_0_26 0x01a3
498MX28_PAD_GPMI_CLE__GPIO_0_27 0x01b3
499MX28_PAD_GPMI_RESETN__GPIO_0_28 0x01c3
500MX28_PAD_LCD_D00__GPIO_1_0 0x1003
501MX28_PAD_LCD_D01__GPIO_1_1 0x1013
502MX28_PAD_LCD_D02__GPIO_1_2 0x1023
503MX28_PAD_LCD_D03__GPIO_1_3 0x1033
504MX28_PAD_LCD_D04__GPIO_1_4 0x1043
505MX28_PAD_LCD_D05__GPIO_1_5 0x1053
506MX28_PAD_LCD_D06__GPIO_1_6 0x1063
507MX28_PAD_LCD_D07__GPIO_1_7 0x1073
508MX28_PAD_LCD_D08__GPIO_1_8 0x1083
509MX28_PAD_LCD_D09__GPIO_1_9 0x1093
510MX28_PAD_LCD_D10__GPIO_1_10 0x10a3
511MX28_PAD_LCD_D11__GPIO_1_11 0x10b3
512MX28_PAD_LCD_D12__GPIO_1_12 0x10c3
513MX28_PAD_LCD_D13__GPIO_1_13 0x10d3
514MX28_PAD_LCD_D14__GPIO_1_14 0x10e3
515MX28_PAD_LCD_D15__GPIO_1_15 0x10f3
516MX28_PAD_LCD_D16__GPIO_1_16 0x1103
517MX28_PAD_LCD_D17__GPIO_1_17 0x1113
518MX28_PAD_LCD_D18__GPIO_1_18 0x1123
519MX28_PAD_LCD_D19__GPIO_1_19 0x1133
520MX28_PAD_LCD_D20__GPIO_1_20 0x1143
521MX28_PAD_LCD_D21__GPIO_1_21 0x1153
522MX28_PAD_LCD_D22__GPIO_1_22 0x1163
523MX28_PAD_LCD_D23__GPIO_1_23 0x1173
524MX28_PAD_LCD_RD_E__GPIO_1_24 0x1183
525MX28_PAD_LCD_WR_RWN__GPIO_1_25 0x1193
526MX28_PAD_LCD_RS__GPIO_1_26 0x11a3
527MX28_PAD_LCD_CS__GPIO_1_27 0x11b3
528MX28_PAD_LCD_VSYNC__GPIO_1_28 0x11c3
529MX28_PAD_LCD_HSYNC__GPIO_1_29 0x11d3
530MX28_PAD_LCD_DOTCLK__GPIO_1_30 0x11e3
531MX28_PAD_LCD_ENABLE__GPIO_1_31 0x11f3
532MX28_PAD_SSP0_DATA0__GPIO_2_0 0x2003
533MX28_PAD_SSP0_DATA1__GPIO_2_1 0x2013
534MX28_PAD_SSP0_DATA2__GPIO_2_2 0x2023
535MX28_PAD_SSP0_DATA3__GPIO_2_3 0x2033
536MX28_PAD_SSP0_DATA4__GPIO_2_4 0x2043
537MX28_PAD_SSP0_DATA5__GPIO_2_5 0x2053
538MX28_PAD_SSP0_DATA6__GPIO_2_6 0x2063
539MX28_PAD_SSP0_DATA7__GPIO_2_7 0x2073
540MX28_PAD_SSP0_CMD__GPIO_2_8 0x2083
541MX28_PAD_SSP0_DETECT__GPIO_2_9 0x2093
542MX28_PAD_SSP0_SCK__GPIO_2_10 0x20a3
543MX28_PAD_SSP1_SCK__GPIO_2_12 0x20c3
544MX28_PAD_SSP1_CMD__GPIO_2_13 0x20d3
545MX28_PAD_SSP1_DATA0__GPIO_2_14 0x20e3
546MX28_PAD_SSP1_DATA3__GPIO_2_15 0x20f3
547MX28_PAD_SSP2_SCK__GPIO_2_16 0x2103
548MX28_PAD_SSP2_MOSI__GPIO_2_17 0x2113
549MX28_PAD_SSP2_MISO__GPIO_2_18 0x2123
550MX28_PAD_SSP2_SS0__GPIO_2_19 0x2133
551MX28_PAD_SSP2_SS1__GPIO_2_20 0x2143
552MX28_PAD_SSP2_SS2__GPIO_2_21 0x2153
553MX28_PAD_SSP3_SCK__GPIO_2_24 0x2183
554MX28_PAD_SSP3_MOSI__GPIO_2_25 0x2193
555MX28_PAD_SSP3_MISO__GPIO_2_26 0x21a3
556MX28_PAD_SSP3_SS0__GPIO_2_27 0x21b3
557MX28_PAD_AUART0_RX__GPIO_3_0 0x3003
558MX28_PAD_AUART0_TX__GPIO_3_1 0x3013
559MX28_PAD_AUART0_CTS__GPIO_3_2 0x3023
560MX28_PAD_AUART0_RTS__GPIO_3_3 0x3033
561MX28_PAD_AUART1_RX__GPIO_3_4 0x3043
562MX28_PAD_AUART1_TX__GPIO_3_5 0x3053
563MX28_PAD_AUART1_CTS__GPIO_3_6 0x3063
564MX28_PAD_AUART1_RTS__GPIO_3_7 0x3073
565MX28_PAD_AUART2_RX__GPIO_3_8 0x3083
566MX28_PAD_AUART2_TX__GPIO_3_9 0x3093
567MX28_PAD_AUART2_CTS__GPIO_3_10 0x30a3
568MX28_PAD_AUART2_RTS__GPIO_3_11 0x30b3
569MX28_PAD_AUART3_RX__GPIO_3_12 0x30c3
570MX28_PAD_AUART3_TX__GPIO_3_13 0x30d3
571MX28_PAD_AUART3_CTS__GPIO_3_14 0x30e3
572MX28_PAD_AUART3_RTS__GPIO_3_15 0x30f3
573MX28_PAD_PWM0__GPIO_3_16 0x3103
574MX28_PAD_PWM1__GPIO_3_17 0x3113
575MX28_PAD_PWM2__GPIO_3_18 0x3123
576MX28_PAD_SAIF0_MCLK__GPIO_3_20 0x3143
577MX28_PAD_SAIF0_LRCLK__GPIO_3_21 0x3153
578MX28_PAD_SAIF0_BITCLK__GPIO_3_22 0x3163
579MX28_PAD_SAIF0_SDATA0__GPIO_3_23 0x3173
580MX28_PAD_I2C0_SCL__GPIO_3_24 0x3183
581MX28_PAD_I2C0_SDA__GPIO_3_25 0x3193
582MX28_PAD_SAIF1_SDATA0__GPIO_3_26 0x31a3
583MX28_PAD_SPDIF__GPIO_3_27 0x31b3
584MX28_PAD_PWM3__GPIO_3_28 0x31c3
585MX28_PAD_PWM4__GPIO_3_29 0x31d3
586MX28_PAD_LCD_RESET__GPIO_3_30 0x31e3
587MX28_PAD_ENET0_MDC__GPIO_4_0 0x4003
588MX28_PAD_ENET0_MDIO__GPIO_4_1 0x4013
589MX28_PAD_ENET0_RX_EN__GPIO_4_2 0x4023
590MX28_PAD_ENET0_RXD0__GPIO_4_3 0x4033
591MX28_PAD_ENET0_RXD1__GPIO_4_4 0x4043
592MX28_PAD_ENET0_TX_CLK__GPIO_4_5 0x4053
593MX28_PAD_ENET0_TX_EN__GPIO_4_6 0x4063
594MX28_PAD_ENET0_TXD0__GPIO_4_7 0x4073
595MX28_PAD_ENET0_TXD1__GPIO_4_8 0x4083
596MX28_PAD_ENET0_RXD2__GPIO_4_9 0x4093
597MX28_PAD_ENET0_RXD3__GPIO_4_10 0x40a3
598MX28_PAD_ENET0_TXD2__GPIO_4_11 0x40b3
599MX28_PAD_ENET0_TXD3__GPIO_4_12 0x40c3
600MX28_PAD_ENET0_RX_CLK__GPIO_4_13 0x40d3
601MX28_PAD_ENET0_COL__GPIO_4_14 0x40e3
602MX28_PAD_ENET0_CRS__GPIO_4_15 0x40f3
603MX28_PAD_ENET_CLK__GPIO_4_16 0x4103
604MX28_PAD_JTAG_RTCK__GPIO_4_20 0x4143
605
606Valid values for i.MX23 pinmux-id:
607
608pinmux id
609------ --
610MX23_PAD_GPMI_D00__GPMI_D00 0x0000
611MX23_PAD_GPMI_D01__GPMI_D01 0x0010
612MX23_PAD_GPMI_D02__GPMI_D02 0x0020
613MX23_PAD_GPMI_D03__GPMI_D03 0x0030
614MX23_PAD_GPMI_D04__GPMI_D04 0x0040
615MX23_PAD_GPMI_D05__GPMI_D05 0x0050
616MX23_PAD_GPMI_D06__GPMI_D06 0x0060
617MX23_PAD_GPMI_D07__GPMI_D07 0x0070
618MX23_PAD_GPMI_D08__GPMI_D08 0x0080
619MX23_PAD_GPMI_D09__GPMI_D09 0x0090
620MX23_PAD_GPMI_D10__GPMI_D10 0x00a0
621MX23_PAD_GPMI_D11__GPMI_D11 0x00b0
622MX23_PAD_GPMI_D12__GPMI_D12 0x00c0
623MX23_PAD_GPMI_D13__GPMI_D13 0x00d0
624MX23_PAD_GPMI_D14__GPMI_D14 0x00e0
625MX23_PAD_GPMI_D15__GPMI_D15 0x00f0
626MX23_PAD_GPMI_CLE__GPMI_CLE 0x0100
627MX23_PAD_GPMI_ALE__GPMI_ALE 0x0110
628MX23_PAD_GPMI_CE2N__GPMI_CE2N 0x0120
629MX23_PAD_GPMI_RDY0__GPMI_RDY0 0x0130
630MX23_PAD_GPMI_RDY1__GPMI_RDY1 0x0140
631MX23_PAD_GPMI_RDY2__GPMI_RDY2 0x0150
632MX23_PAD_GPMI_RDY3__GPMI_RDY3 0x0160
633MX23_PAD_GPMI_WPN__GPMI_WPN 0x0170
634MX23_PAD_GPMI_WRN__GPMI_WRN 0x0180
635MX23_PAD_GPMI_RDN__GPMI_RDN 0x0190
636MX23_PAD_AUART1_CTS__AUART1_CTS 0x01a0
637MX23_PAD_AUART1_RTS__AUART1_RTS 0x01b0
638MX23_PAD_AUART1_RX__AUART1_RX 0x01c0
639MX23_PAD_AUART1_TX__AUART1_TX 0x01d0
640MX23_PAD_I2C_SCL__I2C_SCL 0x01e0
641MX23_PAD_I2C_SDA__I2C_SDA 0x01f0
642MX23_PAD_LCD_D00__LCD_D00 0x1000
643MX23_PAD_LCD_D01__LCD_D01 0x1010
644MX23_PAD_LCD_D02__LCD_D02 0x1020
645MX23_PAD_LCD_D03__LCD_D03 0x1030
646MX23_PAD_LCD_D04__LCD_D04 0x1040
647MX23_PAD_LCD_D05__LCD_D05 0x1050
648MX23_PAD_LCD_D06__LCD_D06 0x1060
649MX23_PAD_LCD_D07__LCD_D07 0x1070
650MX23_PAD_LCD_D08__LCD_D08 0x1080
651MX23_PAD_LCD_D09__LCD_D09 0x1090
652MX23_PAD_LCD_D10__LCD_D10 0x10a0
653MX23_PAD_LCD_D11__LCD_D11 0x10b0
654MX23_PAD_LCD_D12__LCD_D12 0x10c0
655MX23_PAD_LCD_D13__LCD_D13 0x10d0
656MX23_PAD_LCD_D14__LCD_D14 0x10e0
657MX23_PAD_LCD_D15__LCD_D15 0x10f0
658MX23_PAD_LCD_D16__LCD_D16 0x1100
659MX23_PAD_LCD_D17__LCD_D17 0x1110
660MX23_PAD_LCD_RESET__LCD_RESET 0x1120
661MX23_PAD_LCD_RS__LCD_RS 0x1130
662MX23_PAD_LCD_WR__LCD_WR 0x1140
663MX23_PAD_LCD_CS__LCD_CS 0x1150
664MX23_PAD_LCD_DOTCK__LCD_DOTCK 0x1160
665MX23_PAD_LCD_ENABLE__LCD_ENABLE 0x1170
666MX23_PAD_LCD_HSYNC__LCD_HSYNC 0x1180
667MX23_PAD_LCD_VSYNC__LCD_VSYNC 0x1190
668MX23_PAD_PWM0__PWM0 0x11a0
669MX23_PAD_PWM1__PWM1 0x11b0
670MX23_PAD_PWM2__PWM2 0x11c0
671MX23_PAD_PWM3__PWM3 0x11d0
672MX23_PAD_PWM4__PWM4 0x11e0
673MX23_PAD_SSP1_CMD__SSP1_CMD 0x2000
674MX23_PAD_SSP1_DETECT__SSP1_DETECT 0x2010
675MX23_PAD_SSP1_DATA0__SSP1_DATA0 0x2020
676MX23_PAD_SSP1_DATA1__SSP1_DATA1 0x2030
677MX23_PAD_SSP1_DATA2__SSP1_DATA2 0x2040
678MX23_PAD_SSP1_DATA3__SSP1_DATA3 0x2050
679MX23_PAD_SSP1_SCK__SSP1_SCK 0x2060
680MX23_PAD_ROTARYA__ROTARYA 0x2070
681MX23_PAD_ROTARYB__ROTARYB 0x2080
682MX23_PAD_EMI_A00__EMI_A00 0x2090
683MX23_PAD_EMI_A01__EMI_A01 0x20a0
684MX23_PAD_EMI_A02__EMI_A02 0x20b0
685MX23_PAD_EMI_A03__EMI_A03 0x20c0
686MX23_PAD_EMI_A04__EMI_A04 0x20d0
687MX23_PAD_EMI_A05__EMI_A05 0x20e0
688MX23_PAD_EMI_A06__EMI_A06 0x20f0
689MX23_PAD_EMI_A07__EMI_A07 0x2100
690MX23_PAD_EMI_A08__EMI_A08 0x2110
691MX23_PAD_EMI_A09__EMI_A09 0x2120
692MX23_PAD_EMI_A10__EMI_A10 0x2130
693MX23_PAD_EMI_A11__EMI_A11 0x2140
694MX23_PAD_EMI_A12__EMI_A12 0x2150
695MX23_PAD_EMI_BA0__EMI_BA0 0x2160
696MX23_PAD_EMI_BA1__EMI_BA1 0x2170
697MX23_PAD_EMI_CASN__EMI_CASN 0x2180
698MX23_PAD_EMI_CE0N__EMI_CE0N 0x2190
699MX23_PAD_EMI_CE1N__EMI_CE1N 0x21a0
700MX23_PAD_GPMI_CE1N__GPMI_CE1N 0x21b0
701MX23_PAD_GPMI_CE0N__GPMI_CE0N 0x21c0
702MX23_PAD_EMI_CKE__EMI_CKE 0x21d0
703MX23_PAD_EMI_RASN__EMI_RASN 0x21e0
704MX23_PAD_EMI_WEN__EMI_WEN 0x21f0
705MX23_PAD_EMI_D00__EMI_D00 0x3000
706MX23_PAD_EMI_D01__EMI_D01 0x3010
707MX23_PAD_EMI_D02__EMI_D02 0x3020
708MX23_PAD_EMI_D03__EMI_D03 0x3030
709MX23_PAD_EMI_D04__EMI_D04 0x3040
710MX23_PAD_EMI_D05__EMI_D05 0x3050
711MX23_PAD_EMI_D06__EMI_D06 0x3060
712MX23_PAD_EMI_D07__EMI_D07 0x3070
713MX23_PAD_EMI_D08__EMI_D08 0x3080
714MX23_PAD_EMI_D09__EMI_D09 0x3090
715MX23_PAD_EMI_D10__EMI_D10 0x30a0
716MX23_PAD_EMI_D11__EMI_D11 0x30b0
717MX23_PAD_EMI_D12__EMI_D12 0x30c0
718MX23_PAD_EMI_D13__EMI_D13 0x30d0
719MX23_PAD_EMI_D14__EMI_D14 0x30e0
720MX23_PAD_EMI_D15__EMI_D15 0x30f0
721MX23_PAD_EMI_DQM0__EMI_DQM0 0x3100
722MX23_PAD_EMI_DQM1__EMI_DQM1 0x3110
723MX23_PAD_EMI_DQS0__EMI_DQS0 0x3120
724MX23_PAD_EMI_DQS1__EMI_DQS1 0x3130
725MX23_PAD_EMI_CLK__EMI_CLK 0x3140
726MX23_PAD_EMI_CLKN__EMI_CLKN 0x3150
727MX23_PAD_GPMI_D00__LCD_D8 0x0001
728MX23_PAD_GPMI_D01__LCD_D9 0x0011
729MX23_PAD_GPMI_D02__LCD_D10 0x0021
730MX23_PAD_GPMI_D03__LCD_D11 0x0031
731MX23_PAD_GPMI_D04__LCD_D12 0x0041
732MX23_PAD_GPMI_D05__LCD_D13 0x0051
733MX23_PAD_GPMI_D06__LCD_D14 0x0061
734MX23_PAD_GPMI_D07__LCD_D15 0x0071
735MX23_PAD_GPMI_D08__LCD_D18 0x0081
736MX23_PAD_GPMI_D09__LCD_D19 0x0091
737MX23_PAD_GPMI_D10__LCD_D20 0x00a1
738MX23_PAD_GPMI_D11__LCD_D21 0x00b1
739MX23_PAD_GPMI_D12__LCD_D22 0x00c1
740MX23_PAD_GPMI_D13__LCD_D23 0x00d1
741MX23_PAD_GPMI_D14__AUART2_RX 0x00e1
742MX23_PAD_GPMI_D15__AUART2_TX 0x00f1
743MX23_PAD_GPMI_CLE__LCD_D16 0x0101
744MX23_PAD_GPMI_ALE__LCD_D17 0x0111
745MX23_PAD_GPMI_CE2N__ATA_A2 0x0121
746MX23_PAD_AUART1_RTS__IR_CLK 0x01b1
747MX23_PAD_AUART1_RX__IR_RX 0x01c1
748MX23_PAD_AUART1_TX__IR_TX 0x01d1
749MX23_PAD_I2C_SCL__GPMI_RDY2 0x01e1
750MX23_PAD_I2C_SDA__GPMI_CE2N 0x01f1
751MX23_PAD_LCD_D00__ETM_DA8 0x1001
752MX23_PAD_LCD_D01__ETM_DA9 0x1011
753MX23_PAD_LCD_D02__ETM_DA10 0x1021
754MX23_PAD_LCD_D03__ETM_DA11 0x1031
755MX23_PAD_LCD_D04__ETM_DA12 0x1041
756MX23_PAD_LCD_D05__ETM_DA13 0x1051
757MX23_PAD_LCD_D06__ETM_DA14 0x1061
758MX23_PAD_LCD_D07__ETM_DA15 0x1071
759MX23_PAD_LCD_D08__ETM_DA0 0x1081
760MX23_PAD_LCD_D09__ETM_DA1 0x1091
761MX23_PAD_LCD_D10__ETM_DA2 0x10a1
762MX23_PAD_LCD_D11__ETM_DA3 0x10b1
763MX23_PAD_LCD_D12__ETM_DA4 0x10c1
764MX23_PAD_LCD_D13__ETM_DA5 0x10d1
765MX23_PAD_LCD_D14__ETM_DA6 0x10e1
766MX23_PAD_LCD_D15__ETM_DA7 0x10f1
767MX23_PAD_LCD_RESET__ETM_TCTL 0x1121
768MX23_PAD_LCD_RS__ETM_TCLK 0x1131
769MX23_PAD_LCD_DOTCK__GPMI_RDY3 0x1161
770MX23_PAD_LCD_ENABLE__I2C_SCL 0x1171
771MX23_PAD_LCD_HSYNC__I2C_SDA 0x1181
772MX23_PAD_LCD_VSYNC__LCD_BUSY 0x1191
773MX23_PAD_PWM0__ROTARYA 0x11a1
774MX23_PAD_PWM1__ROTARYB 0x11b1
775MX23_PAD_PWM2__GPMI_RDY3 0x11c1
776MX23_PAD_PWM3__ETM_TCTL 0x11d1
777MX23_PAD_PWM4__ETM_TCLK 0x11e1
778MX23_PAD_SSP1_DETECT__GPMI_CE3N 0x2011
779MX23_PAD_SSP1_DATA1__I2C_SCL 0x2031
780MX23_PAD_SSP1_DATA2__I2C_SDA 0x2041
781MX23_PAD_ROTARYA__AUART2_RTS 0x2071
782MX23_PAD_ROTARYB__AUART2_CTS 0x2081
783MX23_PAD_GPMI_D00__SSP2_DATA0 0x0002
784MX23_PAD_GPMI_D01__SSP2_DATA1 0x0012
785MX23_PAD_GPMI_D02__SSP2_DATA2 0x0022
786MX23_PAD_GPMI_D03__SSP2_DATA3 0x0032
787MX23_PAD_GPMI_D04__SSP2_DATA4 0x0042
788MX23_PAD_GPMI_D05__SSP2_DATA5 0x0052
789MX23_PAD_GPMI_D06__SSP2_DATA6 0x0062
790MX23_PAD_GPMI_D07__SSP2_DATA7 0x0072
791MX23_PAD_GPMI_D08__SSP1_DATA4 0x0082
792MX23_PAD_GPMI_D09__SSP1_DATA5 0x0092
793MX23_PAD_GPMI_D10__SSP1_DATA6 0x00a2
794MX23_PAD_GPMI_D11__SSP1_DATA7 0x00b2
795MX23_PAD_GPMI_D15__GPMI_CE3N 0x00f2
796MX23_PAD_GPMI_RDY0__SSP2_DETECT 0x0132
797MX23_PAD_GPMI_RDY1__SSP2_CMD 0x0142
798MX23_PAD_GPMI_WRN__SSP2_SCK 0x0182
799MX23_PAD_AUART1_CTS__SSP1_DATA4 0x01a2
800MX23_PAD_AUART1_RTS__SSP1_DATA5 0x01b2
801MX23_PAD_AUART1_RX__SSP1_DATA6 0x01c2
802MX23_PAD_AUART1_TX__SSP1_DATA7 0x01d2
803MX23_PAD_I2C_SCL__AUART1_TX 0x01e2
804MX23_PAD_I2C_SDA__AUART1_RX 0x01f2
805MX23_PAD_LCD_D08__SAIF2_SDATA0 0x1082
806MX23_PAD_LCD_D09__SAIF1_SDATA0 0x1092
807MX23_PAD_LCD_D10__SAIF_MCLK_BITCLK 0x10a2
808MX23_PAD_LCD_D11__SAIF_LRCLK 0x10b2
809MX23_PAD_LCD_D12__SAIF2_SDATA1 0x10c2
810MX23_PAD_LCD_D13__SAIF2_SDATA2 0x10d2
811MX23_PAD_LCD_D14__SAIF1_SDATA2 0x10e2
812MX23_PAD_LCD_D15__SAIF1_SDATA1 0x10f2
813MX23_PAD_LCD_D16__SAIF_ALT_BITCLK 0x1102
814MX23_PAD_LCD_RESET__GPMI_CE3N 0x1122
815MX23_PAD_PWM0__DUART_RX 0x11a2
816MX23_PAD_PWM1__DUART_TX 0x11b2
817MX23_PAD_PWM3__AUART1_CTS 0x11d2
818MX23_PAD_PWM4__AUART1_RTS 0x11e2
819MX23_PAD_SSP1_CMD__JTAG_TDO 0x2002
820MX23_PAD_SSP1_DETECT__USB_OTG_ID 0x2012
821MX23_PAD_SSP1_DATA0__JTAG_TDI 0x2022
822MX23_PAD_SSP1_DATA1__JTAG_TCLK 0x2032
823MX23_PAD_SSP1_DATA2__JTAG_RTCK 0x2042
824MX23_PAD_SSP1_DATA3__JTAG_TMS 0x2052
825MX23_PAD_SSP1_SCK__JTAG_TRST 0x2062
826MX23_PAD_ROTARYA__SPDIF 0x2072
827MX23_PAD_ROTARYB__GPMI_CE3N 0x2082
828MX23_PAD_GPMI_D00__GPIO_0_0 0x0003
829MX23_PAD_GPMI_D01__GPIO_0_1 0x0013
830MX23_PAD_GPMI_D02__GPIO_0_2 0x0023
831MX23_PAD_GPMI_D03__GPIO_0_3 0x0033
832MX23_PAD_GPMI_D04__GPIO_0_4 0x0043
833MX23_PAD_GPMI_D05__GPIO_0_5 0x0053
834MX23_PAD_GPMI_D06__GPIO_0_6 0x0063
835MX23_PAD_GPMI_D07__GPIO_0_7 0x0073
836MX23_PAD_GPMI_D08__GPIO_0_8 0x0083
837MX23_PAD_GPMI_D09__GPIO_0_9 0x0093
838MX23_PAD_GPMI_D10__GPIO_0_10 0x00a3
839MX23_PAD_GPMI_D11__GPIO_0_11 0x00b3
840MX23_PAD_GPMI_D12__GPIO_0_12 0x00c3
841MX23_PAD_GPMI_D13__GPIO_0_13 0x00d3
842MX23_PAD_GPMI_D14__GPIO_0_14 0x00e3
843MX23_PAD_GPMI_D15__GPIO_0_15 0x00f3
844MX23_PAD_GPMI_CLE__GPIO_0_16 0x0103
845MX23_PAD_GPMI_ALE__GPIO_0_17 0x0113
846MX23_PAD_GPMI_CE2N__GPIO_0_18 0x0123
847MX23_PAD_GPMI_RDY0__GPIO_0_19 0x0133
848MX23_PAD_GPMI_RDY1__GPIO_0_20 0x0143
849MX23_PAD_GPMI_RDY2__GPIO_0_21 0x0153
850MX23_PAD_GPMI_RDY3__GPIO_0_22 0x0163
851MX23_PAD_GPMI_WPN__GPIO_0_23 0x0173
852MX23_PAD_GPMI_WRN__GPIO_0_24 0x0183
853MX23_PAD_GPMI_RDN__GPIO_0_25 0x0193
854MX23_PAD_AUART1_CTS__GPIO_0_26 0x01a3
855MX23_PAD_AUART1_RTS__GPIO_0_27 0x01b3
856MX23_PAD_AUART1_RX__GPIO_0_28 0x01c3
857MX23_PAD_AUART1_TX__GPIO_0_29 0x01d3
858MX23_PAD_I2C_SCL__GPIO_0_30 0x01e3
859MX23_PAD_I2C_SDA__GPIO_0_31 0x01f3
860MX23_PAD_LCD_D00__GPIO_1_0 0x1003
861MX23_PAD_LCD_D01__GPIO_1_1 0x1013
862MX23_PAD_LCD_D02__GPIO_1_2 0x1023
863MX23_PAD_LCD_D03__GPIO_1_3 0x1033
864MX23_PAD_LCD_D04__GPIO_1_4 0x1043
865MX23_PAD_LCD_D05__GPIO_1_5 0x1053
866MX23_PAD_LCD_D06__GPIO_1_6 0x1063
867MX23_PAD_LCD_D07__GPIO_1_7 0x1073
868MX23_PAD_LCD_D08__GPIO_1_8 0x1083
869MX23_PAD_LCD_D09__GPIO_1_9 0x1093
870MX23_PAD_LCD_D10__GPIO_1_10 0x10a3
871MX23_PAD_LCD_D11__GPIO_1_11 0x10b3
872MX23_PAD_LCD_D12__GPIO_1_12 0x10c3
873MX23_PAD_LCD_D13__GPIO_1_13 0x10d3
874MX23_PAD_LCD_D14__GPIO_1_14 0x10e3
875MX23_PAD_LCD_D15__GPIO_1_15 0x10f3
876MX23_PAD_LCD_D16__GPIO_1_16 0x1103
877MX23_PAD_LCD_D17__GPIO_1_17 0x1113
878MX23_PAD_LCD_RESET__GPIO_1_18 0x1123
879MX23_PAD_LCD_RS__GPIO_1_19 0x1133
880MX23_PAD_LCD_WR__GPIO_1_20 0x1143
881MX23_PAD_LCD_CS__GPIO_1_21 0x1153
882MX23_PAD_LCD_DOTCK__GPIO_1_22 0x1163
883MX23_PAD_LCD_ENABLE__GPIO_1_23 0x1173
884MX23_PAD_LCD_HSYNC__GPIO_1_24 0x1183
885MX23_PAD_LCD_VSYNC__GPIO_1_25 0x1193
886MX23_PAD_PWM0__GPIO_1_26 0x11a3
887MX23_PAD_PWM1__GPIO_1_27 0x11b3
888MX23_PAD_PWM2__GPIO_1_28 0x11c3
889MX23_PAD_PWM3__GPIO_1_29 0x11d3
890MX23_PAD_PWM4__GPIO_1_30 0x11e3
891MX23_PAD_SSP1_CMD__GPIO_2_0 0x2003
892MX23_PAD_SSP1_DETECT__GPIO_2_1 0x2013
893MX23_PAD_SSP1_DATA0__GPIO_2_2 0x2023
894MX23_PAD_SSP1_DATA1__GPIO_2_3 0x2033
895MX23_PAD_SSP1_DATA2__GPIO_2_4 0x2043
896MX23_PAD_SSP1_DATA3__GPIO_2_5 0x2053
897MX23_PAD_SSP1_SCK__GPIO_2_6 0x2063
898MX23_PAD_ROTARYA__GPIO_2_7 0x2073
899MX23_PAD_ROTARYB__GPIO_2_8 0x2083
900MX23_PAD_EMI_A00__GPIO_2_9 0x2093
901MX23_PAD_EMI_A01__GPIO_2_10 0x20a3
902MX23_PAD_EMI_A02__GPIO_2_11 0x20b3
903MX23_PAD_EMI_A03__GPIO_2_12 0x20c3
904MX23_PAD_EMI_A04__GPIO_2_13 0x20d3
905MX23_PAD_EMI_A05__GPIO_2_14 0x20e3
906MX23_PAD_EMI_A06__GPIO_2_15 0x20f3
907MX23_PAD_EMI_A07__GPIO_2_16 0x2103
908MX23_PAD_EMI_A08__GPIO_2_17 0x2113
909MX23_PAD_EMI_A09__GPIO_2_18 0x2123
910MX23_PAD_EMI_A10__GPIO_2_19 0x2133
911MX23_PAD_EMI_A11__GPIO_2_20 0x2143
912MX23_PAD_EMI_A12__GPIO_2_21 0x2153
913MX23_PAD_EMI_BA0__GPIO_2_22 0x2163
914MX23_PAD_EMI_BA1__GPIO_2_23 0x2173
915MX23_PAD_EMI_CASN__GPIO_2_24 0x2183
916MX23_PAD_EMI_CE0N__GPIO_2_25 0x2193
917MX23_PAD_EMI_CE1N__GPIO_2_26 0x21a3
918MX23_PAD_GPMI_CE1N__GPIO_2_27 0x21b3
919MX23_PAD_GPMI_CE0N__GPIO_2_28 0x21c3
920MX23_PAD_EMI_CKE__GPIO_2_29 0x21d3
921MX23_PAD_EMI_RASN__GPIO_2_30 0x21e3
922MX23_PAD_EMI_WEN__GPIO_2_31 0x21f3
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index d4dff18e332c..f2ff6266f789 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -144,8 +144,10 @@ dtb-$(CONFIG_ARCH_MXC) += \
144 imx6q-sabrelite.dtb \ 144 imx6q-sabrelite.dtb \
145 imx6q-sabresd.dtb \ 145 imx6q-sabresd.dtb \
146 imx6q-sbc6x.dtb \ 146 imx6q-sbc6x.dtb \
147 imx6q-udoo.dtb \
147 imx6q-wandboard.dtb \ 148 imx6q-wandboard.dtb \
148 imx6sl-evk.dtb \ 149 imx6sl-evk.dtb \
150 vf610-cosmic.dtb \
149 vf610-twr.dtb 151 vf610-twr.dtb
150dtb-$(CONFIG_ARCH_MXS) += imx23-evk.dtb \ 152dtb-$(CONFIG_ARCH_MXS) += imx23-evk.dtb \
151 imx23-olinuxino.dtb \ 153 imx23-olinuxino.dtb \
@@ -161,6 +163,7 @@ dtb-$(CONFIG_ARCH_MXS) += imx23-evk.dtb \
161 imx28-cfa10057.dtb \ 163 imx28-cfa10057.dtb \
162 imx28-cfa10058.dtb \ 164 imx28-cfa10058.dtb \
163 imx28-evk.dtb \ 165 imx28-evk.dtb \
166 imx28-m28cu3.dtb \
164 imx28-m28evk.dtb \ 167 imx28-m28evk.dtb \
165 imx28-sps1.dtb \ 168 imx28-sps1.dtb \
166 imx28-tx28.dtb 169 imx28-tx28.dtb
diff --git a/arch/arm/boot/dts/imx23-evk.dts b/arch/arm/boot/dts/imx23-evk.dts
index 185c7c01102a..1f026adefd45 100644
--- a/arch/arm/boot/dts/imx23-evk.dts
+++ b/arch/arm/boot/dts/imx23-evk.dts
@@ -10,7 +10,7 @@
10 */ 10 */
11 11
12/dts-v1/; 12/dts-v1/;
13/include/ "imx23.dtsi" 13#include "imx23.dtsi"
14 14
15/ { 15/ {
16 model = "Freescale i.MX23 Evaluation Kit"; 16 model = "Freescale i.MX23 Evaluation Kit";
@@ -45,14 +45,14 @@
45 hog_pins_a: hog@0 { 45 hog_pins_a: hog@0 {
46 reg = <0>; 46 reg = <0>;
47 fsl,pinmux-ids = < 47 fsl,pinmux-ids = <
48 0x1123 /* MX23_PAD_LCD_RESET__GPIO_1_18 */ 48 MX23_PAD_LCD_RESET__GPIO_1_18
49 0x11d3 /* MX23_PAD_PWM3__GPIO_1_29 */ 49 MX23_PAD_PWM3__GPIO_1_29
50 0x11e3 /* MX23_PAD_PWM4__GPIO_1_30 */ 50 MX23_PAD_PWM4__GPIO_1_30
51 0x2010 /* MX23_PAD_SSP1_DETECT__SSP1_DETECT */ 51 MX23_PAD_SSP1_DETECT__SSP1_DETECT
52 >; 52 >;
53 fsl,drive-strength = <0>; 53 fsl,drive-strength = <MXS_DRIVE_4mA>;
54 fsl,voltage = <1>; 54 fsl,voltage = <MXS_VOLTAGE_HIGH>;
55 fsl,pull-up = <0>; 55 fsl,pull-up = <MXS_PULL_DISABLE>;
56 }; 56 };
57 }; 57 };
58 58
diff --git a/arch/arm/boot/dts/imx23-olinuxino.dts b/arch/arm/boot/dts/imx23-olinuxino.dts
index fc766ae12e24..526bfdbd87f9 100644
--- a/arch/arm/boot/dts/imx23-olinuxino.dts
+++ b/arch/arm/boot/dts/imx23-olinuxino.dts
@@ -12,7 +12,7 @@
12 */ 12 */
13 13
14/dts-v1/; 14/dts-v1/;
15/include/ "imx23.dtsi" 15#include "imx23.dtsi"
16 16
17/ { 17/ {
18 model = "i.MX23 Olinuxino Low Cost Board"; 18 model = "i.MX23 Olinuxino Low Cost Board";
@@ -40,21 +40,21 @@
40 hog_pins_a: hog@0 { 40 hog_pins_a: hog@0 {
41 reg = <0>; 41 reg = <0>;
42 fsl,pinmux-ids = < 42 fsl,pinmux-ids = <
43 0x0113 /* MX23_PAD_GPMI_ALE__GPIO_0_17 */ 43 MX23_PAD_GPMI_ALE__GPIO_0_17
44 >; 44 >;
45 fsl,drive-strength = <0>; 45 fsl,drive-strength = <MXS_DRIVE_4mA>;
46 fsl,voltage = <1>; 46 fsl,voltage = <MXS_VOLTAGE_HIGH>;
47 fsl,pull-up = <0>; 47 fsl,pull-up = <MXS_PULL_DISABLE>;
48 }; 48 };
49 49
50 led_pin_gpio2_1: led_gpio2_1@0 { 50 led_pin_gpio2_1: led_gpio2_1@0 {
51 reg = <0>; 51 reg = <0>;
52 fsl,pinmux-ids = < 52 fsl,pinmux-ids = <
53 0x2013 /* MX23_PAD_SSP1_DETECT__GPIO_2_1 */ 53 MX23_PAD_SSP1_DETECT__GPIO_2_1
54 >; 54 >;
55 fsl,drive-strength = <0>; 55 fsl,drive-strength = <MXS_DRIVE_4mA>;
56 fsl,voltage = <1>; 56 fsl,voltage = <MXS_VOLTAGE_HIGH>;
57 fsl,pull-up = <0>; 57 fsl,pull-up = <MXS_PULL_DISABLE>;
58 }; 58 };
59 }; 59 };
60 60
diff --git a/arch/arm/boot/dts/imx23-pinfunc.h b/arch/arm/boot/dts/imx23-pinfunc.h
new file mode 100644
index 000000000000..5c0f32ca3a93
--- /dev/null
+++ b/arch/arm/boot/dts/imx23-pinfunc.h
@@ -0,0 +1,333 @@
1/*
2 * Header providing constants for i.MX23 pinctrl bindings.
3 *
4 * Copyright (C) 2013 Lothar Waßmann <LW@KARO-electronics.de>
5 *
6 * The code contained herein is licensed under the GNU General Public
7 * License. You may obtain a copy of the GNU General Public License
8 * Version 2 at the following locations:
9 *
10 * http://www.opensource.org/licenses/gpl-license.html
11 * http://www.gnu.org/copyleft/gpl.html
12 */
13
14#ifndef __DT_BINDINGS_MX23_PINCTRL_H__
15#define __DT_BINDINGS_MX23_PINCTRL_H__
16
17#include "mxs-pinfunc.h"
18
19#define MX23_PAD_GPMI_D00__GPMI_D00 0x0000
20#define MX23_PAD_GPMI_D01__GPMI_D01 0x0010
21#define MX23_PAD_GPMI_D02__GPMI_D02 0x0020
22#define MX23_PAD_GPMI_D03__GPMI_D03 0x0030
23#define MX23_PAD_GPMI_D04__GPMI_D04 0x0040
24#define MX23_PAD_GPMI_D05__GPMI_D05 0x0050
25#define MX23_PAD_GPMI_D06__GPMI_D06 0x0060
26#define MX23_PAD_GPMI_D07__GPMI_D07 0x0070
27#define MX23_PAD_GPMI_D08__GPMI_D08 0x0080
28#define MX23_PAD_GPMI_D09__GPMI_D09 0x0090
29#define MX23_PAD_GPMI_D10__GPMI_D10 0x00a0
30#define MX23_PAD_GPMI_D11__GPMI_D11 0x00b0
31#define MX23_PAD_GPMI_D12__GPMI_D12 0x00c0
32#define MX23_PAD_GPMI_D13__GPMI_D13 0x00d0
33#define MX23_PAD_GPMI_D14__GPMI_D14 0x00e0
34#define MX23_PAD_GPMI_D15__GPMI_D15 0x00f0
35#define MX23_PAD_GPMI_CLE__GPMI_CLE 0x0100
36#define MX23_PAD_GPMI_ALE__GPMI_ALE 0x0110
37#define MX23_PAD_GPMI_CE2N__GPMI_CE2N 0x0120
38#define MX23_PAD_GPMI_RDY0__GPMI_RDY0 0x0130
39#define MX23_PAD_GPMI_RDY1__GPMI_RDY1 0x0140
40#define MX23_PAD_GPMI_RDY2__GPMI_RDY2 0x0150
41#define MX23_PAD_GPMI_RDY3__GPMI_RDY3 0x0160
42#define MX23_PAD_GPMI_WPN__GPMI_WPN 0x0170
43#define MX23_PAD_GPMI_WRN__GPMI_WRN 0x0180
44#define MX23_PAD_GPMI_RDN__GPMI_RDN 0x0190
45#define MX23_PAD_AUART1_CTS__AUART1_CTS 0x01a0
46#define MX23_PAD_AUART1_RTS__AUART1_RTS 0x01b0
47#define MX23_PAD_AUART1_RX__AUART1_RX 0x01c0
48#define MX23_PAD_AUART1_TX__AUART1_TX 0x01d0
49#define MX23_PAD_I2C_SCL__I2C_SCL 0x01e0
50#define MX23_PAD_I2C_SDA__I2C_SDA 0x01f0
51#define MX23_PAD_LCD_D00__LCD_D00 0x1000
52#define MX23_PAD_LCD_D01__LCD_D01 0x1010
53#define MX23_PAD_LCD_D02__LCD_D02 0x1020
54#define MX23_PAD_LCD_D03__LCD_D03 0x1030
55#define MX23_PAD_LCD_D04__LCD_D04 0x1040
56#define MX23_PAD_LCD_D05__LCD_D05 0x1050
57#define MX23_PAD_LCD_D06__LCD_D06 0x1060
58#define MX23_PAD_LCD_D07__LCD_D07 0x1070
59#define MX23_PAD_LCD_D08__LCD_D08 0x1080
60#define MX23_PAD_LCD_D09__LCD_D09 0x1090
61#define MX23_PAD_LCD_D10__LCD_D10 0x10a0
62#define MX23_PAD_LCD_D11__LCD_D11 0x10b0
63#define MX23_PAD_LCD_D12__LCD_D12 0x10c0
64#define MX23_PAD_LCD_D13__LCD_D13 0x10d0
65#define MX23_PAD_LCD_D14__LCD_D14 0x10e0
66#define MX23_PAD_LCD_D15__LCD_D15 0x10f0
67#define MX23_PAD_LCD_D16__LCD_D16 0x1100
68#define MX23_PAD_LCD_D17__LCD_D17 0x1110
69#define MX23_PAD_LCD_RESET__LCD_RESET 0x1120
70#define MX23_PAD_LCD_RS__LCD_RS 0x1130
71#define MX23_PAD_LCD_WR__LCD_WR 0x1140
72#define MX23_PAD_LCD_CS__LCD_CS 0x1150
73#define MX23_PAD_LCD_DOTCK__LCD_DOTCK 0x1160
74#define MX23_PAD_LCD_ENABLE__LCD_ENABLE 0x1170
75#define MX23_PAD_LCD_HSYNC__LCD_HSYNC 0x1180
76#define MX23_PAD_LCD_VSYNC__LCD_VSYNC 0x1190
77#define MX23_PAD_PWM0__PWM0 0x11a0
78#define MX23_PAD_PWM1__PWM1 0x11b0
79#define MX23_PAD_PWM2__PWM2 0x11c0
80#define MX23_PAD_PWM3__PWM3 0x11d0
81#define MX23_PAD_PWM4__PWM4 0x11e0
82#define MX23_PAD_SSP1_CMD__SSP1_CMD 0x2000
83#define MX23_PAD_SSP1_DETECT__SSP1_DETECT 0x2010
84#define MX23_PAD_SSP1_DATA0__SSP1_DATA0 0x2020
85#define MX23_PAD_SSP1_DATA1__SSP1_DATA1 0x2030
86#define MX23_PAD_SSP1_DATA2__SSP1_DATA2 0x2040
87#define MX23_PAD_SSP1_DATA3__SSP1_DATA3 0x2050
88#define MX23_PAD_SSP1_SCK__SSP1_SCK 0x2060
89#define MX23_PAD_ROTARYA__ROTARYA 0x2070
90#define MX23_PAD_ROTARYB__ROTARYB 0x2080
91#define MX23_PAD_EMI_A00__EMI_A00 0x2090
92#define MX23_PAD_EMI_A01__EMI_A01 0x20a0
93#define MX23_PAD_EMI_A02__EMI_A02 0x20b0
94#define MX23_PAD_EMI_A03__EMI_A03 0x20c0
95#define MX23_PAD_EMI_A04__EMI_A04 0x20d0
96#define MX23_PAD_EMI_A05__EMI_A05 0x20e0
97#define MX23_PAD_EMI_A06__EMI_A06 0x20f0
98#define MX23_PAD_EMI_A07__EMI_A07 0x2100
99#define MX23_PAD_EMI_A08__EMI_A08 0x2110
100#define MX23_PAD_EMI_A09__EMI_A09 0x2120
101#define MX23_PAD_EMI_A10__EMI_A10 0x2130
102#define MX23_PAD_EMI_A11__EMI_A11 0x2140
103#define MX23_PAD_EMI_A12__EMI_A12 0x2150
104#define MX23_PAD_EMI_BA0__EMI_BA0 0x2160
105#define MX23_PAD_EMI_BA1__EMI_BA1 0x2170
106#define MX23_PAD_EMI_CASN__EMI_CASN 0x2180
107#define MX23_PAD_EMI_CE0N__EMI_CE0N 0x2190
108#define MX23_PAD_EMI_CE1N__EMI_CE1N 0x21a0
109#define MX23_PAD_GPMI_CE1N__GPMI_CE1N 0x21b0
110#define MX23_PAD_GPMI_CE0N__GPMI_CE0N 0x21c0
111#define MX23_PAD_EMI_CKE__EMI_CKE 0x21d0
112#define MX23_PAD_EMI_RASN__EMI_RASN 0x21e0
113#define MX23_PAD_EMI_WEN__EMI_WEN 0x21f0
114#define MX23_PAD_EMI_D00__EMI_D00 0x3000
115#define MX23_PAD_EMI_D01__EMI_D01 0x3010
116#define MX23_PAD_EMI_D02__EMI_D02 0x3020
117#define MX23_PAD_EMI_D03__EMI_D03 0x3030
118#define MX23_PAD_EMI_D04__EMI_D04 0x3040
119#define MX23_PAD_EMI_D05__EMI_D05 0x3050
120#define MX23_PAD_EMI_D06__EMI_D06 0x3060
121#define MX23_PAD_EMI_D07__EMI_D07 0x3070
122#define MX23_PAD_EMI_D08__EMI_D08 0x3080
123#define MX23_PAD_EMI_D09__EMI_D09 0x3090
124#define MX23_PAD_EMI_D10__EMI_D10 0x30a0
125#define MX23_PAD_EMI_D11__EMI_D11 0x30b0
126#define MX23_PAD_EMI_D12__EMI_D12 0x30c0
127#define MX23_PAD_EMI_D13__EMI_D13 0x30d0
128#define MX23_PAD_EMI_D14__EMI_D14 0x30e0
129#define MX23_PAD_EMI_D15__EMI_D15 0x30f0
130#define MX23_PAD_EMI_DQM0__EMI_DQM0 0x3100
131#define MX23_PAD_EMI_DQM1__EMI_DQM1 0x3110
132#define MX23_PAD_EMI_DQS0__EMI_DQS0 0x3120
133#define MX23_PAD_EMI_DQS1__EMI_DQS1 0x3130
134#define MX23_PAD_EMI_CLK__EMI_CLK 0x3140
135#define MX23_PAD_EMI_CLKN__EMI_CLKN 0x3150
136#define MX23_PAD_GPMI_D00__LCD_D8 0x0001
137#define MX23_PAD_GPMI_D01__LCD_D9 0x0011
138#define MX23_PAD_GPMI_D02__LCD_D10 0x0021
139#define MX23_PAD_GPMI_D03__LCD_D11 0x0031
140#define MX23_PAD_GPMI_D04__LCD_D12 0x0041
141#define MX23_PAD_GPMI_D05__LCD_D13 0x0051
142#define MX23_PAD_GPMI_D06__LCD_D14 0x0061
143#define MX23_PAD_GPMI_D07__LCD_D15 0x0071
144#define MX23_PAD_GPMI_D08__LCD_D18 0x0081
145#define MX23_PAD_GPMI_D09__LCD_D19 0x0091
146#define MX23_PAD_GPMI_D10__LCD_D20 0x00a1
147#define MX23_PAD_GPMI_D11__LCD_D21 0x00b1
148#define MX23_PAD_GPMI_D12__LCD_D22 0x00c1
149#define MX23_PAD_GPMI_D13__LCD_D23 0x00d1
150#define MX23_PAD_GPMI_D14__AUART2_RX 0x00e1
151#define MX23_PAD_GPMI_D15__AUART2_TX 0x00f1
152#define MX23_PAD_GPMI_CLE__LCD_D16 0x0101
153#define MX23_PAD_GPMI_ALE__LCD_D17 0x0111
154#define MX23_PAD_GPMI_CE2N__ATA_A2 0x0121
155#define MX23_PAD_AUART1_RTS__IR_CLK 0x01b1
156#define MX23_PAD_AUART1_RX__IR_RX 0x01c1
157#define MX23_PAD_AUART1_TX__IR_TX 0x01d1
158#define MX23_PAD_I2C_SCL__GPMI_RDY2 0x01e1
159#define MX23_PAD_I2C_SDA__GPMI_CE2N 0x01f1
160#define MX23_PAD_LCD_D00__ETM_DA8 0x1001
161#define MX23_PAD_LCD_D01__ETM_DA9 0x1011
162#define MX23_PAD_LCD_D02__ETM_DA10 0x1021
163#define MX23_PAD_LCD_D03__ETM_DA11 0x1031
164#define MX23_PAD_LCD_D04__ETM_DA12 0x1041
165#define MX23_PAD_LCD_D05__ETM_DA13 0x1051
166#define MX23_PAD_LCD_D06__ETM_DA14 0x1061
167#define MX23_PAD_LCD_D07__ETM_DA15 0x1071
168#define MX23_PAD_LCD_D08__ETM_DA0 0x1081
169#define MX23_PAD_LCD_D09__ETM_DA1 0x1091
170#define MX23_PAD_LCD_D10__ETM_DA2 0x10a1
171#define MX23_PAD_LCD_D11__ETM_DA3 0x10b1
172#define MX23_PAD_LCD_D12__ETM_DA4 0x10c1
173#define MX23_PAD_LCD_D13__ETM_DA5 0x10d1
174#define MX23_PAD_LCD_D14__ETM_DA6 0x10e1
175#define MX23_PAD_LCD_D15__ETM_DA7 0x10f1
176#define MX23_PAD_LCD_RESET__ETM_TCTL 0x1121
177#define MX23_PAD_LCD_RS__ETM_TCLK 0x1131
178#define MX23_PAD_LCD_DOTCK__GPMI_RDY3 0x1161
179#define MX23_PAD_LCD_ENABLE__I2C_SCL 0x1171
180#define MX23_PAD_LCD_HSYNC__I2C_SDA 0x1181
181#define MX23_PAD_LCD_VSYNC__LCD_BUSY 0x1191
182#define MX23_PAD_PWM0__ROTARYA 0x11a1
183#define MX23_PAD_PWM1__ROTARYB 0x11b1
184#define MX23_PAD_PWM2__GPMI_RDY3 0x11c1
185#define MX23_PAD_PWM3__ETM_TCTL 0x11d1
186#define MX23_PAD_PWM4__ETM_TCLK 0x11e1
187#define MX23_PAD_SSP1_DETECT__GPMI_CE3N 0x2011
188#define MX23_PAD_SSP1_DATA1__I2C_SCL 0x2031
189#define MX23_PAD_SSP1_DATA2__I2C_SDA 0x2041
190#define MX23_PAD_ROTARYA__AUART2_RTS 0x2071
191#define MX23_PAD_ROTARYB__AUART2_CTS 0x2081
192#define MX23_PAD_GPMI_D00__SSP2_DATA0 0x0002
193#define MX23_PAD_GPMI_D01__SSP2_DATA1 0x0012
194#define MX23_PAD_GPMI_D02__SSP2_DATA2 0x0022
195#define MX23_PAD_GPMI_D03__SSP2_DATA3 0x0032
196#define MX23_PAD_GPMI_D04__SSP2_DATA4 0x0042
197#define MX23_PAD_GPMI_D05__SSP2_DATA5 0x0052
198#define MX23_PAD_GPMI_D06__SSP2_DATA6 0x0062
199#define MX23_PAD_GPMI_D07__SSP2_DATA7 0x0072
200#define MX23_PAD_GPMI_D08__SSP1_DATA4 0x0082
201#define MX23_PAD_GPMI_D09__SSP1_DATA5 0x0092
202#define MX23_PAD_GPMI_D10__SSP1_DATA6 0x00a2
203#define MX23_PAD_GPMI_D11__SSP1_DATA7 0x00b2
204#define MX23_PAD_GPMI_D15__GPMI_CE3N 0x00f2
205#define MX23_PAD_GPMI_RDY0__SSP2_DETECT 0x0132
206#define MX23_PAD_GPMI_RDY1__SSP2_CMD 0x0142
207#define MX23_PAD_GPMI_WRN__SSP2_SCK 0x0182
208#define MX23_PAD_AUART1_CTS__SSP1_DATA4 0x01a2
209#define MX23_PAD_AUART1_RTS__SSP1_DATA5 0x01b2
210#define MX23_PAD_AUART1_RX__SSP1_DATA6 0x01c2
211#define MX23_PAD_AUART1_TX__SSP1_DATA7 0x01d2
212#define MX23_PAD_I2C_SCL__AUART1_TX 0x01e2
213#define MX23_PAD_I2C_SDA__AUART1_RX 0x01f2
214#define MX23_PAD_LCD_D08__SAIF2_SDATA0 0x1082
215#define MX23_PAD_LCD_D09__SAIF1_SDATA0 0x1092
216#define MX23_PAD_LCD_D10__SAIF_MCLK_BITCLK 0x10a2
217#define MX23_PAD_LCD_D11__SAIF_LRCLK 0x10b2
218#define MX23_PAD_LCD_D12__SAIF2_SDATA1 0x10c2
219#define MX23_PAD_LCD_D13__SAIF2_SDATA2 0x10d2
220#define MX23_PAD_LCD_D14__SAIF1_SDATA2 0x10e2
221#define MX23_PAD_LCD_D15__SAIF1_SDATA1 0x10f2
222#define MX23_PAD_LCD_D16__SAIF_ALT_BITCLK 0x1102
223#define MX23_PAD_LCD_RESET__GPMI_CE3N 0x1122
224#define MX23_PAD_PWM0__DUART_RX 0x11a2
225#define MX23_PAD_PWM1__DUART_TX 0x11b2
226#define MX23_PAD_PWM3__AUART1_CTS 0x11d2
227#define MX23_PAD_PWM4__AUART1_RTS 0x11e2
228#define MX23_PAD_SSP1_CMD__JTAG_TDO 0x2002
229#define MX23_PAD_SSP1_DETECT__USB_OTG_ID 0x2012
230#define MX23_PAD_SSP1_DATA0__JTAG_TDI 0x2022
231#define MX23_PAD_SSP1_DATA1__JTAG_TCLK 0x2032
232#define MX23_PAD_SSP1_DATA2__JTAG_RTCK 0x2042
233#define MX23_PAD_SSP1_DATA3__JTAG_TMS 0x2052
234#define MX23_PAD_SSP1_SCK__JTAG_TRST 0x2062
235#define MX23_PAD_ROTARYA__SPDIF 0x2072
236#define MX23_PAD_ROTARYB__GPMI_CE3N 0x2082
237#define MX23_PAD_GPMI_D00__GPIO_0_0 0x0003
238#define MX23_PAD_GPMI_D01__GPIO_0_1 0x0013
239#define MX23_PAD_GPMI_D02__GPIO_0_2 0x0023
240#define MX23_PAD_GPMI_D03__GPIO_0_3 0x0033
241#define MX23_PAD_GPMI_D04__GPIO_0_4 0x0043
242#define MX23_PAD_GPMI_D05__GPIO_0_5 0x0053
243#define MX23_PAD_GPMI_D06__GPIO_0_6 0x0063
244#define MX23_PAD_GPMI_D07__GPIO_0_7 0x0073
245#define MX23_PAD_GPMI_D08__GPIO_0_8 0x0083
246#define MX23_PAD_GPMI_D09__GPIO_0_9 0x0093
247#define MX23_PAD_GPMI_D10__GPIO_0_10 0x00a3
248#define MX23_PAD_GPMI_D11__GPIO_0_11 0x00b3
249#define MX23_PAD_GPMI_D12__GPIO_0_12 0x00c3
250#define MX23_PAD_GPMI_D13__GPIO_0_13 0x00d3
251#define MX23_PAD_GPMI_D14__GPIO_0_14 0x00e3
252#define MX23_PAD_GPMI_D15__GPIO_0_15 0x00f3
253#define MX23_PAD_GPMI_CLE__GPIO_0_16 0x0103
254#define MX23_PAD_GPMI_ALE__GPIO_0_17 0x0113
255#define MX23_PAD_GPMI_CE2N__GPIO_0_18 0x0123
256#define MX23_PAD_GPMI_RDY0__GPIO_0_19 0x0133
257#define MX23_PAD_GPMI_RDY1__GPIO_0_20 0x0143
258#define MX23_PAD_GPMI_RDY2__GPIO_0_21 0x0153
259#define MX23_PAD_GPMI_RDY3__GPIO_0_22 0x0163
260#define MX23_PAD_GPMI_WPN__GPIO_0_23 0x0173
261#define MX23_PAD_GPMI_WRN__GPIO_0_24 0x0183
262#define MX23_PAD_GPMI_RDN__GPIO_0_25 0x0193
263#define MX23_PAD_AUART1_CTS__GPIO_0_26 0x01a3
264#define MX23_PAD_AUART1_RTS__GPIO_0_27 0x01b3
265#define MX23_PAD_AUART1_RX__GPIO_0_28 0x01c3
266#define MX23_PAD_AUART1_TX__GPIO_0_29 0x01d3
267#define MX23_PAD_I2C_SCL__GPIO_0_30 0x01e3
268#define MX23_PAD_I2C_SDA__GPIO_0_31 0x01f3
269#define MX23_PAD_LCD_D00__GPIO_1_0 0x1003
270#define MX23_PAD_LCD_D01__GPIO_1_1 0x1013
271#define MX23_PAD_LCD_D02__GPIO_1_2 0x1023
272#define MX23_PAD_LCD_D03__GPIO_1_3 0x1033
273#define MX23_PAD_LCD_D04__GPIO_1_4 0x1043
274#define MX23_PAD_LCD_D05__GPIO_1_5 0x1053
275#define MX23_PAD_LCD_D06__GPIO_1_6 0x1063
276#define MX23_PAD_LCD_D07__GPIO_1_7 0x1073
277#define MX23_PAD_LCD_D08__GPIO_1_8 0x1083
278#define MX23_PAD_LCD_D09__GPIO_1_9 0x1093
279#define MX23_PAD_LCD_D10__GPIO_1_10 0x10a3
280#define MX23_PAD_LCD_D11__GPIO_1_11 0x10b3
281#define MX23_PAD_LCD_D12__GPIO_1_12 0x10c3
282#define MX23_PAD_LCD_D13__GPIO_1_13 0x10d3
283#define MX23_PAD_LCD_D14__GPIO_1_14 0x10e3
284#define MX23_PAD_LCD_D15__GPIO_1_15 0x10f3
285#define MX23_PAD_LCD_D16__GPIO_1_16 0x1103
286#define MX23_PAD_LCD_D17__GPIO_1_17 0x1113
287#define MX23_PAD_LCD_RESET__GPIO_1_18 0x1123
288#define MX23_PAD_LCD_RS__GPIO_1_19 0x1133
289#define MX23_PAD_LCD_WR__GPIO_1_20 0x1143
290#define MX23_PAD_LCD_CS__GPIO_1_21 0x1153
291#define MX23_PAD_LCD_DOTCK__GPIO_1_22 0x1163
292#define MX23_PAD_LCD_ENABLE__GPIO_1_23 0x1173
293#define MX23_PAD_LCD_HSYNC__GPIO_1_24 0x1183
294#define MX23_PAD_LCD_VSYNC__GPIO_1_25 0x1193
295#define MX23_PAD_PWM0__GPIO_1_26 0x11a3
296#define MX23_PAD_PWM1__GPIO_1_27 0x11b3
297#define MX23_PAD_PWM2__GPIO_1_28 0x11c3
298#define MX23_PAD_PWM3__GPIO_1_29 0x11d3
299#define MX23_PAD_PWM4__GPIO_1_30 0x11e3
300#define MX23_PAD_SSP1_CMD__GPIO_2_0 0x2003
301#define MX23_PAD_SSP1_DETECT__GPIO_2_1 0x2013
302#define MX23_PAD_SSP1_DATA0__GPIO_2_2 0x2023
303#define MX23_PAD_SSP1_DATA1__GPIO_2_3 0x2033
304#define MX23_PAD_SSP1_DATA2__GPIO_2_4 0x2043
305#define MX23_PAD_SSP1_DATA3__GPIO_2_5 0x2053
306#define MX23_PAD_SSP1_SCK__GPIO_2_6 0x2063
307#define MX23_PAD_ROTARYA__GPIO_2_7 0x2073
308#define MX23_PAD_ROTARYB__GPIO_2_8 0x2083
309#define MX23_PAD_EMI_A00__GPIO_2_9 0x2093
310#define MX23_PAD_EMI_A01__GPIO_2_10 0x20a3
311#define MX23_PAD_EMI_A02__GPIO_2_11 0x20b3
312#define MX23_PAD_EMI_A03__GPIO_2_12 0x20c3
313#define MX23_PAD_EMI_A04__GPIO_2_13 0x20d3
314#define MX23_PAD_EMI_A05__GPIO_2_14 0x20e3
315#define MX23_PAD_EMI_A06__GPIO_2_15 0x20f3
316#define MX23_PAD_EMI_A07__GPIO_2_16 0x2103
317#define MX23_PAD_EMI_A08__GPIO_2_17 0x2113
318#define MX23_PAD_EMI_A09__GPIO_2_18 0x2123
319#define MX23_PAD_EMI_A10__GPIO_2_19 0x2133
320#define MX23_PAD_EMI_A11__GPIO_2_20 0x2143
321#define MX23_PAD_EMI_A12__GPIO_2_21 0x2153
322#define MX23_PAD_EMI_BA0__GPIO_2_22 0x2163
323#define MX23_PAD_EMI_BA1__GPIO_2_23 0x2173
324#define MX23_PAD_EMI_CASN__GPIO_2_24 0x2183
325#define MX23_PAD_EMI_CE0N__GPIO_2_25 0x2193
326#define MX23_PAD_EMI_CE1N__GPIO_2_26 0x21a3
327#define MX23_PAD_GPMI_CE1N__GPIO_2_27 0x21b3
328#define MX23_PAD_GPMI_CE0N__GPIO_2_28 0x21c3
329#define MX23_PAD_EMI_CKE__GPIO_2_29 0x21d3
330#define MX23_PAD_EMI_RASN__GPIO_2_30 0x21e3
331#define MX23_PAD_EMI_WEN__GPIO_2_31 0x21f3
332
333#endif /* __DT_BINDINGS_MX23_PINCTRL_H__ */
diff --git a/arch/arm/boot/dts/imx23-stmp378x_devb.dts b/arch/arm/boot/dts/imx23-stmp378x_devb.dts
index 85c3864b6a56..cb64e2b191ea 100644
--- a/arch/arm/boot/dts/imx23-stmp378x_devb.dts
+++ b/arch/arm/boot/dts/imx23-stmp378x_devb.dts
@@ -10,7 +10,7 @@
10 */ 10 */
11 11
12/dts-v1/; 12/dts-v1/;
13/include/ "imx23.dtsi" 13#include "imx23.dtsi"
14 14
15/ { 15/ {
16 model = "Freescale STMP378x Development Board"; 16 model = "Freescale STMP378x Development Board";
@@ -39,12 +39,12 @@
39 hog_pins_a: hog@0 { 39 hog_pins_a: hog@0 {
40 reg = <0>; 40 reg = <0>;
41 fsl,pinmux-ids = < 41 fsl,pinmux-ids = <
42 0x11d3 /* MX23_PAD_PWM3__GPIO_1_29 */ 42 MX23_PAD_PWM3__GPIO_1_29
43 0x11e3 /* MX23_PAD_PWM4__GPIO_1_30 */ 43 MX23_PAD_PWM4__GPIO_1_30
44 >; 44 >;
45 fsl,drive-strength = <0>; 45 fsl,drive-strength = <MXS_DRIVE_4mA>;
46 fsl,voltage = <1>; 46 fsl,voltage = <MXS_VOLTAGE_HIGH>;
47 fsl,pull-up = <0>; 47 fsl,pull-up = <MXS_PULL_DISABLE>;
48 }; 48 };
49 }; 49 };
50 }; 50 };
diff --git a/arch/arm/boot/dts/imx23.dtsi b/arch/arm/boot/dts/imx23.dtsi
index 28b5ce289662..87faa6e8b6e7 100644
--- a/arch/arm/boot/dts/imx23.dtsi
+++ b/arch/arm/boot/dts/imx23.dtsi
@@ -9,7 +9,8 @@
9 * http://www.gnu.org/copyleft/gpl.html 9 * http://www.gnu.org/copyleft/gpl.html
10 */ 10 */
11 11
12/include/ "skeleton.dtsi" 12#include "skeleton.dtsi"
13#include "imx23-pinfunc.h"
13 14
14/ { 15/ {
15 interrupt-parent = <&icoll>; 16 interrupt-parent = <&icoll>;
@@ -137,174 +138,174 @@
137 duart_pins_a: duart@0 { 138 duart_pins_a: duart@0 {
138 reg = <0>; 139 reg = <0>;
139 fsl,pinmux-ids = < 140 fsl,pinmux-ids = <
140 0x11a2 /* MX23_PAD_PWM0__DUART_RX */ 141 MX23_PAD_PWM0__DUART_RX
141 0x11b2 /* MX23_PAD_PWM1__DUART_TX */ 142 MX23_PAD_PWM1__DUART_TX
142 >; 143 >;
143 fsl,drive-strength = <0>; 144 fsl,drive-strength = <MXS_DRIVE_4mA>;
144 fsl,voltage = <1>; 145 fsl,voltage = <MXS_VOLTAGE_HIGH>;
145 fsl,pull-up = <0>; 146 fsl,pull-up = <MXS_PULL_DISABLE>;
146 }; 147 };
147 148
148 auart0_pins_a: auart0@0 { 149 auart0_pins_a: auart0@0 {
149 reg = <0>; 150 reg = <0>;
150 fsl,pinmux-ids = < 151 fsl,pinmux-ids = <
151 0x01c0 /* MX23_PAD_AUART1_RX__AUART1_RX */ 152 MX23_PAD_AUART1_RX__AUART1_RX
152 0x01d0 /* MX23_PAD_AUART1_TX__AUART1_TX */ 153 MX23_PAD_AUART1_TX__AUART1_TX
153 0x01a0 /* MX23_PAD_AUART1_CTS__AUART1_CTS */ 154 MX23_PAD_AUART1_CTS__AUART1_CTS
154 0x01b0 /* MX23_PAD_AUART1_RTS__AUART1_RTS */ 155 MX23_PAD_AUART1_RTS__AUART1_RTS
155 >; 156 >;
156 fsl,drive-strength = <0>; 157 fsl,drive-strength = <MXS_DRIVE_4mA>;
157 fsl,voltage = <1>; 158 fsl,voltage = <MXS_VOLTAGE_HIGH>;
158 fsl,pull-up = <0>; 159 fsl,pull-up = <MXS_PULL_DISABLE>;
159 }; 160 };
160 161
161 auart0_2pins_a: auart0-2pins@0 { 162 auart0_2pins_a: auart0-2pins@0 {
162 reg = <0>; 163 reg = <0>;
163 fsl,pinmux-ids = < 164 fsl,pinmux-ids = <
164 0x01e2 /* MX23_PAD_I2C_SCL__AUART1_TX */ 165 MX23_PAD_I2C_SCL__AUART1_TX
165 0x01f2 /* MX23_PAD_I2C_SDA__AUART1_RX */ 166 MX23_PAD_I2C_SDA__AUART1_RX
166 >; 167 >;
167 fsl,drive-strength = <0>; 168 fsl,drive-strength = <MXS_DRIVE_4mA>;
168 fsl,voltage = <1>; 169 fsl,voltage = <MXS_VOLTAGE_HIGH>;
169 fsl,pull-up = <0>; 170 fsl,pull-up = <MXS_PULL_DISABLE>;
170 }; 171 };
171 172
172 gpmi_pins_a: gpmi-nand@0 { 173 gpmi_pins_a: gpmi-nand@0 {
173 reg = <0>; 174 reg = <0>;
174 fsl,pinmux-ids = < 175 fsl,pinmux-ids = <
175 0x0000 /* MX23_PAD_GPMI_D00__GPMI_D00 */ 176 MX23_PAD_GPMI_D00__GPMI_D00
176 0x0010 /* MX23_PAD_GPMI_D01__GPMI_D01 */ 177 MX23_PAD_GPMI_D01__GPMI_D01
177 0x0020 /* MX23_PAD_GPMI_D02__GPMI_D02 */ 178 MX23_PAD_GPMI_D02__GPMI_D02
178 0x0030 /* MX23_PAD_GPMI_D03__GPMI_D03 */ 179 MX23_PAD_GPMI_D03__GPMI_D03
179 0x0040 /* MX23_PAD_GPMI_D04__GPMI_D04 */ 180 MX23_PAD_GPMI_D04__GPMI_D04
180 0x0050 /* MX23_PAD_GPMI_D05__GPMI_D05 */ 181 MX23_PAD_GPMI_D05__GPMI_D05
181 0x0060 /* MX23_PAD_GPMI_D06__GPMI_D06 */ 182 MX23_PAD_GPMI_D06__GPMI_D06
182 0x0070 /* MX23_PAD_GPMI_D07__GPMI_D07 */ 183 MX23_PAD_GPMI_D07__GPMI_D07
183 0x0100 /* MX23_PAD_GPMI_CLE__GPMI_CLE */ 184 MX23_PAD_GPMI_CLE__GPMI_CLE
184 0x0110 /* MX23_PAD_GPMI_ALE__GPMI_ALE */ 185 MX23_PAD_GPMI_ALE__GPMI_ALE
185 0x0130 /* MX23_PAD_GPMI_RDY0__GPMI_RDY0 */ 186 MX23_PAD_GPMI_RDY0__GPMI_RDY0
186 0x0140 /* MX23_PAD_GPMI_RDY1__GPMI_RDY1 */ 187 MX23_PAD_GPMI_RDY1__GPMI_RDY1
187 0x0170 /* MX23_PAD_GPMI_WPN__GPMI_WPN */ 188 MX23_PAD_GPMI_WPN__GPMI_WPN
188 0x0180 /* MX23_PAD_GPMI_WRN__GPMI_WRN */ 189 MX23_PAD_GPMI_WRN__GPMI_WRN
189 0x0190 /* MX23_PAD_GPMI_RDN__GPMI_RDN */ 190 MX23_PAD_GPMI_RDN__GPMI_RDN
190 0x21b0 /* MX23_PAD_GPMI_CE1N__GPMI_CE1N */ 191 MX23_PAD_GPMI_CE1N__GPMI_CE1N
191 0x21c0 /* MX23_PAD_GPMI_CE0N__GPMI_CE0N */ 192 MX23_PAD_GPMI_CE0N__GPMI_CE0N
192 >; 193 >;
193 fsl,drive-strength = <0>; 194 fsl,drive-strength = <MXS_DRIVE_4mA>;
194 fsl,voltage = <1>; 195 fsl,voltage = <MXS_VOLTAGE_HIGH>;
195 fsl,pull-up = <0>; 196 fsl,pull-up = <MXS_PULL_DISABLE>;
196 }; 197 };
197 198
198 gpmi_pins_fixup: gpmi-pins-fixup { 199 gpmi_pins_fixup: gpmi-pins-fixup {
199 fsl,pinmux-ids = < 200 fsl,pinmux-ids = <
200 0x0170 /* MX23_PAD_GPMI_WPN__GPMI_WPN */ 201 MX23_PAD_GPMI_WPN__GPMI_WPN
201 0x0180 /* MX23_PAD_GPMI_WRN__GPMI_WRN */ 202 MX23_PAD_GPMI_WRN__GPMI_WRN
202 0x0190 /* MX23_PAD_GPMI_RDN__GPMI_RDN */ 203 MX23_PAD_GPMI_RDN__GPMI_RDN
203 >; 204 >;
204 fsl,drive-strength = <2>; 205 fsl,drive-strength = <MXS_DRIVE_12mA>;
205 }; 206 };
206 207
207 mmc0_4bit_pins_a: mmc0-4bit@0 { 208 mmc0_4bit_pins_a: mmc0-4bit@0 {
208 reg = <0>; 209 reg = <0>;
209 fsl,pinmux-ids = < 210 fsl,pinmux-ids = <
210 0x2020 /* MX23_PAD_SSP1_DATA0__SSP1_DATA0 */ 211 MX23_PAD_SSP1_DATA0__SSP1_DATA0
211 0x2030 /* MX23_PAD_SSP1_DATA1__SSP1_DATA1 */ 212 MX23_PAD_SSP1_DATA1__SSP1_DATA1
212 0x2040 /* MX23_PAD_SSP1_DATA2__SSP1_DATA2 */ 213 MX23_PAD_SSP1_DATA2__SSP1_DATA2
213 0x2050 /* MX23_PAD_SSP1_DATA3__SSP1_DATA3 */ 214 MX23_PAD_SSP1_DATA3__SSP1_DATA3
214 0x2000 /* MX23_PAD_SSP1_CMD__SSP1_CMD */ 215 MX23_PAD_SSP1_CMD__SSP1_CMD
215 0x2060 /* MX23_PAD_SSP1_SCK__SSP1_SCK */ 216 MX23_PAD_SSP1_SCK__SSP1_SCK
216 >; 217 >;
217 fsl,drive-strength = <1>; 218 fsl,drive-strength = <MXS_DRIVE_8mA>;
218 fsl,voltage = <1>; 219 fsl,voltage = <MXS_VOLTAGE_HIGH>;
219 fsl,pull-up = <1>; 220 fsl,pull-up = <MXS_PULL_ENABLE>;
220 }; 221 };
221 222
222 mmc0_8bit_pins_a: mmc0-8bit@0 { 223 mmc0_8bit_pins_a: mmc0-8bit@0 {
223 reg = <0>; 224 reg = <0>;
224 fsl,pinmux-ids = < 225 fsl,pinmux-ids = <
225 0x2020 /* MX23_PAD_SSP1_DATA0__SSP1_DATA0 */ 226 MX23_PAD_SSP1_DATA0__SSP1_DATA0
226 0x2030 /* MX23_PAD_SSP1_DATA1__SSP1_DATA1 */ 227 MX23_PAD_SSP1_DATA1__SSP1_DATA1
227 0x2040 /* MX23_PAD_SSP1_DATA2__SSP1_DATA2 */ 228 MX23_PAD_SSP1_DATA2__SSP1_DATA2
228 0x2050 /* MX23_PAD_SSP1_DATA3__SSP1_DATA3 */ 229 MX23_PAD_SSP1_DATA3__SSP1_DATA3
229 0x0082 /* MX23_PAD_GPMI_D08__SSP1_DATA4 */ 230 MX23_PAD_GPMI_D08__SSP1_DATA4
230 0x0092 /* MX23_PAD_GPMI_D09__SSP1_DATA5 */ 231 MX23_PAD_GPMI_D09__SSP1_DATA5
231 0x00a2 /* MX23_PAD_GPMI_D10__SSP1_DATA6 */ 232 MX23_PAD_GPMI_D10__SSP1_DATA6
232 0x00b2 /* MX23_PAD_GPMI_D11__SSP1_DATA7 */ 233 MX23_PAD_GPMI_D11__SSP1_DATA7
233 0x2000 /* MX23_PAD_SSP1_CMD__SSP1_CMD */ 234 MX23_PAD_SSP1_CMD__SSP1_CMD
234 0x2010 /* MX23_PAD_SSP1_DETECT__SSP1_DETECT */ 235 MX23_PAD_SSP1_DETECT__SSP1_DETECT
235 0x2060 /* MX23_PAD_SSP1_SCK__SSP1_SCK */ 236 MX23_PAD_SSP1_SCK__SSP1_SCK
236 >; 237 >;
237 fsl,drive-strength = <1>; 238 fsl,drive-strength = <MXS_DRIVE_8mA>;
238 fsl,voltage = <1>; 239 fsl,voltage = <MXS_VOLTAGE_HIGH>;
239 fsl,pull-up = <1>; 240 fsl,pull-up = <MXS_PULL_ENABLE>;
240 }; 241 };
241 242
242 mmc0_pins_fixup: mmc0-pins-fixup { 243 mmc0_pins_fixup: mmc0-pins-fixup {
243 fsl,pinmux-ids = < 244 fsl,pinmux-ids = <
244 0x2010 /* MX23_PAD_SSP1_DETECT__SSP1_DETECT */ 245 MX23_PAD_SSP1_DETECT__SSP1_DETECT
245 0x2060 /* MX23_PAD_SSP1_SCK__SSP1_SCK */ 246 MX23_PAD_SSP1_SCK__SSP1_SCK
246 >; 247 >;
247 fsl,pull-up = <0>; 248 fsl,pull-up = <MXS_PULL_DISABLE>;
248 }; 249 };
249 250
250 pwm2_pins_a: pwm2@0 { 251 pwm2_pins_a: pwm2@0 {
251 reg = <0>; 252 reg = <0>;
252 fsl,pinmux-ids = < 253 fsl,pinmux-ids = <
253 0x11c0 /* MX23_PAD_PWM2__PWM2 */ 254 MX23_PAD_PWM2__PWM2
254 >; 255 >;
255 fsl,drive-strength = <0>; 256 fsl,drive-strength = <MXS_DRIVE_4mA>;
256 fsl,voltage = <1>; 257 fsl,voltage = <MXS_VOLTAGE_HIGH>;
257 fsl,pull-up = <0>; 258 fsl,pull-up = <MXS_PULL_DISABLE>;
258 }; 259 };
259 260
260 lcdif_24bit_pins_a: lcdif-24bit@0 { 261 lcdif_24bit_pins_a: lcdif-24bit@0 {
261 reg = <0>; 262 reg = <0>;
262 fsl,pinmux-ids = < 263 fsl,pinmux-ids = <
263 0x1000 /* MX23_PAD_LCD_D00__LCD_D0 */ 264 MX23_PAD_LCD_D00__LCD_D00
264 0x1010 /* MX23_PAD_LCD_D01__LCD_D1 */ 265 MX23_PAD_LCD_D01__LCD_D01
265 0x1020 /* MX23_PAD_LCD_D02__LCD_D2 */ 266 MX23_PAD_LCD_D02__LCD_D02
266 0x1030 /* MX23_PAD_LCD_D03__LCD_D3 */ 267 MX23_PAD_LCD_D03__LCD_D03
267 0x1040 /* MX23_PAD_LCD_D04__LCD_D4 */ 268 MX23_PAD_LCD_D04__LCD_D04
268 0x1050 /* MX23_PAD_LCD_D05__LCD_D5 */ 269 MX23_PAD_LCD_D05__LCD_D05
269 0x1060 /* MX23_PAD_LCD_D06__LCD_D6 */ 270 MX23_PAD_LCD_D06__LCD_D06
270 0x1070 /* MX23_PAD_LCD_D07__LCD_D7 */ 271 MX23_PAD_LCD_D07__LCD_D07
271 0x1080 /* MX23_PAD_LCD_D08__LCD_D8 */ 272 MX23_PAD_LCD_D08__LCD_D08
272 0x1090 /* MX23_PAD_LCD_D09__LCD_D9 */ 273 MX23_PAD_LCD_D09__LCD_D09
273 0x10a0 /* MX23_PAD_LCD_D10__LCD_D10 */ 274 MX23_PAD_LCD_D10__LCD_D10
274 0x10b0 /* MX23_PAD_LCD_D11__LCD_D11 */ 275 MX23_PAD_LCD_D11__LCD_D11
275 0x10c0 /* MX23_PAD_LCD_D12__LCD_D12 */ 276 MX23_PAD_LCD_D12__LCD_D12
276 0x10d0 /* MX23_PAD_LCD_D13__LCD_D13 */ 277 MX23_PAD_LCD_D13__LCD_D13
277 0x10e0 /* MX23_PAD_LCD_D14__LCD_D14 */ 278 MX23_PAD_LCD_D14__LCD_D14
278 0x10f0 /* MX23_PAD_LCD_D15__LCD_D15 */ 279 MX23_PAD_LCD_D15__LCD_D15
279 0x1100 /* MX23_PAD_LCD_D16__LCD_D16 */ 280 MX23_PAD_LCD_D16__LCD_D16
280 0x1110 /* MX23_PAD_LCD_D17__LCD_D17 */ 281 MX23_PAD_LCD_D17__LCD_D17
281 0x0081 /* MX23_PAD_GPMI_D08__LCD_D18 */ 282 MX23_PAD_GPMI_D08__LCD_D18
282 0x0091 /* MX23_PAD_GPMI_D09__LCD_D19 */ 283 MX23_PAD_GPMI_D09__LCD_D19
283 0x00a1 /* MX23_PAD_GPMI_D10__LCD_D20 */ 284 MX23_PAD_GPMI_D10__LCD_D20
284 0x00b1 /* MX23_PAD_GPMI_D11__LCD_D21 */ 285 MX23_PAD_GPMI_D11__LCD_D21
285 0x00c1 /* MX23_PAD_GPMI_D12__LCD_D22 */ 286 MX23_PAD_GPMI_D12__LCD_D22
286 0x00d1 /* MX23_PAD_GPMI_D13__LCD_D23 */ 287 MX23_PAD_GPMI_D13__LCD_D23
287 0x1160 /* MX23_PAD_LCD_DOTCK__LCD_DOTCK */ 288 MX23_PAD_LCD_DOTCK__LCD_DOTCK
288 0x1170 /* MX23_PAD_LCD_ENABLE__LCD_ENABLE */ 289 MX23_PAD_LCD_ENABLE__LCD_ENABLE
289 0x1180 /* MX23_PAD_LCD_HSYNC__LCD_HSYNC */ 290 MX23_PAD_LCD_HSYNC__LCD_HSYNC
290 0x1190 /* MX23_PAD_LCD_VSYNC__LCD_VSYNC */ 291 MX23_PAD_LCD_VSYNC__LCD_VSYNC
291 >; 292 >;
292 fsl,drive-strength = <0>; 293 fsl,drive-strength = <MXS_DRIVE_4mA>;
293 fsl,voltage = <1>; 294 fsl,voltage = <MXS_VOLTAGE_HIGH>;
294 fsl,pull-up = <0>; 295 fsl,pull-up = <MXS_PULL_DISABLE>;
295 }; 296 };
296 297
297 spi2_pins_a: spi2@0 { 298 spi2_pins_a: spi2@0 {
298 reg = <0>; 299 reg = <0>;
299 fsl,pinmux-ids = < 300 fsl,pinmux-ids = <
300 0x0182 /* MX23_PAD_GPMI_WRN__SSP2_SCK */ 301 MX23_PAD_GPMI_WRN__SSP2_SCK
301 0x0142 /* MX23_PAD_GPMI_RDY1__SSP2_CMD */ 302 MX23_PAD_GPMI_RDY1__SSP2_CMD
302 0x0002 /* MX23_PAD_GPMI_D00__SSP2_DATA0 */ 303 MX23_PAD_GPMI_D00__SSP2_DATA0
303 0x0032 /* MX23_PAD_GPMI_D03__SSP2_DATA3 */ 304 MX23_PAD_GPMI_D03__SSP2_DATA3
304 >; 305 >;
305 fsl,drive-strength = <1>; 306 fsl,drive-strength = <MXS_DRIVE_8mA>;
306 fsl,voltage = <1>; 307 fsl,voltage = <MXS_VOLTAGE_HIGH>;
307 fsl,pull-up = <1>; 308 fsl,pull-up = <MXS_PULL_ENABLE>;
308 }; 309 };
309 }; 310 };
310 311
diff --git a/arch/arm/boot/dts/imx27-apf27dev.dts b/arch/arm/boot/dts/imx27-apf27dev.dts
index 2a377ca1881a..47c8c26012e4 100644
--- a/arch/arm/boot/dts/imx27-apf27dev.dts
+++ b/arch/arm/boot/dts/imx27-apf27dev.dts
@@ -16,6 +16,26 @@
16 model = "Armadeus Systems APF27Dev docking/development board"; 16 model = "Armadeus Systems APF27Dev docking/development board";
17 compatible = "armadeus,imx27-apf27dev", "armadeus,imx27-apf27", "fsl,imx27"; 17 compatible = "armadeus,imx27-apf27dev", "armadeus,imx27-apf27", "fsl,imx27";
18 18
19 display: display {
20 model = "Chimei-LW700AT9003";
21 native-mode = <&timing0>;
22 bits-per-pixel = <16>; /* non-standard but required */
23 fsl,pcr = <0xfae80083>; /* non-standard but required */
24 display-timings {
25 timing0: 640x480 {
26 clock-frequency = <33000033>;
27 hactive = <800>;
28 vactive = <640>;
29 hback-porch = <96>;
30 hfront-porch = <96>;
31 vback-porch = <20>;
32 vfront-porch = <21>;
33 hsync-len = <64>;
34 vsync-len = <4>;
35 };
36 };
37 };
38
19 gpio-keys { 39 gpio-keys {
20 compatible = "gpio-keys"; 40 compatible = "gpio-keys";
21 41
@@ -50,6 +70,12 @@
50 status = "okay"; 70 status = "okay";
51}; 71};
52 72
73&fb {
74 display = <&display>;
75 fsl,dmacr = <0x00020010>;
76 status = "okay";
77};
78
53&i2c1 { 79&i2c1 {
54 clock-frequency = <400000>; 80 clock-frequency = <400000>;
55 status = "okay"; 81 status = "okay";
diff --git a/arch/arm/boot/dts/imx27.dtsi b/arch/arm/boot/dts/imx27.dtsi
index b7a1c6d950b9..826231eb4446 100644
--- a/arch/arm/boot/dts/imx27.dtsi
+++ b/arch/arm/boot/dts/imx27.dtsi
@@ -123,6 +123,7 @@
123 }; 123 };
124 124
125 pwm: pwm@10006000 { 125 pwm: pwm@10006000 {
126 #pwm-cells = <2>;
126 compatible = "fsl,imx27-pwm"; 127 compatible = "fsl,imx27-pwm";
127 reg = <0x10006000 0x1000>; 128 reg = <0x10006000 0x1000>;
128 interrupts = <23>; 129 interrupts = <23>;
diff --git a/arch/arm/boot/dts/imx28-apf28.dts b/arch/arm/boot/dts/imx28-apf28.dts
index 7eb075876c4c..7198fe3798c6 100644
--- a/arch/arm/boot/dts/imx28-apf28.dts
+++ b/arch/arm/boot/dts/imx28-apf28.dts
@@ -10,7 +10,7 @@
10 */ 10 */
11 11
12/dts-v1/; 12/dts-v1/;
13/include/ "imx28.dtsi" 13#include "imx28.dtsi"
14 14
15/ { 15/ {
16 model = "Armadeus Systems APF28 module"; 16 model = "Armadeus Systems APF28 module";
diff --git a/arch/arm/boot/dts/imx28-apf28dev.dts b/arch/arm/boot/dts/imx28-apf28dev.dts
index b602494c152b..e2efd8d89c4f 100644
--- a/arch/arm/boot/dts/imx28-apf28dev.dts
+++ b/arch/arm/boot/dts/imx28-apf28dev.dts
@@ -10,7 +10,7 @@
10 */ 10 */
11 11
12/* APF28Dev is a docking board for the APF28 SOM */ 12/* APF28Dev is a docking board for the APF28 SOM */
13/include/ "imx28-apf28.dts" 13#include "imx28-apf28.dts"
14 14
15/ { 15/ {
16 model = "Armadeus Systems APF28Dev docking/development board"; 16 model = "Armadeus Systems APF28Dev docking/development board";
@@ -41,30 +41,30 @@
41 hog_pins_apf28dev: hog@0 { 41 hog_pins_apf28dev: hog@0 {
42 reg = <0>; 42 reg = <0>;
43 fsl,pinmux-ids = < 43 fsl,pinmux-ids = <
44 0x1103 /* MX28_PAD_LCD_D16__GPIO_1_16 */ 44 MX28_PAD_LCD_D16__GPIO_1_16
45 0x1113 /* MX28_PAD_LCD_D17__GPIO_1_17 */ 45 MX28_PAD_LCD_D17__GPIO_1_17
46 0x1123 /* MX28_PAD_LCD_D18__GPIO_1_18 */ 46 MX28_PAD_LCD_D18__GPIO_1_18
47 0x1133 /* MX28_PAD_LCD_D19__GPIO_1_19 */ 47 MX28_PAD_LCD_D19__GPIO_1_19
48 0x1143 /* MX28_PAD_LCD_D20__GPIO_1_20 */ 48 MX28_PAD_LCD_D20__GPIO_1_20
49 0x1153 /* MX28_PAD_LCD_D21__GPIO_1_21 */ 49 MX28_PAD_LCD_D21__GPIO_1_21
50 0x1163 /* MX28_PAD_LCD_D22__GPIO_1_22 */ 50 MX28_PAD_LCD_D22__GPIO_1_22
51 >; 51 >;
52 fsl,drive-strength = <0>; 52 fsl,drive-strength = <MXS_DRIVE_4mA>;
53 fsl,voltage = <1>; 53 fsl,voltage = <MXS_VOLTAGE_HIGH>;
54 fsl,pull-up = <0>; 54 fsl,pull-up = <MXS_PULL_DISABLE>;
55 }; 55 };
56 56
57 lcdif_pins_apf28dev: lcdif-apf28dev@0 { 57 lcdif_pins_apf28dev: lcdif-apf28dev@0 {
58 reg = <0>; 58 reg = <0>;
59 fsl,pinmux-ids = < 59 fsl,pinmux-ids = <
60 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ 60 MX28_PAD_LCD_RD_E__LCD_VSYNC
61 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ 61 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
62 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ 62 MX28_PAD_LCD_RS__LCD_DOTCLK
63 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ 63 MX28_PAD_LCD_CS__LCD_ENABLE
64 >; 64 >;
65 fsl,drive-strength = <0>; 65 fsl,drive-strength = <MXS_DRIVE_4mA>;
66 fsl,voltage = <1>; 66 fsl,voltage = <MXS_VOLTAGE_HIGH>;
67 fsl,pull-up = <0>; 67 fsl,pull-up = <MXS_PULL_DISABLE>;
68 }; 68 };
69 }; 69 };
70 70
diff --git a/arch/arm/boot/dts/imx28-apx4devkit.dts b/arch/arm/boot/dts/imx28-apx4devkit.dts
index 0e7fed47bd8d..6f254ca816cb 100644
--- a/arch/arm/boot/dts/imx28-apx4devkit.dts
+++ b/arch/arm/boot/dts/imx28-apx4devkit.dts
@@ -1,5 +1,5 @@
1/dts-v1/; 1/dts-v1/;
2/include/ "imx28.dtsi" 2#include "imx28.dtsi"
3 3
4/ { 4/ {
5 model = "Bluegiga APX4 Development Kit"; 5 model = "Bluegiga APX4 Development Kit";
@@ -40,53 +40,53 @@
40 hog_pins_a: hog@0 { 40 hog_pins_a: hog@0 {
41 reg = <0>; 41 reg = <0>;
42 fsl,pinmux-ids = < 42 fsl,pinmux-ids = <
43 0x0113 /* MX28_PAD_GPMI_CE1N__GPIO_0_17 */ 43 MX28_PAD_GPMI_CE1N__GPIO_0_17
44 0x0153 /* MX28_PAD_GPMI_RDY1__GPIO_0_21 */ 44 MX28_PAD_GPMI_RDY1__GPIO_0_21
45 0x2123 /* MX28_PAD_SSP2_MISO__GPIO_2_18 */ 45 MX28_PAD_SSP2_MISO__GPIO_2_18
46 0x2131 /* MX28_PAD_SSP2_SS0__GPIO_2_19 */ 46 MX28_PAD_SSP2_SS0__AUART3_TX /* was: 0x2131 - MX28_PAD_SSP2_SS0__GPIO_2_19 */
47 0x31c3 /* MX28_PAD_PWM3__GPIO_3_28 */ 47 MX28_PAD_PWM3__GPIO_3_28
48 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ 48 MX28_PAD_LCD_RESET__GPIO_3_30
49 0x4143 /* MX28_PAD_JTAG_RTCK__GPIO_4_20 */ 49 MX28_PAD_JTAG_RTCK__GPIO_4_20
50 >; 50 >;
51 fsl,drive-strength = <0>; 51 fsl,drive-strength = <MXS_DRIVE_4mA>;
52 fsl,voltage = <1>; 52 fsl,voltage = <MXS_VOLTAGE_HIGH>;
53 fsl,pull-up = <0>; 53 fsl,pull-up = <MXS_PULL_DISABLE>;
54 }; 54 };
55 55
56 lcdif_pins_apx4: lcdif-apx4@0 { 56 lcdif_pins_apx4: lcdif-apx4@0 {
57 reg = <0>; 57 reg = <0>;
58 fsl,pinmux-ids = < 58 fsl,pinmux-ids = <
59 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ 59 MX28_PAD_LCD_RD_E__LCD_VSYNC
60 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ 60 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
61 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ 61 MX28_PAD_LCD_RS__LCD_DOTCLK
62 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ 62 MX28_PAD_LCD_CS__LCD_ENABLE
63 >; 63 >;
64 fsl,drive-strength = <0>; 64 fsl,drive-strength = <MXS_DRIVE_4mA>;
65 fsl,voltage = <1>; 65 fsl,voltage = <MXS_VOLTAGE_HIGH>;
66 fsl,pull-up = <0>; 66 fsl,pull-up = <MXS_PULL_DISABLE>;
67 }; 67 };
68 68
69 mmc2_4bit_pins_apx4: mmc2-4bit-apx4@0 { 69 mmc2_4bit_pins_apx4: mmc2-4bit-apx4@0 {
70 reg = <0>; 70 reg = <0>;
71 fsl,pinmux-ids = < 71 fsl,pinmux-ids = <
72 0x2041 /* MX28_PAD_SSP0_DATA4__SSP2_D0 */ 72 MX28_PAD_SSP0_DATA4__SSP2_D0
73 0x2051 /* MX28_PAD_SSP0_DATA5__SSP2_D3 */ 73 MX28_PAD_SSP0_DATA5__SSP2_D3
74 0x2061 /* MX28_PAD_SSP0_DATA6__SSP2_CMD */ 74 MX28_PAD_SSP0_DATA6__SSP2_CMD
75 0x2071 /* MX28_PAD_SSP0_DATA7__SSP2_SCK */ 75 MX28_PAD_SSP0_DATA7__SSP2_SCK
76 0x2141 /* MX28_PAD_SSP2_SS1__SSP2_D1 */ 76 MX28_PAD_SSP2_SS1__SSP2_D1
77 0x2151 /* MX28_PAD_SSP2_SS2__SSP2_D2 */ 77 MX28_PAD_SSP2_SS2__SSP2_D2
78 >; 78 >;
79 fsl,drive-strength = <1>; 79 fsl,drive-strength = <MXS_DRIVE_8mA>;
80 fsl,voltage = <1>; 80 fsl,voltage = <MXS_VOLTAGE_HIGH>;
81 fsl,pull-up = <1>; 81 fsl,pull-up = <MXS_PULL_ENABLE>;
82 }; 82 };
83 83
84 mmc2_sck_cfg_apx4: mmc2-sck-cfg-apx4 { 84 mmc2_sck_cfg_apx4: mmc2-sck-cfg-apx4 {
85 fsl,pinmux-ids = < 85 fsl,pinmux-ids = <
86 0x2071 /* MX28_PAD_SSP0_DATA7__SSP2_SCK */ 86 MX28_PAD_SSP0_DATA7__SSP2_SCK
87 >; 87 >;
88 fsl,drive-strength = <2>; 88 fsl,drive-strength = <MXS_DRIVE_12mA>;
89 fsl,pull-up = <0>; 89 fsl,pull-up = <MXS_PULL_DISABLE>;
90 }; 90 };
91 }; 91 };
92 92
diff --git a/arch/arm/boot/dts/imx28-cfa10036.dts b/arch/arm/boot/dts/imx28-cfa10036.dts
index 1ec8c94bbac9..cabb6171a19d 100644
--- a/arch/arm/boot/dts/imx28-cfa10036.dts
+++ b/arch/arm/boot/dts/imx28-cfa10036.dts
@@ -10,7 +10,7 @@
10 */ 10 */
11 11
12/dts-v1/; 12/dts-v1/;
13/include/ "imx28.dtsi" 13#include "imx28.dtsi"
14 14
15/ { 15/ {
16 model = "Crystalfontz CFA-10036 Board"; 16 model = "Crystalfontz CFA-10036 Board";
@@ -26,31 +26,31 @@
26 ssd1306_cfa10036: ssd1306-10036@0 { 26 ssd1306_cfa10036: ssd1306-10036@0 {
27 reg = <0>; 27 reg = <0>;
28 fsl,pinmux-ids = < 28 fsl,pinmux-ids = <
29 0x2073 /* MX28_PAD_SSP0_D7__GPIO_2_7 */ 29 MX28_PAD_SSP0_DATA7__GPIO_2_7
30 >; 30 >;
31 fsl,drive-strength = <0>; 31 fsl,drive-strength = <MXS_DRIVE_4mA>;
32 fsl,voltage = <1>; 32 fsl,voltage = <MXS_VOLTAGE_HIGH>;
33 fsl,pull-up = <0>; 33 fsl,pull-up = <MXS_PULL_DISABLE>;
34 }; 34 };
35 35
36 led_pins_cfa10036: leds-10036@0 { 36 led_pins_cfa10036: leds-10036@0 {
37 reg = <0>; 37 reg = <0>;
38 fsl,pinmux-ids = < 38 fsl,pinmux-ids = <
39 0x3043 /* MX28_PAD_AUART1_RX__GPIO_3_4 */ 39 MX28_PAD_AUART1_RX__GPIO_3_4
40 >; 40 >;
41 fsl,drive-strength = <0>; 41 fsl,drive-strength = <MXS_DRIVE_4mA>;
42 fsl,voltage = <1>; 42 fsl,voltage = <MXS_VOLTAGE_HIGH>;
43 fsl,pull-up = <0>; 43 fsl,pull-up = <MXS_PULL_DISABLE>;
44 }; 44 };
45 45
46 usb0_otg_cfa10036: otg-10036@0 { 46 usb0_otg_cfa10036: otg-10036@0 {
47 reg = <0>; 47 reg = <0>;
48 fsl,pinmux-ids = < 48 fsl,pinmux-ids = <
49 0x0142 /* MX28_PAD_GPMI_READY0__USB0_ID */ 49 MX28_PAD_GPMI_RDY0__USB0_ID
50 >; 50 >;
51 fsl,drive-strength = <0>; 51 fsl,drive-strength = <MXS_DRIVE_4mA>;
52 fsl,voltage = <1>; 52 fsl,voltage = <MXS_VOLTAGE_HIGH>;
53 fsl,pull-up = <0>; 53 fsl,pull-up = <MXS_PULL_DISABLE>;
54 }; 54 };
55 55
56 }; 56 };
diff --git a/arch/arm/boot/dts/imx28-cfa10037.dts b/arch/arm/boot/dts/imx28-cfa10037.dts
index 182b99fe35f3..f93e9a700e52 100644
--- a/arch/arm/boot/dts/imx28-cfa10037.dts
+++ b/arch/arm/boot/dts/imx28-cfa10037.dts
@@ -13,7 +13,7 @@
13 * The CFA-10049 is an expansion board for the CFA-10036 module, thus we 13 * The CFA-10049 is an expansion board for the CFA-10036 module, thus we
14 * need to include the CFA-10036 DTS. 14 * need to include the CFA-10036 DTS.
15 */ 15 */
16/include/ "imx28-cfa10036.dts" 16#include "imx28-cfa10036.dts"
17 17
18/ { 18/ {
19 model = "Crystalfontz CFA-10037 Board"; 19 model = "Crystalfontz CFA-10037 Board";
@@ -25,21 +25,21 @@
25 usb_pins_cfa10037: usb-10037@0 { 25 usb_pins_cfa10037: usb-10037@0 {
26 reg = <0>; 26 reg = <0>;
27 fsl,pinmux-ids = < 27 fsl,pinmux-ids = <
28 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ 28 MX28_PAD_GPMI_D07__GPIO_0_7
29 >; 29 >;
30 fsl,drive-strength = <0>; 30 fsl,drive-strength = <MXS_DRIVE_4mA>;
31 fsl,voltage = <1>; 31 fsl,voltage = <MXS_VOLTAGE_HIGH>;
32 fsl,pull-up = <0>; 32 fsl,pull-up = <MXS_PULL_DISABLE>;
33 }; 33 };
34 34
35 mac0_pins_cfa10037: mac0-10037@0 { 35 mac0_pins_cfa10037: mac0-10037@0 {
36 reg = <0>; 36 reg = <0>;
37 fsl,pinmux-ids = < 37 fsl,pinmux-ids = <
38 0x2153 /* MX28_PAD_SSP2_D5__GPIO_2_21 */ 38 MX28_PAD_SSP2_SS2__GPIO_2_21
39 >; 39 >;
40 fsl,drive-strength = <0>; 40 fsl,drive-strength = <MXS_DRIVE_4mA>;
41 fsl,voltage = <1>; 41 fsl,voltage = <MXS_VOLTAGE_HIGH>;
42 fsl,pull-up = <0>; 42 fsl,pull-up = <MXS_PULL_DISABLE>;
43 }; 43 };
44 }; 44 };
45 }; 45 };
diff --git a/arch/arm/boot/dts/imx28-cfa10049.dts b/arch/arm/boot/dts/imx28-cfa10049.dts
index 06e4cfaf7dd2..7087b4bf6a8f 100644
--- a/arch/arm/boot/dts/imx28-cfa10049.dts
+++ b/arch/arm/boot/dts/imx28-cfa10049.dts
@@ -13,7 +13,7 @@
13 * The CFA-10049 is an expansion board for the CFA-10036 module, thus we 13 * The CFA-10049 is an expansion board for the CFA-10036 module, thus we
14 * need to include the CFA-10036 DTS. 14 * need to include the CFA-10036 DTS.
15 */ 15 */
16/include/ "imx28-cfa10036.dts" 16#include "imx28-cfa10036.dts"
17 17
18/ { 18/ {
19 model = "Crystalfontz CFA-10049 Board"; 19 model = "Crystalfontz CFA-10049 Board";
@@ -25,150 +25,150 @@
25 usb_pins_cfa10049: usb-10049@0 { 25 usb_pins_cfa10049: usb-10049@0 {
26 reg = <0>; 26 reg = <0>;
27 fsl,pinmux-ids = < 27 fsl,pinmux-ids = <
28 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ 28 MX28_PAD_GPMI_D07__GPIO_0_7
29 >; 29 >;
30 fsl,drive-strength = <0>; 30 fsl,drive-strength = <MXS_DRIVE_4mA>;
31 fsl,voltage = <1>; 31 fsl,voltage = <MXS_VOLTAGE_HIGH>;
32 fsl,pull-up = <0>; 32 fsl,pull-up = <MXS_PULL_DISABLE>;
33 }; 33 };
34 34
35 i2cmux_pins_cfa10049: i2cmux-10049@0 { 35 i2cmux_pins_cfa10049: i2cmux-10049@0 {
36 reg = <0>; 36 reg = <0>;
37 fsl,pinmux-ids = < 37 fsl,pinmux-ids = <
38 0x1163 /* MX28_PAD_LCD_D22__GPIO_1_22 */ 38 MX28_PAD_LCD_D22__GPIO_1_22
39 0x1173 /* MX28_PAD_LCD_D22__GPIO_1_23 */ 39 MX28_PAD_LCD_D23__GPIO_1_23
40 >; 40 >;
41 fsl,drive-strength = <0>; 41 fsl,drive-strength = <MXS_DRIVE_4mA>;
42 fsl,voltage = <1>; 42 fsl,voltage = <MXS_VOLTAGE_HIGH>;
43 fsl,pull-up = <0>; 43 fsl,pull-up = <MXS_PULL_DISABLE>;
44 }; 44 };
45 45
46 mac0_pins_cfa10049: mac0-10049@0 { 46 mac0_pins_cfa10049: mac0-10049@0 {
47 reg = <0>; 47 reg = <0>;
48 fsl,pinmux-ids = < 48 fsl,pinmux-ids = <
49 0x2153 /* MX28_PAD_SSP2_D5__GPIO_2_21 */ 49 MX28_PAD_SSP2_SS2__GPIO_2_21
50 >; 50 >;
51 fsl,drive-strength = <0>; 51 fsl,drive-strength = <MXS_DRIVE_4mA>;
52 fsl,voltage = <1>; 52 fsl,voltage = <MXS_VOLTAGE_HIGH>;
53 fsl,pull-up = <0>; 53 fsl,pull-up = <MXS_PULL_DISABLE>;
54 }; 54 };
55 55
56 pca_pins_cfa10049: pca-10049@0 { 56 pca_pins_cfa10049: pca-10049@0 {
57 reg = <0>; 57 reg = <0>;
58 fsl,pinmux-ids = < 58 fsl,pinmux-ids = <
59 0x2133 /* MX28_PAD_SSP2_D3__GPIO_2_19 */ 59 MX28_PAD_SSP2_SS0__GPIO_2_19
60 >; 60 >;
61 fsl,drive-strength = <0>; 61 fsl,drive-strength = <MXS_DRIVE_4mA>;
62 fsl,voltage = <1>; 62 fsl,voltage = <MXS_VOLTAGE_HIGH>;
63 fsl,pull-up = <1>; 63 fsl,pull-up = <MXS_PULL_ENABLE>;
64 }; 64 };
65 65
66 rotary_pins_cfa10049: rotary-10049@0 { 66 rotary_pins_cfa10049: rotary-10049@0 {
67 reg = <0>; 67 reg = <0>;
68 fsl,pinmux-ids = < 68 fsl,pinmux-ids = <
69 0x3183 /* MX28_PAD_I2C0_SCL__GPIO_3_24 */ 69 MX28_PAD_I2C0_SCL__GPIO_3_24
70 0x3193 /* MX28_PAD_I2C0_SDA__GPIO_3_25 */ 70 MX28_PAD_I2C0_SDA__GPIO_3_25
71 >; 71 >;
72 fsl,drive-strength = <0>; 72 fsl,drive-strength = <MXS_DRIVE_4mA>;
73 fsl,voltage = <1>; 73 fsl,voltage = <MXS_VOLTAGE_HIGH>;
74 fsl,pull-up = <1>; 74 fsl,pull-up = <MXS_PULL_ENABLE>;
75 }; 75 };
76 76
77 rotary_btn_pins_cfa10049: rotary-btn-10049@0 { 77 rotary_btn_pins_cfa10049: rotary-btn-10049@0 {
78 reg = <0>; 78 reg = <0>;
79 fsl,pinmux-ids = < 79 fsl,pinmux-ids = <
80 0x31a3 /* MX28_PAD_SAIF_SDATA0__GPIO_3_26 */ 80 MX28_PAD_SAIF1_SDATA0__GPIO_3_26
81 >; 81 >;
82 fsl,drive-strength = <0>; 82 fsl,drive-strength = <MXS_DRIVE_4mA>;
83 fsl,voltage = <1>; 83 fsl,voltage = <MXS_VOLTAGE_HIGH>;
84 fsl,pull-up = <1>; 84 fsl,pull-up = <MXS_PULL_ENABLE>;
85 }; 85 };
86 86
87 spi2_pins_cfa10049: spi2-cfa10049@0 { 87 spi2_pins_cfa10049: spi2-cfa10049@0 {
88 reg = <0>; 88 reg = <0>;
89 fsl,pinmux-ids = < 89 fsl,pinmux-ids = <
90 0x2103 /* MX28_PAD_SSP2_SCK__GPIO_2_16 */ 90 MX28_PAD_SSP2_SCK__GPIO_2_16
91 0x2113 /* MX28_PAD_SSP2_CMD__GPIO_2_17 */ 91 MX28_PAD_SSP2_MOSI__GPIO_2_17
92 0x2123 /* MX28_PAD_SSP2_D0__GPIO_2_18 */ 92 MX28_PAD_SSP2_MISO__GPIO_2_18
93 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ 93 MX28_PAD_AUART1_TX__GPIO_3_5
94 >; 94 >;
95 fsl,drive-strength = <1>; 95 fsl,drive-strength = <MXS_DRIVE_8mA>;
96 fsl,voltage = <1>; 96 fsl,voltage = <MXS_VOLTAGE_HIGH>;
97 fsl,pull-up = <1>; 97 fsl,pull-up = <MXS_PULL_ENABLE>;
98 }; 98 };
99 99
100 spi3_pins_cfa10049: spi3-cfa10049@0 { 100 spi3_pins_cfa10049: spi3-cfa10049@0 {
101 reg = <0>; 101 reg = <0>;
102 fsl,pinmux-ids = < 102 fsl,pinmux-ids = <
103 0x0183 /* MX28_PAD_GPMI_RDN__GPIO_0_24 */ 103 MX28_PAD_GPMI_RDN__GPIO_0_24
104 0x01c3 /* MX28_PAD_GPMI_RESETN__GPIO_0_28 */ 104 MX28_PAD_GPMI_RESETN__GPIO_0_28
105 0x0113 /* MX28_PAD_GPMI_CE1N__GPIO_0_17 */ 105 MX28_PAD_GPMI_CE1N__GPIO_0_17
106 0x01a3 /* MX28_PAD_GPMI_ALE__GPIO_0_26 */ 106 MX28_PAD_GPMI_ALE__GPIO_0_26
107 0x01b3 /* MX28_PAD_GPMI_CLE__GPIO_0_27 */ 107 MX28_PAD_GPMI_CLE__GPIO_0_27
108 >; 108 >;
109 fsl,drive-strength = <1>; 109 fsl,drive-strength = <MXS_DRIVE_8mA>;
110 fsl,voltage = <1>; 110 fsl,voltage = <MXS_VOLTAGE_HIGH>;
111 fsl,pull-up = <1>; 111 fsl,pull-up = <MXS_PULL_ENABLE>;
112 }; 112 };
113 113
114 lcdif_18bit_pins_cfa10049: lcdif-18bit@0 { 114 lcdif_18bit_pins_cfa10049: lcdif-18bit@0 {
115 reg = <0>; 115 reg = <0>;
116 fsl,pinmux-ids = < 116 fsl,pinmux-ids = <
117 0x1000 /* MX28_PAD_LCD_D00__LCD_D0 */ 117 MX28_PAD_LCD_D00__LCD_D0
118 0x1010 /* MX28_PAD_LCD_D01__LCD_D1 */ 118 MX28_PAD_LCD_D01__LCD_D1
119 0x1020 /* MX28_PAD_LCD_D02__LCD_D2 */ 119 MX28_PAD_LCD_D02__LCD_D2
120 0x1030 /* MX28_PAD_LCD_D03__LCD_D3 */ 120 MX28_PAD_LCD_D03__LCD_D3
121 0x1040 /* MX28_PAD_LCD_D04__LCD_D4 */ 121 MX28_PAD_LCD_D04__LCD_D4
122 0x1050 /* MX28_PAD_LCD_D05__LCD_D5 */ 122 MX28_PAD_LCD_D05__LCD_D5
123 0x1060 /* MX28_PAD_LCD_D06__LCD_D6 */ 123 MX28_PAD_LCD_D06__LCD_D6
124 0x1070 /* MX28_PAD_LCD_D07__LCD_D7 */ 124 MX28_PAD_LCD_D07__LCD_D7
125 0x1080 /* MX28_PAD_LCD_D08__LCD_D8 */ 125 MX28_PAD_LCD_D08__LCD_D8
126 0x1090 /* MX28_PAD_LCD_D09__LCD_D9 */ 126 MX28_PAD_LCD_D09__LCD_D9
127 0x10a0 /* MX28_PAD_LCD_D10__LCD_D10 */ 127 MX28_PAD_LCD_D10__LCD_D10
128 0x10b0 /* MX28_PAD_LCD_D11__LCD_D11 */ 128 MX28_PAD_LCD_D11__LCD_D11
129 0x10c0 /* MX28_PAD_LCD_D12__LCD_D12 */ 129 MX28_PAD_LCD_D12__LCD_D12
130 0x10d0 /* MX28_PAD_LCD_D13__LCD_D13 */ 130 MX28_PAD_LCD_D13__LCD_D13
131 0x10e0 /* MX28_PAD_LCD_D14__LCD_D14 */ 131 MX28_PAD_LCD_D14__LCD_D14
132 0x10f0 /* MX28_PAD_LCD_D15__LCD_D15 */ 132 MX28_PAD_LCD_D15__LCD_D15
133 0x1100 /* MX28_PAD_LCD_D16__LCD_D16 */ 133 MX28_PAD_LCD_D16__LCD_D16
134 0x1110 /* MX28_PAD_LCD_D17__LCD_D17 */ 134 MX28_PAD_LCD_D17__LCD_D17
135 >; 135 >;
136 fsl,drive-strength = <0>; 136 fsl,drive-strength = <MXS_DRIVE_4mA>;
137 fsl,voltage = <1>; 137 fsl,voltage = <MXS_VOLTAGE_HIGH>;
138 fsl,pull-up = <0>; 138 fsl,pull-up = <MXS_PULL_DISABLE>;
139 }; 139 };
140 140
141 lcdif_pins_cfa10049: lcdif-evk@0 { 141 lcdif_pins_cfa10049: lcdif-evk@0 {
142 reg = <0>; 142 reg = <0>;
143 fsl,pinmux-ids = < 143 fsl,pinmux-ids = <
144 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ 144 MX28_PAD_LCD_RD_E__LCD_VSYNC
145 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ 145 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
146 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ 146 MX28_PAD_LCD_RS__LCD_DOTCLK
147 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ 147 MX28_PAD_LCD_CS__LCD_ENABLE
148 >; 148 >;
149 fsl,drive-strength = <0>; 149 fsl,drive-strength = <MXS_DRIVE_4mA>;
150 fsl,voltage = <1>; 150 fsl,voltage = <MXS_VOLTAGE_HIGH>;
151 fsl,pull-up = <0>; 151 fsl,pull-up = <MXS_PULL_DISABLE>;
152 }; 152 };
153 153
154 lcdif_pins_cfa10049_pullup: lcdif-10049-pullup@0 { 154 lcdif_pins_cfa10049_pullup: lcdif-10049-pullup@0 {
155 reg = <0>; 155 reg = <0>;
156 fsl,pinmux-ids = < 156 fsl,pinmux-ids = <
157 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ 157 MX28_PAD_LCD_RESET__GPIO_3_30
158 >; 158 >;
159 fsl,drive-strength = <0>; 159 fsl,drive-strength = <MXS_DRIVE_4mA>;
160 fsl,voltage = <1>; 160 fsl,voltage = <MXS_VOLTAGE_HIGH>;
161 fsl,pull-up = <1>; 161 fsl,pull-up = <MXS_PULL_ENABLE>;
162 }; 162 };
163 163
164 w1_gpio_pins: w1-gpio@0 { 164 w1_gpio_pins: w1-gpio@0 {
165 reg = <0>; 165 reg = <0>;
166 fsl,pinmux-ids = < 166 fsl,pinmux-ids = <
167 0x1153 /* MX28_PAD_LCD_D21__GPIO_1_21 */ 167 MX28_PAD_LCD_D21__GPIO_1_21
168 >; 168 >;
169 fsl,drive-strength = <1>; 169 fsl,drive-strength = <MXS_DRIVE_8mA>;
170 fsl,voltage = <1>; 170 fsl,voltage = <MXS_VOLTAGE_HIGH>;
171 fsl,pull-up = <0>; /* 0 will enable the keeper */ 171 fsl,pull-up = <MXS_PULL_DISABLE>; /* 0 will enable the keeper */
172 }; 172 };
173 }; 173 };
174 174
diff --git a/arch/arm/boot/dts/imx28-cfa10055.dts b/arch/arm/boot/dts/imx28-cfa10055.dts
index 171bcbe1ec4b..c3900e7ba331 100644
--- a/arch/arm/boot/dts/imx28-cfa10055.dts
+++ b/arch/arm/boot/dts/imx28-cfa10055.dts
@@ -14,7 +14,7 @@
14 * The CFA-10055 is an expansion board for the CFA-10036 module and 14 * The CFA-10055 is an expansion board for the CFA-10036 module and
15 * CFA-10037, thus we need to include the CFA-10037 DTS. 15 * CFA-10037, thus we need to include the CFA-10037 DTS.
16 */ 16 */
17/include/ "imx28-cfa10037.dts" 17#include "imx28-cfa10037.dts"
18 18
19/ { 19/ {
20 model = "Crystalfontz CFA-10055 Board"; 20 model = "Crystalfontz CFA-10055 Board";
@@ -26,64 +26,64 @@
26 spi2_pins_cfa10055: spi2-cfa10055@0 { 26 spi2_pins_cfa10055: spi2-cfa10055@0 {
27 reg = <0>; 27 reg = <0>;
28 fsl,pinmux-ids = < 28 fsl,pinmux-ids = <
29 0x2103 /* MX28_PAD_SSP2_SCK__GPIO_2_16 */ 29 MX28_PAD_SSP2_SCK__GPIO_2_16
30 0x2113 /* MX28_PAD_SSP2_CMD__GPIO_2_17 */ 30 MX28_PAD_SSP2_MOSI__GPIO_2_17
31 0x2123 /* MX28_PAD_SSP2_D0__GPIO_2_18 */ 31 MX28_PAD_SSP2_MISO__GPIO_2_18
32 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ 32 MX28_PAD_AUART1_TX__GPIO_3_5
33 >; 33 >;
34 fsl,drive-strength = <1>; 34 fsl,drive-strength = <MXS_DRIVE_8mA>;
35 fsl,voltage = <1>; 35 fsl,voltage = <MXS_VOLTAGE_HIGH>;
36 fsl,pull-up = <1>; 36 fsl,pull-up = <MXS_PULL_ENABLE>;
37 }; 37 };
38 38
39 lcdif_18bit_pins_cfa10055: lcdif-18bit@0 { 39 lcdif_18bit_pins_cfa10055: lcdif-18bit@0 {
40 reg = <0>; 40 reg = <0>;
41 fsl,pinmux-ids = < 41 fsl,pinmux-ids = <
42 0x1000 /* MX28_PAD_LCD_D00__LCD_D0 */ 42 MX28_PAD_LCD_D00__LCD_D0
43 0x1010 /* MX28_PAD_LCD_D01__LCD_D1 */ 43 MX28_PAD_LCD_D01__LCD_D1
44 0x1020 /* MX28_PAD_LCD_D02__LCD_D2 */ 44 MX28_PAD_LCD_D02__LCD_D2
45 0x1030 /* MX28_PAD_LCD_D03__LCD_D3 */ 45 MX28_PAD_LCD_D03__LCD_D3
46 0x1040 /* MX28_PAD_LCD_D04__LCD_D4 */ 46 MX28_PAD_LCD_D04__LCD_D4
47 0x1050 /* MX28_PAD_LCD_D05__LCD_D5 */ 47 MX28_PAD_LCD_D05__LCD_D5
48 0x1060 /* MX28_PAD_LCD_D06__LCD_D6 */ 48 MX28_PAD_LCD_D06__LCD_D6
49 0x1070 /* MX28_PAD_LCD_D07__LCD_D7 */ 49 MX28_PAD_LCD_D07__LCD_D7
50 0x1080 /* MX28_PAD_LCD_D08__LCD_D8 */ 50 MX28_PAD_LCD_D08__LCD_D8
51 0x1090 /* MX28_PAD_LCD_D09__LCD_D9 */ 51 MX28_PAD_LCD_D09__LCD_D9
52 0x10a0 /* MX28_PAD_LCD_D10__LCD_D10 */ 52 MX28_PAD_LCD_D10__LCD_D10
53 0x10b0 /* MX28_PAD_LCD_D11__LCD_D11 */ 53 MX28_PAD_LCD_D11__LCD_D11
54 0x10c0 /* MX28_PAD_LCD_D12__LCD_D12 */ 54 MX28_PAD_LCD_D12__LCD_D12
55 0x10d0 /* MX28_PAD_LCD_D13__LCD_D13 */ 55 MX28_PAD_LCD_D13__LCD_D13
56 0x10e0 /* MX28_PAD_LCD_D14__LCD_D14 */ 56 MX28_PAD_LCD_D14__LCD_D14
57 0x10f0 /* MX28_PAD_LCD_D15__LCD_D15 */ 57 MX28_PAD_LCD_D15__LCD_D15
58 0x1100 /* MX28_PAD_LCD_D16__LCD_D16 */ 58 MX28_PAD_LCD_D16__LCD_D16
59 0x1110 /* MX28_PAD_LCD_D17__LCD_D17 */ 59 MX28_PAD_LCD_D17__LCD_D17
60 >; 60 >;
61 fsl,drive-strength = <0>; 61 fsl,drive-strength = <MXS_DRIVE_4mA>;
62 fsl,voltage = <1>; 62 fsl,voltage = <MXS_VOLTAGE_HIGH>;
63 fsl,pull-up = <0>; 63 fsl,pull-up = <MXS_PULL_DISABLE>;
64 }; 64 };
65 65
66 lcdif_pins_cfa10055: lcdif-evk@0 { 66 lcdif_pins_cfa10055: lcdif-evk@0 {
67 reg = <0>; 67 reg = <0>;
68 fsl,pinmux-ids = < 68 fsl,pinmux-ids = <
69 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ 69 MX28_PAD_LCD_RD_E__LCD_VSYNC
70 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ 70 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
71 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ 71 MX28_PAD_LCD_RS__LCD_DOTCLK
72 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ 72 MX28_PAD_LCD_CS__LCD_ENABLE
73 >; 73 >;
74 fsl,drive-strength = <0>; 74 fsl,drive-strength = <MXS_DRIVE_4mA>;
75 fsl,voltage = <1>; 75 fsl,voltage = <MXS_VOLTAGE_HIGH>;
76 fsl,pull-up = <0>; 76 fsl,pull-up = <MXS_PULL_DISABLE>;
77 }; 77 };
78 78
79 lcdif_pins_cfa10055_pullup: lcdif-10055-pullup@0 { 79 lcdif_pins_cfa10055_pullup: lcdif-10055-pullup@0 {
80 reg = <0>; 80 reg = <0>;
81 fsl,pinmux-ids = < 81 fsl,pinmux-ids = <
82 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ 82 MX28_PAD_LCD_RESET__GPIO_3_30
83 >; 83 >;
84 fsl,drive-strength = <0>; 84 fsl,drive-strength = <MXS_DRIVE_4mA>;
85 fsl,voltage = <1>; 85 fsl,voltage = <MXS_VOLTAGE_HIGH>;
86 fsl,pull-up = <1>; 86 fsl,pull-up = <MXS_PULL_ENABLE>;
87 }; 87 };
88 }; 88 };
89 89
diff --git a/arch/arm/boot/dts/imx28-cfa10056.dts b/arch/arm/boot/dts/imx28-cfa10056.dts
index b45dd0e4ee57..cef959a97219 100644
--- a/arch/arm/boot/dts/imx28-cfa10056.dts
+++ b/arch/arm/boot/dts/imx28-cfa10056.dts
@@ -13,7 +13,7 @@
13 * The CFA-10055 is an expansion board for the CFA-10036 module and 13 * The CFA-10055 is an expansion board for the CFA-10036 module and
14 * CFA-10037, thus we need to include the CFA-10037 DTS. 14 * CFA-10037, thus we need to include the CFA-10037 DTS.
15 */ 15 */
16/include/ "imx28-cfa10037.dts" 16#include "imx28-cfa10037.dts"
17 17
18/ { 18/ {
19 model = "Crystalfontz CFA-10056 Board"; 19 model = "Crystalfontz CFA-10056 Board";
@@ -25,37 +25,37 @@
25 spi2_pins_cfa10056: spi2-cfa10056@0 { 25 spi2_pins_cfa10056: spi2-cfa10056@0 {
26 reg = <0>; 26 reg = <0>;
27 fsl,pinmux-ids = < 27 fsl,pinmux-ids = <
28 0x2103 /* MX28_PAD_SSP2_SCK__GPIO_2_16 */ 28 MX28_PAD_SSP2_SCK__GPIO_2_16
29 0x2113 /* MX28_PAD_SSP2_CMD__GPIO_2_17 */ 29 MX28_PAD_SSP2_MOSI__GPIO_2_17
30 0x2123 /* MX28_PAD_SSP2_D0__GPIO_2_18 */ 30 MX28_PAD_SSP2_MISO__GPIO_2_18
31 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ 31 MX28_PAD_AUART1_TX__GPIO_3_5
32 >; 32 >;
33 fsl,drive-strength = <1>; 33 fsl,drive-strength = <MXS_DRIVE_8mA>;
34 fsl,voltage = <1>; 34 fsl,voltage = <MXS_VOLTAGE_HIGH>;
35 fsl,pull-up = <1>; 35 fsl,pull-up = <MXS_PULL_ENABLE>;
36 }; 36 };
37 37
38 lcdif_pins_cfa10056: lcdif-10056@0 { 38 lcdif_pins_cfa10056: lcdif-10056@0 {
39 reg = <0>; 39 reg = <0>;
40 fsl,pinmux-ids = < 40 fsl,pinmux-ids = <
41 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ 41 MX28_PAD_LCD_RD_E__LCD_VSYNC
42 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ 42 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
43 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ 43 MX28_PAD_LCD_RS__LCD_DOTCLK
44 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ 44 MX28_PAD_LCD_CS__LCD_ENABLE
45 >; 45 >;
46 fsl,drive-strength = <0>; 46 fsl,drive-strength = <MXS_DRIVE_4mA>;
47 fsl,voltage = <1>; 47 fsl,voltage = <MXS_VOLTAGE_HIGH>;
48 fsl,pull-up = <0>; 48 fsl,pull-up = <MXS_PULL_DISABLE>;
49 }; 49 };
50 50
51 lcdif_pins_cfa10056_pullup: lcdif-10056-pullup@0 { 51 lcdif_pins_cfa10056_pullup: lcdif-10056-pullup@0 {
52 reg = <0>; 52 reg = <0>;
53 fsl,pinmux-ids = < 53 fsl,pinmux-ids = <
54 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ 54 MX28_PAD_LCD_RESET__GPIO_3_30
55 >; 55 >;
56 fsl,drive-strength = <0>; 56 fsl,drive-strength = <MXS_DRIVE_4mA>;
57 fsl,voltage = <1>; 57 fsl,voltage = <MXS_VOLTAGE_HIGH>;
58 fsl,pull-up = <1>; 58 fsl,pull-up = <MXS_PULL_ENABLE>;
59 }; 59 };
60 }; 60 };
61 61
diff --git a/arch/arm/boot/dts/imx28-cfa10057.dts b/arch/arm/boot/dts/imx28-cfa10057.dts
index 0333c0532f28..3c1312885ae0 100644
--- a/arch/arm/boot/dts/imx28-cfa10057.dts
+++ b/arch/arm/boot/dts/imx28-cfa10057.dts
@@ -14,7 +14,7 @@
14 * The CFA-10057 is an expansion board for the CFA-10036 module, thus we 14 * The CFA-10057 is an expansion board for the CFA-10036 module, thus we
15 * need to include the CFA-10036 DTS. 15 * need to include the CFA-10036 DTS.
16 */ 16 */
17/include/ "imx28-cfa10036.dts" 17#include "imx28-cfa10036.dts"
18 18
19/ { 19/ {
20 model = "Crystalfontz CFA-10057 Board"; 20 model = "Crystalfontz CFA-10057 Board";
@@ -26,51 +26,51 @@
26 usb_pins_cfa10057: usb-10057@0 { 26 usb_pins_cfa10057: usb-10057@0 {
27 reg = <0>; 27 reg = <0>;
28 fsl,pinmux-ids = < 28 fsl,pinmux-ids = <
29 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ 29 MX28_PAD_GPMI_D07__GPIO_0_7
30 >; 30 >;
31 fsl,drive-strength = <0>; 31 fsl,drive-strength = <MXS_DRIVE_4mA>;
32 fsl,voltage = <1>; 32 fsl,voltage = <MXS_VOLTAGE_HIGH>;
33 fsl,pull-up = <0>; 33 fsl,pull-up = <MXS_PULL_DISABLE>;
34 }; 34 };
35 35
36 lcdif_18bit_pins_cfa10057: lcdif-18bit@0 { 36 lcdif_18bit_pins_cfa10057: lcdif-18bit@0 {
37 reg = <0>; 37 reg = <0>;
38 fsl,pinmux-ids = < 38 fsl,pinmux-ids = <
39 0x1000 /* MX28_PAD_LCD_D00__LCD_D0 */ 39 MX28_PAD_LCD_D00__LCD_D0
40 0x1010 /* MX28_PAD_LCD_D01__LCD_D1 */ 40 MX28_PAD_LCD_D01__LCD_D1
41 0x1020 /* MX28_PAD_LCD_D02__LCD_D2 */ 41 MX28_PAD_LCD_D02__LCD_D2
42 0x1030 /* MX28_PAD_LCD_D03__LCD_D3 */ 42 MX28_PAD_LCD_D03__LCD_D3
43 0x1040 /* MX28_PAD_LCD_D04__LCD_D4 */ 43 MX28_PAD_LCD_D04__LCD_D4
44 0x1050 /* MX28_PAD_LCD_D05__LCD_D5 */ 44 MX28_PAD_LCD_D05__LCD_D5
45 0x1060 /* MX28_PAD_LCD_D06__LCD_D6 */ 45 MX28_PAD_LCD_D06__LCD_D6
46 0x1070 /* MX28_PAD_LCD_D07__LCD_D7 */ 46 MX28_PAD_LCD_D07__LCD_D7
47 0x1080 /* MX28_PAD_LCD_D08__LCD_D8 */ 47 MX28_PAD_LCD_D08__LCD_D8
48 0x1090 /* MX28_PAD_LCD_D09__LCD_D9 */ 48 MX28_PAD_LCD_D09__LCD_D9
49 0x10a0 /* MX28_PAD_LCD_D10__LCD_D10 */ 49 MX28_PAD_LCD_D10__LCD_D10
50 0x10b0 /* MX28_PAD_LCD_D11__LCD_D11 */ 50 MX28_PAD_LCD_D11__LCD_D11
51 0x10c0 /* MX28_PAD_LCD_D12__LCD_D12 */ 51 MX28_PAD_LCD_D12__LCD_D12
52 0x10d0 /* MX28_PAD_LCD_D13__LCD_D13 */ 52 MX28_PAD_LCD_D13__LCD_D13
53 0x10e0 /* MX28_PAD_LCD_D14__LCD_D14 */ 53 MX28_PAD_LCD_D14__LCD_D14
54 0x10f0 /* MX28_PAD_LCD_D15__LCD_D15 */ 54 MX28_PAD_LCD_D15__LCD_D15
55 0x1100 /* MX28_PAD_LCD_D16__LCD_D16 */ 55 MX28_PAD_LCD_D16__LCD_D16
56 0x1110 /* MX28_PAD_LCD_D17__LCD_D17 */ 56 MX28_PAD_LCD_D17__LCD_D17
57 >; 57 >;
58 fsl,drive-strength = <0>; 58 fsl,drive-strength = <MXS_DRIVE_4mA>;
59 fsl,voltage = <1>; 59 fsl,voltage = <MXS_VOLTAGE_HIGH>;
60 fsl,pull-up = <0>; 60 fsl,pull-up = <MXS_PULL_DISABLE>;
61 }; 61 };
62 62
63 lcdif_pins_cfa10057: lcdif-evk@0 { 63 lcdif_pins_cfa10057: lcdif-evk@0 {
64 reg = <0>; 64 reg = <0>;
65 fsl,pinmux-ids = < 65 fsl,pinmux-ids = <
66 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ 66 MX28_PAD_LCD_RD_E__LCD_VSYNC
67 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ 67 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
68 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ 68 MX28_PAD_LCD_RS__LCD_DOTCLK
69 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ 69 MX28_PAD_LCD_CS__LCD_ENABLE
70 >; 70 >;
71 fsl,drive-strength = <0>; 71 fsl,drive-strength = <MXS_DRIVE_4mA>;
72 fsl,voltage = <1>; 72 fsl,voltage = <MXS_VOLTAGE_HIGH>;
73 fsl,pull-up = <0>; 73 fsl,pull-up = <MXS_PULL_DISABLE>;
74 }; 74 };
75 }; 75 };
76 76
diff --git a/arch/arm/boot/dts/imx28-cfa10058.dts b/arch/arm/boot/dts/imx28-cfa10058.dts
index 64c64c55a82a..2469d34df0ae 100644
--- a/arch/arm/boot/dts/imx28-cfa10058.dts
+++ b/arch/arm/boot/dts/imx28-cfa10058.dts
@@ -14,7 +14,7 @@
14 * The CFA-10058 is an expansion board for the CFA-10036 module, thus we 14 * The CFA-10058 is an expansion board for the CFA-10036 module, thus we
15 * need to include the CFA-10036 DTS. 15 * need to include the CFA-10036 DTS.
16 */ 16 */
17/include/ "imx28-cfa10036.dts" 17#include "imx28-cfa10036.dts"
18 18
19/ { 19/ {
20 model = "Crystalfontz CFA-10058 Board"; 20 model = "Crystalfontz CFA-10058 Board";
@@ -26,24 +26,24 @@
26 usb_pins_cfa10058: usb-10058@0 { 26 usb_pins_cfa10058: usb-10058@0 {
27 reg = <0>; 27 reg = <0>;
28 fsl,pinmux-ids = < 28 fsl,pinmux-ids = <
29 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ 29 MX28_PAD_GPMI_D07__GPIO_0_7
30 >; 30 >;
31 fsl,drive-strength = <0>; 31 fsl,drive-strength = <MXS_DRIVE_4mA>;
32 fsl,voltage = <1>; 32 fsl,voltage = <MXS_VOLTAGE_HIGH>;
33 fsl,pull-up = <0>; 33 fsl,pull-up = <MXS_PULL_DISABLE>;
34 }; 34 };
35 35
36 lcdif_pins_cfa10058: lcdif-10058@0 { 36 lcdif_pins_cfa10058: lcdif-10058@0 {
37 reg = <0>; 37 reg = <0>;
38 fsl,pinmux-ids = < 38 fsl,pinmux-ids = <
39 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ 39 MX28_PAD_LCD_RD_E__LCD_VSYNC
40 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ 40 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
41 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ 41 MX28_PAD_LCD_RS__LCD_DOTCLK
42 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ 42 MX28_PAD_LCD_CS__LCD_ENABLE
43 >; 43 >;
44 fsl,drive-strength = <0>; 44 fsl,drive-strength = <MXS_DRIVE_4mA>;
45 fsl,voltage = <1>; 45 fsl,voltage = <MXS_VOLTAGE_HIGH>;
46 fsl,pull-up = <0>; 46 fsl,pull-up = <MXS_PULL_DISABLE>;
47 }; 47 };
48 }; 48 };
49 49
diff --git a/arch/arm/boot/dts/imx28-evk.dts b/arch/arm/boot/dts/imx28-evk.dts
index 15715d921d14..1f63845b8ce0 100644
--- a/arch/arm/boot/dts/imx28-evk.dts
+++ b/arch/arm/boot/dts/imx28-evk.dts
@@ -10,7 +10,7 @@
10 */ 10 */
11 11
12/dts-v1/; 12/dts-v1/;
13/include/ "imx28.dtsi" 13#include "imx28.dtsi"
14 14
15/ { 15/ {
16 model = "Freescale i.MX28 Evaluation Kit"; 16 model = "Freescale i.MX28 Evaluation Kit";
@@ -70,52 +70,52 @@
70 hog_pins_a: hog@0 { 70 hog_pins_a: hog@0 {
71 reg = <0>; 71 reg = <0>;
72 fsl,pinmux-ids = < 72 fsl,pinmux-ids = <
73 0x20d3 /* MX28_PAD_SSP1_CMD__GPIO_2_13 */ 73 MX28_PAD_SSP1_CMD__GPIO_2_13
74 0x20f3 /* MX28_PAD_SSP1_DATA3__GPIO_2_15 */ 74 MX28_PAD_SSP1_DATA3__GPIO_2_15
75 0x40d3 /* MX28_PAD_ENET0_RX_CLK__GPIO_4_13 */ 75 MX28_PAD_ENET0_RX_CLK__GPIO_4_13
76 0x20c3 /* MX28_PAD_SSP1_SCK__GPIO_2_12 */ 76 MX28_PAD_SSP1_SCK__GPIO_2_12
77 0x31c3 /* MX28_PAD_PWM3__GPIO_3_28 */ 77 MX28_PAD_PWM3__GPIO_3_28
78 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ 78 MX28_PAD_LCD_RESET__GPIO_3_30
79 0x3083 /* MX28_PAD_AUART2_RX__GPIO_3_8 */ 79 MX28_PAD_AUART2_RX__GPIO_3_8
80 0x3093 /* MX28_PAD_AUART2_TX__GPIO_3_9 */ 80 MX28_PAD_AUART2_TX__GPIO_3_9
81 >; 81 >;
82 fsl,drive-strength = <0>; 82 fsl,drive-strength = <MXS_DRIVE_4mA>;
83 fsl,voltage = <1>; 83 fsl,voltage = <MXS_VOLTAGE_HIGH>;
84 fsl,pull-up = <0>; 84 fsl,pull-up = <MXS_PULL_DISABLE>;
85 }; 85 };
86 86
87 led_pin_gpio3_5: led_gpio3_5@0 { 87 led_pin_gpio3_5: led_gpio3_5@0 {
88 reg = <0>; 88 reg = <0>;
89 fsl,pinmux-ids = < 89 fsl,pinmux-ids = <
90 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ 90 MX28_PAD_AUART1_TX__GPIO_3_5
91 >; 91 >;
92 fsl,drive-strength = <0>; 92 fsl,drive-strength = <MXS_DRIVE_4mA>;
93 fsl,voltage = <1>; 93 fsl,voltage = <MXS_VOLTAGE_HIGH>;
94 fsl,pull-up = <0>; 94 fsl,pull-up = <MXS_PULL_DISABLE>;
95 }; 95 };
96 96
97 gpmi_pins_evk: gpmi-nand-evk@0 { 97 gpmi_pins_evk: gpmi-nand-evk@0 {
98 reg = <0>; 98 reg = <0>;
99 fsl,pinmux-ids = < 99 fsl,pinmux-ids = <
100 0x0110 /* MX28_PAD_GPMI_CE1N__GPMI_CE1N */ 100 MX28_PAD_GPMI_CE1N__GPMI_CE1N
101 0x0150 /* MX28_PAD_GPMI_RDY1__GPMI_READY1 */ 101 MX28_PAD_GPMI_RDY1__GPMI_READY1
102 >; 102 >;
103 fsl,drive-strength = <0>; 103 fsl,drive-strength = <MXS_DRIVE_4mA>;
104 fsl,voltage = <1>; 104 fsl,voltage = <MXS_VOLTAGE_HIGH>;
105 fsl,pull-up = <0>; 105 fsl,pull-up = <MXS_PULL_DISABLE>;
106 }; 106 };
107 107
108 lcdif_pins_evk: lcdif-evk@0 { 108 lcdif_pins_evk: lcdif-evk@0 {
109 reg = <0>; 109 reg = <0>;
110 fsl,pinmux-ids = < 110 fsl,pinmux-ids = <
111 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ 111 MX28_PAD_LCD_RD_E__LCD_VSYNC
112 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ 112 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
113 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ 113 MX28_PAD_LCD_RS__LCD_DOTCLK
114 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ 114 MX28_PAD_LCD_CS__LCD_ENABLE
115 >; 115 >;
116 fsl,drive-strength = <0>; 116 fsl,drive-strength = <MXS_DRIVE_4mA>;
117 fsl,voltage = <1>; 117 fsl,voltage = <MXS_VOLTAGE_HIGH>;
118 fsl,pull-up = <0>; 118 fsl,pull-up = <MXS_PULL_DISABLE>;
119 }; 119 };
120 }; 120 };
121 121
@@ -182,6 +182,7 @@
182 }; 182 };
183 183
184 lradc@80050000 { 184 lradc@80050000 {
185 fsl,lradc-touchscreen-wires = <4>;
185 status = "okay"; 186 status = "okay";
186 }; 187 };
187 188
@@ -242,6 +243,8 @@
242 243
243 ahb@80080000 { 244 ahb@80080000 {
244 usb0: usb@80080000 { 245 usb0: usb@80080000 {
246 pinctrl-names = "default";
247 pinctrl-0 = <&usb0_id_pins_a>;
245 vbus-supply = <&reg_usb0_vbus>; 248 vbus-supply = <&reg_usb0_vbus>;
246 status = "okay"; 249 status = "okay";
247 }; 250 };
diff --git a/arch/arm/boot/dts/imx28-m28cu3.dts b/arch/arm/boot/dts/imx28-m28cu3.dts
new file mode 100644
index 000000000000..d3958da60bd7
--- /dev/null
+++ b/arch/arm/boot/dts/imx28-m28cu3.dts
@@ -0,0 +1,266 @@
1/*
2 * Copyright (C) 2013 Marek Vasut <marex@denx.de>
3 *
4 * The code contained herein is licensed under the GNU General Public
5 * License. You may obtain a copy of the GNU General Public License
6 * Version 2 or later at the following locations:
7 *
8 * http://www.opensource.org/licenses/gpl-license.html
9 * http://www.gnu.org/copyleft/gpl.html
10 */
11
12/dts-v1/;
13#include "imx28.dtsi"
14
15/ {
16 model = "MSR M28CU3";
17 compatible = "msr,m28cu3", "fsl,imx28";
18
19 memory {
20 reg = <0x40000000 0x08000000>;
21 };
22
23 apb@80000000 {
24 apbh@80000000 {
25 gpmi-nand@8000c000 {
26 #address-cells = <1>;
27 #size-cells = <1>;
28 pinctrl-names = "default";
29 pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg>;
30 status = "okay";
31
32 partition@0 {
33 label = "gpmi-nfc-0-boot";
34 reg = <0x00000000 0x01400000>;
35 read-only;
36 };
37
38 partition@1 {
39 label = "gpmi-nfc-general-use";
40 reg = <0x01400000 0x0ec00000>;
41 };
42 };
43
44 ssp0: ssp@80010000 {
45 compatible = "fsl,imx28-mmc";
46 pinctrl-names = "default";
47 pinctrl-0 = <&mmc0_4bit_pins_a
48 &mmc0_cd_cfg
49 &mmc0_sck_cfg>;
50 bus-width = <4>;
51 vmmc-supply = <&reg_vddio_sd0>;
52 status = "okay";
53 };
54
55 ssp2: ssp@80014000 {
56 compatible = "fsl,imx28-mmc";
57 pinctrl-names = "default";
58 pinctrl-0 = <&mmc2_4bit_pins_a
59 &mmc2_cd_cfg
60 &mmc2_sck_cfg>;
61 bus-width = <4>;
62 vmmc-supply = <&reg_vddio_sd1>;
63 status = "okay";
64 };
65
66 pinctrl@80018000 {
67 pinctrl-names = "default";
68 pinctrl-0 = <&hog_pins_a>;
69
70 hog_pins_a: hog@0 {
71 reg = <0>;
72 fsl,pinmux-ids = <
73 MX28_PAD_SSP2_SS0__GPIO_2_19
74 MX28_PAD_PWM4__GPIO_3_29
75 MX28_PAD_AUART2_RX__GPIO_3_8
76 MX28_PAD_ENET0_RX_CLK__GPIO_4_13
77 >;
78 fsl,drive-strength = <MXS_DRIVE_4mA>;
79 fsl,voltage = <MXS_VOLTAGE_HIGH>;
80 fsl,pull-up = <MXS_PULL_DISABLE>;
81 };
82
83 lcdif_pins_m28: lcdif-m28@0 {
84 reg = <0>;
85 fsl,pinmux-ids = <
86 MX28_PAD_LCD_VSYNC__LCD_VSYNC
87 MX28_PAD_LCD_HSYNC__LCD_HSYNC
88 MX28_PAD_LCD_DOTCLK__LCD_DOTCLK
89 MX28_PAD_LCD_RESET__LCD_RESET
90 MX28_PAD_LCD_CS__LCD_ENABLE
91 MX28_PAD_AUART1_TX__GPIO_3_5
92 >;
93 fsl,drive-strength = <MXS_DRIVE_4mA>;
94 fsl,voltage = <MXS_VOLTAGE_HIGH>;
95 fsl,pull-up = <MXS_PULL_DISABLE>;
96 };
97
98 led_pins_gpio: leds-m28@0 {
99 reg = <0>;
100 fsl,pinmux-ids = <
101 MX28_PAD_SSP3_MISO__GPIO_2_26
102 MX28_PAD_SSP3_SCK__GPIO_2_24
103 >;
104 fsl,drive-strength = <MXS_DRIVE_4mA>;
105 fsl,voltage = <MXS_VOLTAGE_HIGH>;
106 fsl,pull-up = <MXS_PULL_DISABLE>;
107 };
108 };
109
110 ocotp@8002c000 {
111 status = "okay";
112 };
113
114 lcdif@80030000 {
115 pinctrl-names = "default";
116 pinctrl-0 = <&lcdif_24bit_pins_a
117 &lcdif_pins_m28>;
118 display = <&display>;
119 reset-active-high;
120 status = "okay";
121
122 display: display0 {
123 bits-per-pixel = <32>;
124 bus-width = <24>;
125
126 display-timings {
127 native-mode = <&timing0>;
128 timing0: timing0 {
129 clock-frequency = <6410256>;
130 hactive = <320>;
131 vactive = <240>;
132 hback-porch = <38>;
133 hfront-porch = <20>;
134 vback-porch = <15>;
135 vfront-porch = <5>;
136 hsync-len = <30>;
137 vsync-len = <3>;
138 hsync-active = <0>;
139 vsync-active = <0>;
140 de-active = <1>;
141 pixelclk-active = <1>;
142 };
143 };
144 };
145 };
146 };
147
148 apbx@80040000 {
149 duart: serial@80074000 {
150 pinctrl-names = "default";
151 pinctrl-0 = <&duart_pins_b>;
152 status = "okay";
153 };
154
155 usbphy1: usbphy@8007e000 {
156 status = "okay";
157 };
158
159 auart0: serial@8006a000 {
160 pinctrl-names = "default";
161 pinctrl-0 = <&auart0_2pins_a>;
162 status = "okay";
163 };
164
165 auart3: serial@80070000 {
166 pinctrl-names = "default";
167 pinctrl-0 = <&auart3_2pins_b>;
168 status = "okay";
169 };
170
171 pwm: pwm@80064000 {
172 pinctrl-names = "default";
173 pinctrl-0 = <&pwm3_pins_a>;
174 status = "okay";
175 };
176 };
177 };
178
179 ahb@80080000 {
180 usb1: usb@80090000 {
181 vbus-supply = <&reg_usb1_vbus>;
182 pinctrl-names = "default";
183 pinctrl-0 = <&usbphy1_pins_a>;
184 disable-over-current;
185 status = "okay";
186 };
187
188 mac0: ethernet@800f0000 {
189 phy-mode = "rmii";
190 pinctrl-names = "default";
191 pinctrl-0 = <&mac0_pins_a>;
192 phy-reset-gpios = <&gpio4 13 0>;
193 phy-reset-duration = <100>;
194 status = "okay";
195 };
196
197 mac1: ethernet@800f4000 {
198 phy-mode = "rmii";
199 pinctrl-names = "default";
200 pinctrl-0 = <&mac1_pins_a>;
201 status = "okay";
202 };
203 };
204
205 backlight {
206 compatible = "pwm-backlight";
207 pwms = <&pwm 3 5000000>;
208 brightness-levels = <0 4 8 16 32 64 128 255>;
209 default-brightness-level = <6>;
210 };
211
212 leds {
213 compatible = "gpio-leds";
214 pinctrl-names = "default";
215 pinctrl-0 = <&led_pins_gpio>;
216
217 user1 {
218 label = "sd0-led";
219 gpios = <&gpio2 26 0>;
220 linux,default-trigger = "mmc0";
221 };
222
223 user2 {
224 label = "sd1-led";
225 gpios = <&gpio2 24 0>;
226 linux,default-trigger = "mmc2";
227 };
228 };
229
230 regulators {
231 compatible = "simple-bus";
232
233 reg_3p3v: 3p3v {
234 compatible = "regulator-fixed";
235 regulator-name = "3P3V";
236 regulator-min-microvolt = <3300000>;
237 regulator-max-microvolt = <3300000>;
238 regulator-always-on;
239 };
240
241 reg_vddio_sd0: vddio-sd0 {
242 compatible = "regulator-fixed";
243 regulator-name = "vddio-sd0";
244 regulator-min-microvolt = <3300000>;
245 regulator-max-microvolt = <3300000>;
246 gpio = <&gpio3 29 0>;
247 };
248
249 reg_vddio_sd1: vddio-sd1 {
250 compatible = "regulator-fixed";
251 regulator-name = "vddio-sd1";
252 regulator-min-microvolt = <3300000>;
253 regulator-max-microvolt = <3300000>;
254 gpio = <&gpio2 19 0>;
255 };
256
257 reg_usb1_vbus: usb1_vbus {
258 compatible = "regulator-fixed";
259 regulator-name = "usb1_vbus";
260 regulator-min-microvolt = <5000000>;
261 regulator-max-microvolt = <5000000>;
262 gpio = <&gpio3 8 0>;
263 enable-active-high;
264 };
265 };
266};
diff --git a/arch/arm/boot/dts/imx28-m28evk.dts b/arch/arm/boot/dts/imx28-m28evk.dts
index 0d322a2bebaf..8e2477fbe1d7 100644
--- a/arch/arm/boot/dts/imx28-m28evk.dts
+++ b/arch/arm/boot/dts/imx28-m28evk.dts
@@ -10,7 +10,7 @@
10 */ 10 */
11 11
12/dts-v1/; 12/dts-v1/;
13/include/ "imx28.dtsi" 13#include "imx28.dtsi"
14 14
15/ { 15/ {
16 model = "DENX M28EVK"; 16 model = "DENX M28EVK";
@@ -92,26 +92,26 @@
92 hog_pins_a: hog@0 { 92 hog_pins_a: hog@0 {
93 reg = <0>; 93 reg = <0>;
94 fsl,pinmux-ids = < 94 fsl,pinmux-ids = <
95 0x31c3 /* MX28_PAD_PWM3__GPIO_3_28 */ 95 MX28_PAD_PWM3__GPIO_3_28
96 0x30a3 /* MX28_PAD_AUART2_CTS__GPIO_3_10 */ 96 MX28_PAD_AUART2_CTS__GPIO_3_10
97 0x30b3 /* MX28_PAD_AUART2_RTS__GPIO_3_11 */ 97 MX28_PAD_AUART2_RTS__GPIO_3_11
98 0x30c3 /* MX28_PAD_AUART3_RX__GPIO_3_12 */ 98 MX28_PAD_AUART3_RX__GPIO_3_12
99 0x30d3 /* MX28_PAD_AUART3_TX__GPIO_3_13 */ 99 MX28_PAD_AUART3_TX__GPIO_3_13
100 >; 100 >;
101 fsl,drive-strength = <0>; 101 fsl,drive-strength = <MXS_DRIVE_4mA>;
102 fsl,voltage = <1>; 102 fsl,voltage = <MXS_VOLTAGE_HIGH>;
103 fsl,pull-up = <0>; 103 fsl,pull-up = <MXS_PULL_DISABLE>;
104 }; 104 };
105 105
106 lcdif_pins_m28: lcdif-m28@0 { 106 lcdif_pins_m28: lcdif-m28@0 {
107 reg = <0>; 107 reg = <0>;
108 fsl,pinmux-ids = < 108 fsl,pinmux-ids = <
109 0x11e0 /* MX28_PAD_LCD_DOTCLK__LCD_DOTCLK */ 109 MX28_PAD_LCD_DOTCLK__LCD_DOTCLK
110 0x11f0 /* MX28_PAD_LCD_ENABLE__LCD_ENABLE */ 110 MX28_PAD_LCD_ENABLE__LCD_ENABLE
111 >; 111 >;
112 fsl,drive-strength = <0>; 112 fsl,drive-strength = <MXS_DRIVE_4mA>;
113 fsl,voltage = <1>; 113 fsl,voltage = <MXS_VOLTAGE_HIGH>;
114 fsl,pull-up = <0>; 114 fsl,pull-up = <MXS_PULL_DISABLE>;
115 }; 115 };
116 }; 116 };
117 117
diff --git a/arch/arm/boot/dts/imx28-pinfunc.h b/arch/arm/boot/dts/imx28-pinfunc.h
new file mode 100644
index 000000000000..e11f69ba0fe4
--- /dev/null
+++ b/arch/arm/boot/dts/imx28-pinfunc.h
@@ -0,0 +1,506 @@
1/*
2 * Header providing constants for i.MX28 pinctrl bindings.
3 *
4 * Copyright (C) 2013 Lothar Waßmann <LW@KARO-electronics.de>
5 *
6 * The code contained herein is licensed under the GNU General Public
7 * License. You may obtain a copy of the GNU General Public License
8 * Version 2 at the following locations:
9 *
10 * http://www.opensource.org/licenses/gpl-license.html
11 * http://www.gnu.org/copyleft/gpl.html
12 */
13
14#ifndef __DT_BINDINGS_MX28_PINCTRL_H__
15#define __DT_BINDINGS_MX28_PINCTRL_H__
16
17#include "mxs-pinfunc.h"
18
19#define MX28_PAD_GPMI_D00__GPMI_D0 0x0000
20#define MX28_PAD_GPMI_D01__GPMI_D1 0x0010
21#define MX28_PAD_GPMI_D02__GPMI_D2 0x0020
22#define MX28_PAD_GPMI_D03__GPMI_D3 0x0030
23#define MX28_PAD_GPMI_D04__GPMI_D4 0x0040
24#define MX28_PAD_GPMI_D05__GPMI_D5 0x0050
25#define MX28_PAD_GPMI_D06__GPMI_D6 0x0060
26#define MX28_PAD_GPMI_D07__GPMI_D7 0x0070
27#define MX28_PAD_GPMI_CE0N__GPMI_CE0N 0x0100
28#define MX28_PAD_GPMI_CE1N__GPMI_CE1N 0x0110
29#define MX28_PAD_GPMI_CE2N__GPMI_CE2N 0x0120
30#define MX28_PAD_GPMI_CE3N__GPMI_CE3N 0x0130
31#define MX28_PAD_GPMI_RDY0__GPMI_READY0 0x0140
32#define MX28_PAD_GPMI_RDY1__GPMI_READY1 0x0150
33#define MX28_PAD_GPMI_RDY2__GPMI_READY2 0x0160
34#define MX28_PAD_GPMI_RDY3__GPMI_READY3 0x0170
35#define MX28_PAD_GPMI_RDN__GPMI_RDN 0x0180
36#define MX28_PAD_GPMI_WRN__GPMI_WRN 0x0190
37#define MX28_PAD_GPMI_ALE__GPMI_ALE 0x01a0
38#define MX28_PAD_GPMI_CLE__GPMI_CLE 0x01b0
39#define MX28_PAD_GPMI_RESETN__GPMI_RESETN 0x01c0
40#define MX28_PAD_LCD_D00__LCD_D0 0x1000
41#define MX28_PAD_LCD_D01__LCD_D1 0x1010
42#define MX28_PAD_LCD_D02__LCD_D2 0x1020
43#define MX28_PAD_LCD_D03__LCD_D3 0x1030
44#define MX28_PAD_LCD_D04__LCD_D4 0x1040
45#define MX28_PAD_LCD_D05__LCD_D5 0x1050
46#define MX28_PAD_LCD_D06__LCD_D6 0x1060
47#define MX28_PAD_LCD_D07__LCD_D7 0x1070
48#define MX28_PAD_LCD_D08__LCD_D8 0x1080
49#define MX28_PAD_LCD_D09__LCD_D9 0x1090
50#define MX28_PAD_LCD_D10__LCD_D10 0x10a0
51#define MX28_PAD_LCD_D11__LCD_D11 0x10b0
52#define MX28_PAD_LCD_D12__LCD_D12 0x10c0
53#define MX28_PAD_LCD_D13__LCD_D13 0x10d0
54#define MX28_PAD_LCD_D14__LCD_D14 0x10e0
55#define MX28_PAD_LCD_D15__LCD_D15 0x10f0
56#define MX28_PAD_LCD_D16__LCD_D16 0x1100
57#define MX28_PAD_LCD_D17__LCD_D17 0x1110
58#define MX28_PAD_LCD_D18__LCD_D18 0x1120
59#define MX28_PAD_LCD_D19__LCD_D19 0x1130
60#define MX28_PAD_LCD_D20__LCD_D20 0x1140
61#define MX28_PAD_LCD_D21__LCD_D21 0x1150
62#define MX28_PAD_LCD_D22__LCD_D22 0x1160
63#define MX28_PAD_LCD_D23__LCD_D23 0x1170
64#define MX28_PAD_LCD_RD_E__LCD_RD_E 0x1180
65#define MX28_PAD_LCD_WR_RWN__LCD_WR_RWN 0x1190
66#define MX28_PAD_LCD_RS__LCD_RS 0x11a0
67#define MX28_PAD_LCD_CS__LCD_CS 0x11b0
68#define MX28_PAD_LCD_VSYNC__LCD_VSYNC 0x11c0
69#define MX28_PAD_LCD_HSYNC__LCD_HSYNC 0x11d0
70#define MX28_PAD_LCD_DOTCLK__LCD_DOTCLK 0x11e0
71#define MX28_PAD_LCD_ENABLE__LCD_ENABLE 0x11f0
72#define MX28_PAD_SSP0_DATA0__SSP0_D0 0x2000
73#define MX28_PAD_SSP0_DATA1__SSP0_D1 0x2010
74#define MX28_PAD_SSP0_DATA2__SSP0_D2 0x2020
75#define MX28_PAD_SSP0_DATA3__SSP0_D3 0x2030
76#define MX28_PAD_SSP0_DATA4__SSP0_D4 0x2040
77#define MX28_PAD_SSP0_DATA5__SSP0_D5 0x2050
78#define MX28_PAD_SSP0_DATA6__SSP0_D6 0x2060
79#define MX28_PAD_SSP0_DATA7__SSP0_D7 0x2070
80#define MX28_PAD_SSP0_CMD__SSP0_CMD 0x2080
81#define MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT 0x2090
82#define MX28_PAD_SSP0_SCK__SSP0_SCK 0x20a0
83#define MX28_PAD_SSP1_SCK__SSP1_SCK 0x20c0
84#define MX28_PAD_SSP1_CMD__SSP1_CMD 0x20d0
85#define MX28_PAD_SSP1_DATA0__SSP1_D0 0x20e0
86#define MX28_PAD_SSP1_DATA3__SSP1_D3 0x20f0
87#define MX28_PAD_SSP2_SCK__SSP2_SCK 0x2100
88#define MX28_PAD_SSP2_MOSI__SSP2_CMD 0x2110
89#define MX28_PAD_SSP2_MISO__SSP2_D0 0x2120
90#define MX28_PAD_SSP2_SS0__SSP2_D3 0x2130
91#define MX28_PAD_SSP2_SS1__SSP2_D4 0x2140
92#define MX28_PAD_SSP2_SS2__SSP2_D5 0x2150
93#define MX28_PAD_SSP3_SCK__SSP3_SCK 0x2180
94#define MX28_PAD_SSP3_MOSI__SSP3_CMD 0x2190
95#define MX28_PAD_SSP3_MISO__SSP3_D0 0x21a0
96#define MX28_PAD_SSP3_SS0__SSP3_D3 0x21b0
97#define MX28_PAD_AUART0_RX__AUART0_RX 0x3000
98#define MX28_PAD_AUART0_TX__AUART0_TX 0x3010
99#define MX28_PAD_AUART0_CTS__AUART0_CTS 0x3020
100#define MX28_PAD_AUART0_RTS__AUART0_RTS 0x3030
101#define MX28_PAD_AUART1_RX__AUART1_RX 0x3040
102#define MX28_PAD_AUART1_TX__AUART1_TX 0x3050
103#define MX28_PAD_AUART1_CTS__AUART1_CTS 0x3060
104#define MX28_PAD_AUART1_RTS__AUART1_RTS 0x3070
105#define MX28_PAD_AUART2_RX__AUART2_RX 0x3080
106#define MX28_PAD_AUART2_TX__AUART2_TX 0x3090
107#define MX28_PAD_AUART2_CTS__AUART2_CTS 0x30a0
108#define MX28_PAD_AUART2_RTS__AUART2_RTS 0x30b0
109#define MX28_PAD_AUART3_RX__AUART3_RX 0x30c0
110#define MX28_PAD_AUART3_TX__AUART3_TX 0x30d0
111#define MX28_PAD_AUART3_CTS__AUART3_CTS 0x30e0
112#define MX28_PAD_AUART3_RTS__AUART3_RTS 0x30f0
113#define MX28_PAD_PWM0__PWM_0 0x3100
114#define MX28_PAD_PWM1__PWM_1 0x3110
115#define MX28_PAD_PWM2__PWM_2 0x3120
116#define MX28_PAD_SAIF0_MCLK__SAIF0_MCLK 0x3140
117#define MX28_PAD_SAIF0_LRCLK__SAIF0_LRCLK 0x3150
118#define MX28_PAD_SAIF0_BITCLK__SAIF0_BITCLK 0x3160
119#define MX28_PAD_SAIF0_SDATA0__SAIF0_SDATA0 0x3170
120#define MX28_PAD_I2C0_SCL__I2C0_SCL 0x3180
121#define MX28_PAD_I2C0_SDA__I2C0_SDA 0x3190
122#define MX28_PAD_SAIF1_SDATA0__SAIF1_SDATA0 0x31a0
123#define MX28_PAD_SPDIF__SPDIF_TX 0x31b0
124#define MX28_PAD_PWM3__PWM_3 0x31c0
125#define MX28_PAD_PWM4__PWM_4 0x31d0
126#define MX28_PAD_LCD_RESET__LCD_RESET 0x31e0
127#define MX28_PAD_ENET0_MDC__ENET0_MDC 0x4000
128#define MX28_PAD_ENET0_MDIO__ENET0_MDIO 0x4010
129#define MX28_PAD_ENET0_RX_EN__ENET0_RX_EN 0x4020
130#define MX28_PAD_ENET0_RXD0__ENET0_RXD0 0x4030
131#define MX28_PAD_ENET0_RXD1__ENET0_RXD1 0x4040
132#define MX28_PAD_ENET0_TX_CLK__ENET0_TX_CLK 0x4050
133#define MX28_PAD_ENET0_TX_EN__ENET0_TX_EN 0x4060
134#define MX28_PAD_ENET0_TXD0__ENET0_TXD0 0x4070
135#define MX28_PAD_ENET0_TXD1__ENET0_TXD1 0x4080
136#define MX28_PAD_ENET0_RXD2__ENET0_RXD2 0x4090
137#define MX28_PAD_ENET0_RXD3__ENET0_RXD3 0x40a0
138#define MX28_PAD_ENET0_TXD2__ENET0_TXD2 0x40b0
139#define MX28_PAD_ENET0_TXD3__ENET0_TXD3 0x40c0
140#define MX28_PAD_ENET0_RX_CLK__ENET0_RX_CLK 0x40d0
141#define MX28_PAD_ENET0_COL__ENET0_COL 0x40e0
142#define MX28_PAD_ENET0_CRS__ENET0_CRS 0x40f0
143#define MX28_PAD_ENET_CLK__CLKCTRL_ENET 0x4100
144#define MX28_PAD_JTAG_RTCK__JTAG_RTCK 0x4140
145#define MX28_PAD_EMI_D00__EMI_DATA0 0x5000
146#define MX28_PAD_EMI_D01__EMI_DATA1 0x5010
147#define MX28_PAD_EMI_D02__EMI_DATA2 0x5020
148#define MX28_PAD_EMI_D03__EMI_DATA3 0x5030
149#define MX28_PAD_EMI_D04__EMI_DATA4 0x5040
150#define MX28_PAD_EMI_D05__EMI_DATA5 0x5050
151#define MX28_PAD_EMI_D06__EMI_DATA6 0x5060
152#define MX28_PAD_EMI_D07__EMI_DATA7 0x5070
153#define MX28_PAD_EMI_D08__EMI_DATA8 0x5080
154#define MX28_PAD_EMI_D09__EMI_DATA9 0x5090
155#define MX28_PAD_EMI_D10__EMI_DATA10 0x50a0
156#define MX28_PAD_EMI_D11__EMI_DATA11 0x50b0
157#define MX28_PAD_EMI_D12__EMI_DATA12 0x50c0
158#define MX28_PAD_EMI_D13__EMI_DATA13 0x50d0
159#define MX28_PAD_EMI_D14__EMI_DATA14 0x50e0
160#define MX28_PAD_EMI_D15__EMI_DATA15 0x50f0
161#define MX28_PAD_EMI_ODT0__EMI_ODT0 0x5100
162#define MX28_PAD_EMI_DQM0__EMI_DQM0 0x5110
163#define MX28_PAD_EMI_ODT1__EMI_ODT1 0x5120
164#define MX28_PAD_EMI_DQM1__EMI_DQM1 0x5130
165#define MX28_PAD_EMI_DDR_OPEN_FB__EMI_DDR_OPEN_FEEDBACK 0x5140
166#define MX28_PAD_EMI_CLK__EMI_CLK 0x5150
167#define MX28_PAD_EMI_DQS0__EMI_DQS0 0x5160
168#define MX28_PAD_EMI_DQS1__EMI_DQS1 0x5170
169#define MX28_PAD_EMI_DDR_OPEN__EMI_DDR_OPEN 0x51a0
170#define MX28_PAD_EMI_A00__EMI_ADDR0 0x6000
171#define MX28_PAD_EMI_A01__EMI_ADDR1 0x6010
172#define MX28_PAD_EMI_A02__EMI_ADDR2 0x6020
173#define MX28_PAD_EMI_A03__EMI_ADDR3 0x6030
174#define MX28_PAD_EMI_A04__EMI_ADDR4 0x6040
175#define MX28_PAD_EMI_A05__EMI_ADDR5 0x6050
176#define MX28_PAD_EMI_A06__EMI_ADDR6 0x6060
177#define MX28_PAD_EMI_A07__EMI_ADDR7 0x6070
178#define MX28_PAD_EMI_A08__EMI_ADDR8 0x6080
179#define MX28_PAD_EMI_A09__EMI_ADDR9 0x6090
180#define MX28_PAD_EMI_A10__EMI_ADDR10 0x60a0
181#define MX28_PAD_EMI_A11__EMI_ADDR11 0x60b0
182#define MX28_PAD_EMI_A12__EMI_ADDR12 0x60c0
183#define MX28_PAD_EMI_A13__EMI_ADDR13 0x60d0
184#define MX28_PAD_EMI_A14__EMI_ADDR14 0x60e0
185#define MX28_PAD_EMI_BA0__EMI_BA0 0x6100
186#define MX28_PAD_EMI_BA1__EMI_BA1 0x6110
187#define MX28_PAD_EMI_BA2__EMI_BA2 0x6120
188#define MX28_PAD_EMI_CASN__EMI_CASN 0x6130
189#define MX28_PAD_EMI_RASN__EMI_RASN 0x6140
190#define MX28_PAD_EMI_WEN__EMI_WEN 0x6150
191#define MX28_PAD_EMI_CE0N__EMI_CE0N 0x6160
192#define MX28_PAD_EMI_CE1N__EMI_CE1N 0x6170
193#define MX28_PAD_EMI_CKE__EMI_CKE 0x6180
194#define MX28_PAD_GPMI_D00__SSP1_D0 0x0001
195#define MX28_PAD_GPMI_D01__SSP1_D1 0x0011
196#define MX28_PAD_GPMI_D02__SSP1_D2 0x0021
197#define MX28_PAD_GPMI_D03__SSP1_D3 0x0031
198#define MX28_PAD_GPMI_D04__SSP1_D4 0x0041
199#define MX28_PAD_GPMI_D05__SSP1_D5 0x0051
200#define MX28_PAD_GPMI_D06__SSP1_D6 0x0061
201#define MX28_PAD_GPMI_D07__SSP1_D7 0x0071
202#define MX28_PAD_GPMI_CE0N__SSP3_D0 0x0101
203#define MX28_PAD_GPMI_CE1N__SSP3_D3 0x0111
204#define MX28_PAD_GPMI_CE2N__CAN1_TX 0x0121
205#define MX28_PAD_GPMI_CE3N__CAN1_RX 0x0131
206#define MX28_PAD_GPMI_RDY0__SSP1_CARD_DETECT 0x0141
207#define MX28_PAD_GPMI_RDY1__SSP1_CMD 0x0151
208#define MX28_PAD_GPMI_RDY2__CAN0_TX 0x0161
209#define MX28_PAD_GPMI_RDY3__CAN0_RX 0x0171
210#define MX28_PAD_GPMI_RDN__SSP3_SCK 0x0181
211#define MX28_PAD_GPMI_WRN__SSP1_SCK 0x0191
212#define MX28_PAD_GPMI_ALE__SSP3_D1 0x01a1
213#define MX28_PAD_GPMI_CLE__SSP3_D2 0x01b1
214#define MX28_PAD_GPMI_RESETN__SSP3_CMD 0x01c1
215#define MX28_PAD_LCD_D03__ETM_DA8 0x1031
216#define MX28_PAD_LCD_D04__ETM_DA9 0x1041
217#define MX28_PAD_LCD_D08__ETM_DA3 0x1081
218#define MX28_PAD_LCD_D09__ETM_DA4 0x1091
219#define MX28_PAD_LCD_D20__ENET1_1588_EVENT2_OUT 0x1141
220#define MX28_PAD_LCD_D21__ENET1_1588_EVENT2_IN 0x1151
221#define MX28_PAD_LCD_D22__ENET1_1588_EVENT3_OUT 0x1161
222#define MX28_PAD_LCD_D23__ENET1_1588_EVENT3_IN 0x1171
223#define MX28_PAD_LCD_RD_E__LCD_VSYNC 0x1181
224#define MX28_PAD_LCD_WR_RWN__LCD_HSYNC 0x1191
225#define MX28_PAD_LCD_RS__LCD_DOTCLK 0x11a1
226#define MX28_PAD_LCD_CS__LCD_ENABLE 0x11b1
227#define MX28_PAD_LCD_VSYNC__SAIF1_SDATA0 0x11c1
228#define MX28_PAD_LCD_HSYNC__SAIF1_SDATA1 0x11d1
229#define MX28_PAD_LCD_DOTCLK__SAIF1_MCLK 0x11e1
230#define MX28_PAD_SSP0_DATA4__SSP2_D0 0x2041
231#define MX28_PAD_SSP0_DATA5__SSP2_D3 0x2051
232#define MX28_PAD_SSP0_DATA6__SSP2_CMD 0x2061
233#define MX28_PAD_SSP0_DATA7__SSP2_SCK 0x2071
234#define MX28_PAD_SSP1_SCK__SSP2_D1 0x20c1
235#define MX28_PAD_SSP1_CMD__SSP2_D2 0x20d1
236#define MX28_PAD_SSP1_DATA0__SSP2_D6 0x20e1
237#define MX28_PAD_SSP1_DATA3__SSP2_D7 0x20f1
238#define MX28_PAD_SSP2_SCK__AUART2_RX 0x2101
239#define MX28_PAD_SSP2_MOSI__AUART2_TX 0x2111
240#define MX28_PAD_SSP2_MISO__AUART3_RX 0x2121
241#define MX28_PAD_SSP2_SS0__AUART3_TX 0x2131
242#define MX28_PAD_SSP2_SS1__SSP2_D1 0x2141
243#define MX28_PAD_SSP2_SS2__SSP2_D2 0x2151
244#define MX28_PAD_SSP3_SCK__AUART4_TX 0x2181
245#define MX28_PAD_SSP3_MOSI__AUART4_RX 0x2191
246#define MX28_PAD_SSP3_MISO__AUART4_RTS 0x21a1
247#define MX28_PAD_SSP3_SS0__AUART4_CTS 0x21b1
248#define MX28_PAD_AUART0_RX__I2C0_SCL 0x3001
249#define MX28_PAD_AUART0_TX__I2C0_SDA 0x3011
250#define MX28_PAD_AUART0_CTS__AUART4_RX 0x3021
251#define MX28_PAD_AUART0_RTS__AUART4_TX 0x3031
252#define MX28_PAD_AUART1_RX__SSP2_CARD_DETECT 0x3041
253#define MX28_PAD_AUART1_TX__SSP3_CARD_DETECT 0x3051
254#define MX28_PAD_AUART1_CTS__USB0_OVERCURRENT 0x3061
255#define MX28_PAD_AUART1_RTS__USB0_ID 0x3071
256#define MX28_PAD_AUART2_RX__SSP3_D1 0x3081
257#define MX28_PAD_AUART2_TX__SSP3_D2 0x3091
258#define MX28_PAD_AUART2_CTS__I2C1_SCL 0x30a1
259#define MX28_PAD_AUART2_RTS__I2C1_SDA 0x30b1
260#define MX28_PAD_AUART3_RX__CAN0_TX 0x30c1
261#define MX28_PAD_AUART3_TX__CAN0_RX 0x30d1
262#define MX28_PAD_AUART3_CTS__CAN1_TX 0x30e1
263#define MX28_PAD_AUART3_RTS__CAN1_RX 0x30f1
264#define MX28_PAD_PWM0__I2C1_SCL 0x3101
265#define MX28_PAD_PWM1__I2C1_SDA 0x3111
266#define MX28_PAD_PWM2__USB0_ID 0x3121
267#define MX28_PAD_SAIF0_MCLK__PWM_3 0x3141
268#define MX28_PAD_SAIF0_LRCLK__PWM_4 0x3151
269#define MX28_PAD_SAIF0_BITCLK__PWM_5 0x3161
270#define MX28_PAD_SAIF0_SDATA0__PWM_6 0x3171
271#define MX28_PAD_I2C0_SCL__TIMROT_ROTARYA 0x3181
272#define MX28_PAD_I2C0_SDA__TIMROT_ROTARYB 0x3191
273#define MX28_PAD_SAIF1_SDATA0__PWM_7 0x31a1
274#define MX28_PAD_LCD_RESET__LCD_VSYNC 0x31e1
275#define MX28_PAD_ENET0_MDC__GPMI_CE4N 0x4001
276#define MX28_PAD_ENET0_MDIO__GPMI_CE5N 0x4011
277#define MX28_PAD_ENET0_RX_EN__GPMI_CE6N 0x4021
278#define MX28_PAD_ENET0_RXD0__GPMI_CE7N 0x4031
279#define MX28_PAD_ENET0_RXD1__GPMI_READY4 0x4041
280#define MX28_PAD_ENET0_TX_CLK__HSADC_TRIGGER 0x4051
281#define MX28_PAD_ENET0_TX_EN__GPMI_READY5 0x4061
282#define MX28_PAD_ENET0_TXD0__GPMI_READY6 0x4071
283#define MX28_PAD_ENET0_TXD1__GPMI_READY7 0x4081
284#define MX28_PAD_ENET0_RXD2__ENET1_RXD0 0x4091
285#define MX28_PAD_ENET0_RXD3__ENET1_RXD1 0x40a1
286#define MX28_PAD_ENET0_TXD2__ENET1_TXD0 0x40b1
287#define MX28_PAD_ENET0_TXD3__ENET1_TXD1 0x40c1
288#define MX28_PAD_ENET0_RX_CLK__ENET0_RX_ER 0x40d1
289#define MX28_PAD_ENET0_COL__ENET1_TX_EN 0x40e1
290#define MX28_PAD_ENET0_CRS__ENET1_RX_EN 0x40f1
291#define MX28_PAD_GPMI_CE2N__ENET0_RX_ER 0x0122
292#define MX28_PAD_GPMI_CE3N__SAIF1_MCLK 0x0132
293#define MX28_PAD_GPMI_RDY0__USB0_ID 0x0142
294#define MX28_PAD_GPMI_RDY2__ENET0_TX_ER 0x0162
295#define MX28_PAD_GPMI_RDY3__HSADC_TRIGGER 0x0172
296#define MX28_PAD_GPMI_ALE__SSP3_D4 0x01a2
297#define MX28_PAD_GPMI_CLE__SSP3_D5 0x01b2
298#define MX28_PAD_LCD_D00__ETM_DA0 0x1002
299#define MX28_PAD_LCD_D01__ETM_DA1 0x1012
300#define MX28_PAD_LCD_D02__ETM_DA2 0x1022
301#define MX28_PAD_LCD_D03__ETM_DA3 0x1032
302#define MX28_PAD_LCD_D04__ETM_DA4 0x1042
303#define MX28_PAD_LCD_D05__ETM_DA5 0x1052
304#define MX28_PAD_LCD_D06__ETM_DA6 0x1062
305#define MX28_PAD_LCD_D07__ETM_DA7 0x1072
306#define MX28_PAD_LCD_D08__ETM_DA8 0x1082
307#define MX28_PAD_LCD_D09__ETM_DA9 0x1092
308#define MX28_PAD_LCD_D10__ETM_DA10 0x10a2
309#define MX28_PAD_LCD_D11__ETM_DA11 0x10b2
310#define MX28_PAD_LCD_D12__ETM_DA12 0x10c2
311#define MX28_PAD_LCD_D13__ETM_DA13 0x10d2
312#define MX28_PAD_LCD_D14__ETM_DA14 0x10e2
313#define MX28_PAD_LCD_D15__ETM_DA15 0x10f2
314#define MX28_PAD_LCD_D16__ETM_DA7 0x1102
315#define MX28_PAD_LCD_D17__ETM_DA6 0x1112
316#define MX28_PAD_LCD_D18__ETM_DA5 0x1122
317#define MX28_PAD_LCD_D19__ETM_DA4 0x1132
318#define MX28_PAD_LCD_D20__ETM_DA3 0x1142
319#define MX28_PAD_LCD_D21__ETM_DA2 0x1152
320#define MX28_PAD_LCD_D22__ETM_DA1 0x1162
321#define MX28_PAD_LCD_D23__ETM_DA0 0x1172
322#define MX28_PAD_LCD_RD_E__ETM_TCTL 0x1182
323#define MX28_PAD_LCD_WR_RWN__ETM_TCLK 0x1192
324#define MX28_PAD_LCD_HSYNC__ETM_TCTL 0x11d2
325#define MX28_PAD_LCD_DOTCLK__ETM_TCLK 0x11e2
326#define MX28_PAD_SSP1_SCK__ENET0_1588_EVENT2_OUT 0x20c2
327#define MX28_PAD_SSP1_CMD__ENET0_1588_EVENT2_IN 0x20d2
328#define MX28_PAD_SSP1_DATA0__ENET0_1588_EVENT3_OUT 0x20e2
329#define MX28_PAD_SSP1_DATA3__ENET0_1588_EVENT3_IN 0x20f2
330#define MX28_PAD_SSP2_SCK__SAIF0_SDATA1 0x2102
331#define MX28_PAD_SSP2_MOSI__SAIF0_SDATA2 0x2112
332#define MX28_PAD_SSP2_MISO__SAIF1_SDATA1 0x2122
333#define MX28_PAD_SSP2_SS0__SAIF1_SDATA2 0x2132
334#define MX28_PAD_SSP2_SS1__USB1_OVERCURRENT 0x2142
335#define MX28_PAD_SSP2_SS2__USB0_OVERCURRENT 0x2152
336#define MX28_PAD_SSP3_SCK__ENET1_1588_EVENT0_OUT 0x2182
337#define MX28_PAD_SSP3_MOSI__ENET1_1588_EVENT0_IN 0x2192
338#define MX28_PAD_SSP3_MISO__ENET1_1588_EVENT1_OUT 0x21a2
339#define MX28_PAD_SSP3_SS0__ENET1_1588_EVENT1_IN 0x21b2
340#define MX28_PAD_AUART0_RX__DUART_CTS 0x3002
341#define MX28_PAD_AUART0_TX__DUART_RTS 0x3012
342#define MX28_PAD_AUART0_CTS__DUART_RX 0x3022
343#define MX28_PAD_AUART0_RTS__DUART_TX 0x3032
344#define MX28_PAD_AUART1_RX__PWM_0 0x3042
345#define MX28_PAD_AUART1_TX__PWM_1 0x3052
346#define MX28_PAD_AUART1_CTS__TIMROT_ROTARYA 0x3062
347#define MX28_PAD_AUART1_RTS__TIMROT_ROTARYB 0x3072
348#define MX28_PAD_AUART2_RX__SSP3_D4 0x3082
349#define MX28_PAD_AUART2_TX__SSP3_D5 0x3092
350#define MX28_PAD_AUART2_CTS__SAIF1_BITCLK 0x30a2
351#define MX28_PAD_AUART2_RTS__SAIF1_LRCLK 0x30b2
352#define MX28_PAD_AUART3_RX__ENET0_1588_EVENT0_OUT 0x30c2
353#define MX28_PAD_AUART3_TX__ENET0_1588_EVENT0_IN 0x30d2
354#define MX28_PAD_AUART3_CTS__ENET0_1588_EVENT1_OUT 0x30e2
355#define MX28_PAD_AUART3_RTS__ENET0_1588_EVENT1_IN 0x30f2
356#define MX28_PAD_PWM0__DUART_RX 0x3102
357#define MX28_PAD_PWM1__DUART_TX 0x3112
358#define MX28_PAD_PWM2__USB1_OVERCURRENT 0x3122
359#define MX28_PAD_SAIF0_MCLK__AUART4_CTS 0x3142
360#define MX28_PAD_SAIF0_LRCLK__AUART4_RTS 0x3152
361#define MX28_PAD_SAIF0_BITCLK__AUART4_RX 0x3162
362#define MX28_PAD_SAIF0_SDATA0__AUART4_TX 0x3172
363#define MX28_PAD_I2C0_SCL__DUART_RX 0x3182
364#define MX28_PAD_I2C0_SDA__DUART_TX 0x3192
365#define MX28_PAD_SAIF1_SDATA0__SAIF0_SDATA1 0x31a2
366#define MX28_PAD_SPDIF__ENET1_RX_ER 0x31b2
367#define MX28_PAD_ENET0_MDC__SAIF0_SDATA1 0x4002
368#define MX28_PAD_ENET0_MDIO__SAIF0_SDATA2 0x4012
369#define MX28_PAD_ENET0_RX_EN__SAIF1_SDATA1 0x4022
370#define MX28_PAD_ENET0_RXD0__SAIF1_SDATA2 0x4032
371#define MX28_PAD_ENET0_TX_CLK__ENET0_1588_EVENT2_OUT 0x4052
372#define MX28_PAD_ENET0_RXD2__ENET0_1588_EVENT0_OUT 0x4092
373#define MX28_PAD_ENET0_RXD3__ENET0_1588_EVENT0_IN 0x40a2
374#define MX28_PAD_ENET0_TXD2__ENET0_1588_EVENT1_OUT 0x40b2
375#define MX28_PAD_ENET0_TXD3__ENET0_1588_EVENT1_IN 0x40c2
376#define MX28_PAD_ENET0_RX_CLK__ENET0_1588_EVENT2_IN 0x40d2
377#define MX28_PAD_ENET0_COL__ENET0_1588_EVENT3_OUT 0x40e2
378#define MX28_PAD_ENET0_CRS__ENET0_1588_EVENT3_IN 0x40f2
379#define MX28_PAD_GPMI_D00__GPIO_0_0 0x0003
380#define MX28_PAD_GPMI_D01__GPIO_0_1 0x0013
381#define MX28_PAD_GPMI_D02__GPIO_0_2 0x0023
382#define MX28_PAD_GPMI_D03__GPIO_0_3 0x0033
383#define MX28_PAD_GPMI_D04__GPIO_0_4 0x0043
384#define MX28_PAD_GPMI_D05__GPIO_0_5 0x0053
385#define MX28_PAD_GPMI_D06__GPIO_0_6 0x0063
386#define MX28_PAD_GPMI_D07__GPIO_0_7 0x0073
387#define MX28_PAD_GPMI_CE0N__GPIO_0_16 0x0103
388#define MX28_PAD_GPMI_CE1N__GPIO_0_17 0x0113
389#define MX28_PAD_GPMI_CE2N__GPIO_0_18 0x0123
390#define MX28_PAD_GPMI_CE3N__GPIO_0_19 0x0133
391#define MX28_PAD_GPMI_RDY0__GPIO_0_20 0x0143
392#define MX28_PAD_GPMI_RDY1__GPIO_0_21 0x0153
393#define MX28_PAD_GPMI_RDY2__GPIO_0_22 0x0163
394#define MX28_PAD_GPMI_RDY3__GPIO_0_23 0x0173
395#define MX28_PAD_GPMI_RDN__GPIO_0_24 0x0183
396#define MX28_PAD_GPMI_WRN__GPIO_0_25 0x0193
397#define MX28_PAD_GPMI_ALE__GPIO_0_26 0x01a3
398#define MX28_PAD_GPMI_CLE__GPIO_0_27 0x01b3
399#define MX28_PAD_GPMI_RESETN__GPIO_0_28 0x01c3
400#define MX28_PAD_LCD_D00__GPIO_1_0 0x1003
401#define MX28_PAD_LCD_D01__GPIO_1_1 0x1013
402#define MX28_PAD_LCD_D02__GPIO_1_2 0x1023
403#define MX28_PAD_LCD_D03__GPIO_1_3 0x1033
404#define MX28_PAD_LCD_D04__GPIO_1_4 0x1043
405#define MX28_PAD_LCD_D05__GPIO_1_5 0x1053
406#define MX28_PAD_LCD_D06__GPIO_1_6 0x1063
407#define MX28_PAD_LCD_D07__GPIO_1_7 0x1073
408#define MX28_PAD_LCD_D08__GPIO_1_8 0x1083
409#define MX28_PAD_LCD_D09__GPIO_1_9 0x1093
410#define MX28_PAD_LCD_D10__GPIO_1_10 0x10a3
411#define MX28_PAD_LCD_D11__GPIO_1_11 0x10b3
412#define MX28_PAD_LCD_D12__GPIO_1_12 0x10c3
413#define MX28_PAD_LCD_D13__GPIO_1_13 0x10d3
414#define MX28_PAD_LCD_D14__GPIO_1_14 0x10e3
415#define MX28_PAD_LCD_D15__GPIO_1_15 0x10f3
416#define MX28_PAD_LCD_D16__GPIO_1_16 0x1103
417#define MX28_PAD_LCD_D17__GPIO_1_17 0x1113
418#define MX28_PAD_LCD_D18__GPIO_1_18 0x1123
419#define MX28_PAD_LCD_D19__GPIO_1_19 0x1133
420#define MX28_PAD_LCD_D20__GPIO_1_20 0x1143
421#define MX28_PAD_LCD_D21__GPIO_1_21 0x1153
422#define MX28_PAD_LCD_D22__GPIO_1_22 0x1163
423#define MX28_PAD_LCD_D23__GPIO_1_23 0x1173
424#define MX28_PAD_LCD_RD_E__GPIO_1_24 0x1183
425#define MX28_PAD_LCD_WR_RWN__GPIO_1_25 0x1193
426#define MX28_PAD_LCD_RS__GPIO_1_26 0x11a3
427#define MX28_PAD_LCD_CS__GPIO_1_27 0x11b3
428#define MX28_PAD_LCD_VSYNC__GPIO_1_28 0x11c3
429#define MX28_PAD_LCD_HSYNC__GPIO_1_29 0x11d3
430#define MX28_PAD_LCD_DOTCLK__GPIO_1_30 0x11e3
431#define MX28_PAD_LCD_ENABLE__GPIO_1_31 0x11f3
432#define MX28_PAD_SSP0_DATA0__GPIO_2_0 0x2003
433#define MX28_PAD_SSP0_DATA1__GPIO_2_1 0x2013
434#define MX28_PAD_SSP0_DATA2__GPIO_2_2 0x2023
435#define MX28_PAD_SSP0_DATA3__GPIO_2_3 0x2033
436#define MX28_PAD_SSP0_DATA4__GPIO_2_4 0x2043
437#define MX28_PAD_SSP0_DATA5__GPIO_2_5 0x2053
438#define MX28_PAD_SSP0_DATA6__GPIO_2_6 0x2063
439#define MX28_PAD_SSP0_DATA7__GPIO_2_7 0x2073
440#define MX28_PAD_SSP0_CMD__GPIO_2_8 0x2083
441#define MX28_PAD_SSP0_DETECT__GPIO_2_9 0x2093
442#define MX28_PAD_SSP0_SCK__GPIO_2_10 0x20a3
443#define MX28_PAD_SSP1_SCK__GPIO_2_12 0x20c3
444#define MX28_PAD_SSP1_CMD__GPIO_2_13 0x20d3
445#define MX28_PAD_SSP1_DATA0__GPIO_2_14 0x20e3
446#define MX28_PAD_SSP1_DATA3__GPIO_2_15 0x20f3
447#define MX28_PAD_SSP2_SCK__GPIO_2_16 0x2103
448#define MX28_PAD_SSP2_MOSI__GPIO_2_17 0x2113
449#define MX28_PAD_SSP2_MISO__GPIO_2_18 0x2123
450#define MX28_PAD_SSP2_SS0__GPIO_2_19 0x2133
451#define MX28_PAD_SSP2_SS1__GPIO_2_20 0x2143
452#define MX28_PAD_SSP2_SS2__GPIO_2_21 0x2153
453#define MX28_PAD_SSP3_SCK__GPIO_2_24 0x2183
454#define MX28_PAD_SSP3_MOSI__GPIO_2_25 0x2193
455#define MX28_PAD_SSP3_MISO__GPIO_2_26 0x21a3
456#define MX28_PAD_SSP3_SS0__GPIO_2_27 0x21b3
457#define MX28_PAD_AUART0_RX__GPIO_3_0 0x3003
458#define MX28_PAD_AUART0_TX__GPIO_3_1 0x3013
459#define MX28_PAD_AUART0_CTS__GPIO_3_2 0x3023
460#define MX28_PAD_AUART0_RTS__GPIO_3_3 0x3033
461#define MX28_PAD_AUART1_RX__GPIO_3_4 0x3043
462#define MX28_PAD_AUART1_TX__GPIO_3_5 0x3053
463#define MX28_PAD_AUART1_CTS__GPIO_3_6 0x3063
464#define MX28_PAD_AUART1_RTS__GPIO_3_7 0x3073
465#define MX28_PAD_AUART2_RX__GPIO_3_8 0x3083
466#define MX28_PAD_AUART2_TX__GPIO_3_9 0x3093
467#define MX28_PAD_AUART2_CTS__GPIO_3_10 0x30a3
468#define MX28_PAD_AUART2_RTS__GPIO_3_11 0x30b3
469#define MX28_PAD_AUART3_RX__GPIO_3_12 0x30c3
470#define MX28_PAD_AUART3_TX__GPIO_3_13 0x30d3
471#define MX28_PAD_AUART3_CTS__GPIO_3_14 0x30e3
472#define MX28_PAD_AUART3_RTS__GPIO_3_15 0x30f3
473#define MX28_PAD_PWM0__GPIO_3_16 0x3103
474#define MX28_PAD_PWM1__GPIO_3_17 0x3113
475#define MX28_PAD_PWM2__GPIO_3_18 0x3123
476#define MX28_PAD_SAIF0_MCLK__GPIO_3_20 0x3143
477#define MX28_PAD_SAIF0_LRCLK__GPIO_3_21 0x3153
478#define MX28_PAD_SAIF0_BITCLK__GPIO_3_22 0x3163
479#define MX28_PAD_SAIF0_SDATA0__GPIO_3_23 0x3173
480#define MX28_PAD_I2C0_SCL__GPIO_3_24 0x3183
481#define MX28_PAD_I2C0_SDA__GPIO_3_25 0x3193
482#define MX28_PAD_SAIF1_SDATA0__GPIO_3_26 0x31a3
483#define MX28_PAD_SPDIF__GPIO_3_27 0x31b3
484#define MX28_PAD_PWM3__GPIO_3_28 0x31c3
485#define MX28_PAD_PWM4__GPIO_3_29 0x31d3
486#define MX28_PAD_LCD_RESET__GPIO_3_30 0x31e3
487#define MX28_PAD_ENET0_MDC__GPIO_4_0 0x4003
488#define MX28_PAD_ENET0_MDIO__GPIO_4_1 0x4013
489#define MX28_PAD_ENET0_RX_EN__GPIO_4_2 0x4023
490#define MX28_PAD_ENET0_RXD0__GPIO_4_3 0x4033
491#define MX28_PAD_ENET0_RXD1__GPIO_4_4 0x4043
492#define MX28_PAD_ENET0_TX_CLK__GPIO_4_5 0x4053
493#define MX28_PAD_ENET0_TX_EN__GPIO_4_6 0x4063
494#define MX28_PAD_ENET0_TXD0__GPIO_4_7 0x4073
495#define MX28_PAD_ENET0_TXD1__GPIO_4_8 0x4083
496#define MX28_PAD_ENET0_RXD2__GPIO_4_9 0x4093
497#define MX28_PAD_ENET0_RXD3__GPIO_4_10 0x40a3
498#define MX28_PAD_ENET0_TXD2__GPIO_4_11 0x40b3
499#define MX28_PAD_ENET0_TXD3__GPIO_4_12 0x40c3
500#define MX28_PAD_ENET0_RX_CLK__GPIO_4_13 0x40d3
501#define MX28_PAD_ENET0_COL__GPIO_4_14 0x40e3
502#define MX28_PAD_ENET0_CRS__GPIO_4_15 0x40f3
503#define MX28_PAD_ENET_CLK__GPIO_4_16 0x4103
504#define MX28_PAD_JTAG_RTCK__GPIO_4_20 0x4143
505
506#endif /* __DT_BINDINGS_MX28_PINCTRL_H__ */
diff --git a/arch/arm/boot/dts/imx28-sps1.dts b/arch/arm/boot/dts/imx28-sps1.dts
index 6c6a5442800a..4870f07bf56a 100644
--- a/arch/arm/boot/dts/imx28-sps1.dts
+++ b/arch/arm/boot/dts/imx28-sps1.dts
@@ -10,7 +10,7 @@
10 */ 10 */
11 11
12/dts-v1/; 12/dts-v1/;
13/include/ "imx28.dtsi" 13#include "imx28.dtsi"
14 14
15/ { 15/ {
16 model = "SchulerControl GmbH, SC SPS 1"; 16 model = "SchulerControl GmbH, SC SPS 1";
@@ -29,13 +29,13 @@
29 hog_pins_a: hog-gpios@0 { 29 hog_pins_a: hog-gpios@0 {
30 reg = <0>; 30 reg = <0>;
31 fsl,pinmux-ids = < 31 fsl,pinmux-ids = <
32 0x0003 /* MX28_PAD_GPMI_D00__GPIO_0_0 */ 32 MX28_PAD_GPMI_D00__GPIO_0_0
33 0x0033 /* MX28_PAD_GPMI_D03__GPIO_0_3 */ 33 MX28_PAD_GPMI_D03__GPIO_0_3
34 0x0063 /* MX28_PAD_GPMI_D06__GPIO_0_6 */ 34 MX28_PAD_GPMI_D06__GPIO_0_6
35 >; 35 >;
36 fsl,drive-strength = <0>; 36 fsl,drive-strength = <MXS_DRIVE_4mA>;
37 fsl,voltage = <1>; 37 fsl,voltage = <MXS_VOLTAGE_HIGH>;
38 fsl,pull-up = <0>; 38 fsl,pull-up = <MXS_PULL_DISABLE>;
39 }; 39 };
40 40
41 }; 41 };
diff --git a/arch/arm/boot/dts/imx28-tx28.dts b/arch/arm/boot/dts/imx28-tx28.dts
index 37be532f0055..be5a0550d58c 100644
--- a/arch/arm/boot/dts/imx28-tx28.dts
+++ b/arch/arm/boot/dts/imx28-tx28.dts
@@ -1,106 +1,139 @@
1/*
2 * Copyright 2012 Shawn Guo <shawn.guo@linaro.org>
3 * Copyright 2013 Lothar Waßmann <LW@KARO-electronics.de>
4 *
5 * The code contained herein is licensed under the GNU General Public
6 * License. You may obtain a copy of the GNU General Public License
7 * Version 2 at the following locations:
8 *
9 * http://www.opensource.org/licenses/gpl-license.html
10 * http://www.gnu.org/copyleft/gpl.html
11 */
12
1/dts-v1/; 13/dts-v1/;
2/include/ "imx28.dtsi" 14#include "imx28.dtsi"
15#include <dt-bindings/gpio/gpio.h>
3 16
4/ { 17/ {
5 model = "Ka-Ro electronics TX28 module"; 18 model = "Ka-Ro electronics TX28 module";
6 compatible = "karo,tx28", "fsl,imx28"; 19 compatible = "karo,tx28", "fsl,imx28";
7 20
21 aliases {
22 can0 = &can0;
23 can1 = &can1;
24 display = &display;
25 ds1339 = &ds1339;
26 gpio5 = &gpio5;
27 lcdif = &lcdif;
28 lcdif_23bit_pins = &tx28_lcdif_23bit_pins;
29 lcdif_24bit_pins = &lcdif_24bit_pins_a;
30 stk5led = &user_led;
31 usbotg = &usb0;
32 };
33
8 memory { 34 memory {
9 reg = <0x40000000 0x08000000>; 35 reg = <0 0>; /* will be filled in by U-Boot */
10 }; 36 };
11
12 apb@80000000 {
13 apbh@80000000 {
14 ssp0: ssp@80010000 {
15 compatible = "fsl,imx28-mmc";
16 pinctrl-names = "default";
17 pinctrl-0 = <&mmc0_4bit_pins_a
18 &mmc0_cd_cfg
19 &mmc0_sck_cfg>;
20 bus-width = <4>;
21 status = "okay";
22 };
23 37
24 pinctrl@80018000 { 38 onewire {
25 pinctrl-names = "default"; 39 compatible = "w1-gpio";
26 pinctrl-0 = <&hog_pins_a>; 40 gpios = <&gpio2 7 0>;
27 41 status = "disabled";
28 hog_pins_a: hog@0 { 42 };
29 reg = <0>; 43
30 fsl,pinmux-ids = < 44 regulators {
31 0x40a3 /* MX28_PAD_ENET0_RXD3__GPIO_4_10 */ 45 compatible = "simple-bus";
32 >; 46
33 fsl,drive-strength = <0>; 47 reg_usb0_vbus: usb0_vbus {
34 fsl,voltage = <1>; 48 compatible = "regulator-fixed";
35 fsl,pull-up = <0>; 49 regulator-name = "usb0_vbus";
36 }; 50 regulator-min-microvolt = <5000000>;
37 51 regulator-max-microvolt = <5000000>;
38 mac0_pins_gpio: mac0-gpio-mode@0 { 52 gpio = <&gpio0 18 0>;
39 reg = <0>; 53 enable-active-high;
40 fsl,pinmux-ids = <
41 0x4003 /* MX28_PAD_ENET0_MDC__GPIO_4_0 */
42 0x4013 /* MX28_PAD_ENET0_MDIO__GPIO_4_1 */
43 0x4023 /* MX28_PAD_ENET0_RX_EN__GPIO_4_2 */
44 0x4033 /* MX28_PAD_ENET0_RXD0__GPIO_4_3 */
45 0x4043 /* MX28_PAD_ENET0_RXD1__GPIO_4_4 */
46 0x4063 /* MX28_PAD_ENET0_TX_EN__GPIO_4_6 */
47 0x4073 /* MX28_PAD_ENET0_TXD0__GPIO_4_7 */
48 0x4083 /* MX28_PAD_ENET0_TXD1__GPIO_4_8 */
49 0x4103 /* MX28_PAD_ENET_CLK__GPIO_4_16 */
50 >;
51 fsl,drive-strength = <0>;
52 fsl,voltage = <1>;
53 fsl,pull-up = <0>;
54 };
55 };
56 }; 54 };
57 55
58 apbx@80040000 { 56 reg_usb1_vbus: usb1_vbus {
59 i2c0: i2c@80058000 { 57 compatible = "regulator-fixed";
60 pinctrl-names = "default"; 58 regulator-name = "usb1_vbus";
61 pinctrl-0 = <&i2c0_pins_a>; 59 regulator-min-microvolt = <5000000>;
62 status = "okay"; 60 regulator-max-microvolt = <5000000>;
61 gpio = <&gpio3 27 0>;
62 enable-active-high;
63 };
63 64
64 ds1339: rtc@68 { 65 reg_2p5v: 2p5v {
65 compatible = "mxim,ds1339"; 66 compatible = "regulator-fixed";
66 reg = <0x68>; 67 regulator-name = "2P5V";
67 }; 68 regulator-min-microvolt = <2500000>;
68 }; 69 regulator-max-microvolt = <2500000>;
70 regulator-always-on;
71 };
69 72
70 pwm: pwm@80064000 { 73 reg_3p3v: 3p3v {
71 pinctrl-names = "default"; 74 compatible = "regulator-fixed";
72 pinctrl-0 = <&pwm0_pins_a>; 75 regulator-name = "3P3V";
73 status = "okay"; 76 regulator-min-microvolt = <3300000>;
74 }; 77 regulator-max-microvolt = <3300000>;
78 regulator-always-on;
79 };
75 80
76 duart: serial@80074000 { 81 reg_can_xcvr: can-xcvr {
77 pinctrl-names = "default"; 82 compatible = "regulator-fixed";
78 pinctrl-0 = <&duart_4pins_a>; 83 regulator-name = "CAN XCVR";
79 status = "okay"; 84 regulator-min-microvolt = <3300000>;
80 }; 85 regulator-max-microvolt = <3300000>;
86 gpio = <&gpio1 0 0>;
87 enable-active-low;
88 pinctrl-names = "default";
89 pinctrl-0 = <&tx28_flexcan_xcvr_pins>;
90 };
81 91
82 auart1: serial@8006c000 { 92 reg_lcd: lcd-power {
83 pinctrl-names = "default"; 93 compatible = "regulator-fixed";
84 pinctrl-0 = <&auart1_pins_a>; 94 regulator-name = "LCD POWER";
85 status = "okay"; 95 regulator-min-microvolt = <3300000>;
86 }; 96 regulator-max-microvolt = <3300000>;
97 gpio = <&gpio1 31 0>;
98 enable-active-high;
99 };
100
101 reg_lcd_reset: lcd-reset {
102 compatible = "regulator-fixed";
103 regulator-name = "LCD RESET";
104 regulator-min-microvolt = <3300000>;
105 regulator-max-microvolt = <3300000>;
106 gpio = <&gpio3 30 0>;
107 startup-delay-us = <300000>;
108 enable-active-high;
109 regulator-always-on;
110 regulator-boot-on;
87 }; 111 };
88 }; 112 };
89 113
90 ahb@80080000 { 114 clocks {
91 mac0: ethernet@800f0000 { 115 #address-cells = <1>;
92 phy-mode = "rmii"; 116 #size-cells = <0>;
93 pinctrl-names = "default", "gpio_mode"; 117 mclk: clock@0 {
94 pinctrl-0 = <&mac0_pins_a>; 118 compatible = "fixed-clock";
95 pinctrl-1 = <&mac0_pins_gpio>; 119 reg = <0>;
96 status = "okay"; 120 #clock-cells = <0>;
121 clock-frequency = <27000000>;
97 }; 122 };
98 }; 123 };
99 124
125 sound {
126 compatible = "fsl,imx28-tx28-sgtl5000",
127 "fsl,mxs-audio-sgtl5000";
128 model = "imx28-tx28-sgtl5000";
129 saif-controllers = <&saif0 &saif1>;
130 audio-codec = <&sgtl5000>;
131 };
132
100 leds { 133 leds {
101 compatible = "gpio-leds"; 134 compatible = "gpio-leds";
102 135
103 user { 136 user_led: user {
104 label = "Heartbeat"; 137 label = "Heartbeat";
105 gpios = <&gpio4 10 0>; 138 gpios = <&gpio4 10 0>;
106 linux,default-trigger = "heartbeat"; 139 linux,default-trigger = "heartbeat";
@@ -109,8 +142,512 @@
109 142
110 backlight { 143 backlight {
111 compatible = "pwm-backlight"; 144 compatible = "pwm-backlight";
112 pwms = <&pwm 0 5000000>; 145 pwms = <&pwm 0 500000>;
113 brightness-levels = <0 4 8 16 32 64 128 255>; 146 /*
114 default-brightness-level = <6>; 147 * a silly way to create a 1:1 relationship between the
148 * PWM value and the actual duty cycle
149 */
150 brightness-levels = < 0 1 2 3 4 5 6 7 8 9
151 10 11 12 13 14 15 16 17 18 19
152 20 21 22 23 24 25 26 27 28 29
153 30 31 32 33 34 35 36 37 38 39
154 40 41 42 43 44 45 46 47 48 49
155 50 51 52 53 54 55 56 57 58 59
156 60 61 62 63 64 65 66 67 68 69
157 70 71 72 73 74 75 76 77 78 79
158 80 81 82 83 84 85 86 87 88 89
159 90 91 92 93 94 95 96 97 98 99
160 100>;
161 default-brightness-level = <50>;
162 };
163
164 matrix_keypad: matrix-keypad@0 {
165 compatible = "gpio-matrix-keypad";
166 col-gpios = <
167 &gpio5 0 0
168 &gpio5 1 0
169 &gpio5 2 0
170 &gpio5 3 0
171 >;
172 row-gpios = <
173 &gpio5 4 0
174 &gpio5 5 0
175 &gpio5 6 0
176 &gpio5 7 0
177 >;
178 /* sample keymap */
179 linux,keymap = <
180 0x00000074 /* row 0, col 0, KEY_POWER */
181 0x00010052 /* row 0, col 1, KEY_KP0 */
182 0x0002004f /* row 0, col 2, KEY_KP1 */
183 0x00030050 /* row 0, col 3, KEY_KP2 */
184 0x01000051 /* row 1, col 0, KEY_KP3 */
185 0x0101004b /* row 1, col 1, KEY_KP4 */
186 0x0102004c /* row 1, col 2, KEY_KP5 */
187 0x0103004d /* row 1, col 3, KEY_KP6 */
188 0x02000047 /* row 2, col 0, KEY_KP7 */
189 0x02010048 /* row 2, col 1, KEY_KP8 */
190 0x02020049 /* row 2, col 2, KEY_KP9 */
191 >;
192 gpio-activelow;
193 linux,wakeup;
194 debounce-delay-ms = <100>;
195 col-scan-delay-us = <5000>;
196 linux,no-autorepeat;
197 };
198};
199
200/* 2nd TX-Std UART - (A)UART1 */
201&auart1 {
202 pinctrl-names = "default";
203 pinctrl-0 = <&auart1_pins_a>;
204 status = "okay";
205};
206
207/* 3rd TX-Std UART - (A)UART3 */
208&auart3 {
209 pinctrl-names = "default";
210 pinctrl-0 = <&auart3_pins_a>;
211 status = "okay";
212};
213
214&can0 {
215 pinctrl-names = "default";
216 pinctrl-0 = <&can0_pins_a>;
217 xceiver-supply = <&reg_can_xcvr>;
218 status = "okay";
219};
220
221&can1 {
222 pinctrl-names = "default";
223 pinctrl-0 = <&can1_pins_a>;
224 xceiver-supply = <&reg_can_xcvr>;
225 status = "okay";
226};
227
228&digctl {
229 status = "okay";
230};
231
232/* 1st TX-Std UART - (D)UART */
233&duart {
234 pinctrl-names = "default";
235 pinctrl-0 = <&duart_4pins_a>;
236 status = "okay";
237};
238
239&gpmi {
240 pinctrl-0 = <&gpmi_pins_a &gpmi_status_cfg>;
241 nand-on-flash-bbt;
242 status = "okay";
243};
244
245&i2c0 {
246 pinctrl-names = "default";
247 pinctrl-0 = <&i2c0_pins_a>;
248 clock-frequency = <400000>;
249 status = "okay";
250
251 sgtl5000: sgtl5000@0a {
252 compatible = "fsl,sgtl5000";
253 reg = <0x0a>;
254 VDDA-supply = <&reg_2p5v>;
255 VDDIO-supply = <&reg_3p3v>;
256 clocks = <&mclk>;
257 };
258
259 gpio5: pca953x@20 {
260 compatible = "nxp,pca9554";
261 reg = <0x20>;
262 pinctrl-names = "default";
263 pinctrl-0 = <&tx28_pca9554_pins>;
264 interrupt-parent = <&gpio3>;
265 interrupts = <28 0>;
266 gpio-controller;
267 #gpio-cells = <2>;
268 interrupt-controller;
269 #interrupt-cells = <2>;
270 };
271
272 polytouch: edt-ft5x06@38 {
273 compatible = "edt,edt-ft5x06";
274 reg = <0x38>;
275 pinctrl-names = "default";
276 pinctrl-0 = <&tx28_edt_ft5x06_pins>;
277 interrupt-parent = <&gpio2>;
278 interrupts = <5 0>;
279 reset-gpios = <&gpio2 6 1>;
280 wake-gpios = <&gpio4 9 0>;
281 };
282
283 touchscreen: tsc2007@48 {
284 compatible = "ti,tsc2007";
285 reg = <0x48>;
286 pinctrl-names = "default";
287 pinctrl-0 = <&tx28_tsc2007_pins>;
288 interrupt-parent = <&gpio3>;
289 interrupts = <20 0>;
290 pendown-gpio = <&gpio3 20 1>;
291 ti,x-plate-ohms = /bits/ 16 <660>;
292 };
293
294 ds1339: rtc@68 {
295 compatible = "mxim,ds1339";
296 reg = <0x68>;
297 };
298};
299
300&lcdif {
301 pinctrl-names = "default";
302 pinctrl-0 = <&lcdif_24bit_pins_a &lcdif_sync_pins_a &tx28_lcdif_ctrl_pins>;
303 lcd-supply = <&reg_lcd>;
304 display = <&display>;
305 status = "okay";
306
307 display: display@0 {
308 bits-per-pixel = <32>;
309 bus-width = <24>;
310 display-timings {
311 native-mode = <&timing5>;
312 timing0: timing0 {
313 panel-name = "VGA";
314 clock-frequency = <25175000>;
315 hactive = <640>;
316 vactive = <480>;
317 hback-porch = <48>;
318 hsync-len = <96>;
319 hfront-porch = <16>;
320 vback-porch = <33>;
321 vsync-len = <2>;
322 vfront-porch = <10>;
323 hsync-active = <0>;
324 vsync-active = <0>;
325 de-active = <1>;
326 pixelclk-active = <1>;
327 };
328
329 timing1: timing1 {
330 panel-name = "ETV570";
331 clock-frequency = <25175000>;
332 hactive = <640>;
333 vactive = <480>;
334 hback-porch = <114>;
335 hsync-len = <30>;
336 hfront-porch = <16>;
337 vback-porch = <32>;
338 vsync-len = <3>;
339 vfront-porch = <10>;
340 hsync-active = <0>;
341 vsync-active = <0>;
342 de-active = <1>;
343 pixelclk-active = <1>;
344 };
345
346 timing2: timing2 {
347 panel-name = "ET0350";
348 clock-frequency = <6500000>;
349 hactive = <320>;
350 vactive = <240>;
351 hback-porch = <34>;
352 hsync-len = <34>;
353 hfront-porch = <20>;
354 vback-porch = <15>;
355 vsync-len = <3>;
356 vfront-porch = <4>;
357 hsync-active = <0>;
358 vsync-active = <0>;
359 de-active = <1>;
360 pixelclk-active = <1>;
361 };
362
363 timing3: timing3 {
364 panel-name = "ET0430";
365 clock-frequency = <9000000>;
366 hactive = <480>;
367 vactive = <272>;
368 hback-porch = <2>;
369 hsync-len = <41>;
370 hfront-porch = <2>;
371 vback-porch = <2>;
372 vsync-len = <10>;
373 vfront-porch = <2>;
374 hsync-active = <0>;
375 vsync-active = <0>;
376 de-active = <1>;
377 pixelclk-active = <1>;
378 };
379
380 timing4: timing4 {
381 panel-name = "ET0500", "ET0700";
382 clock-frequency = <33260000>;
383 hactive = <800>;
384 vactive = <480>;
385 hback-porch = <88>;
386 hsync-len = <128>;
387 hfront-porch = <40>;
388 vback-porch = <33>;
389 vsync-len = <2>;
390 vfront-porch = <10>;
391 hsync-active = <0>;
392 vsync-active = <0>;
393 de-active = <1>;
394 pixelclk-active = <1>;
395 };
396
397 timing5: timing5 {
398 panel-name = "ETQ570";
399 clock-frequency = <6400000>;
400 hactive = <320>;
401 vactive = <240>;
402 hback-porch = <38>;
403 hsync-len = <30>;
404 hfront-porch = <30>;
405 vback-porch = <16>;
406 vsync-len = <3>;
407 vfront-porch = <4>;
408 hsync-active = <0>;
409 vsync-active = <0>;
410 de-active = <1>;
411 pixelclk-active = <1>;
412 };
413 };
414 };
415};
416
417&lradc {
418 fsl,lradc-touchscreen-wires = <4>;
419 status = "okay";
420};
421
422&mac0 {
423 phy-mode = "rmii";
424 pinctrl-names = "default", "gpio_mode";
425 pinctrl-0 = <&mac0_pins_a>;
426 pinctrl-1 = <&tx28_mac0_pins_gpio>;
427 status = "okay";
428};
429
430&mac1 {
431 phy-mode = "rmii";
432 pinctrl-names = "default";
433 pinctrl-0 = <&mac1_pins_a>;
434 /* not enabled by default */
435};
436
437&mxs_rtc {
438 status = "okay";
439};
440
441&ocotp {
442 status = "okay";
443};
444
445&pwm {
446 pinctrl-names = "default";
447 pinctrl-0 = <&pwm0_pins_a>;
448 status = "okay";
449};
450
451&pinctrl {
452 pinctrl-names = "default";
453 pinctrl-0 = <&hog_pins_a>;
454
455 hog_pins_a: hog@0 {
456 reg = <0>;
457 fsl,pinmux-ids = <
458 MX28_PAD_ENET0_RXD3__GPIO_4_10 /* module LED */
459 >;
460 fsl,drive-strength = <MXS_DRIVE_4mA>;
461 fsl,voltage = <MXS_VOLTAGE_HIGH>;
462 fsl,pull-up = <MXS_PULL_DISABLE>;
463 };
464
465 tx28_edt_ft5x06_pins: tx28-edt-ft5x06-pins {
466 fsl,pinmux-ids = <
467 MX28_PAD_SSP0_DATA6__GPIO_2_6 /* RESET */
468 MX28_PAD_SSP0_DATA5__GPIO_2_5 /* IRQ */
469 MX28_PAD_ENET0_RXD2__GPIO_4_9 /* WAKE */
470 >;
471 fsl,drive-strength = <MXS_DRIVE_4mA>;
472 fsl,voltage = <MXS_VOLTAGE_HIGH>;
473 fsl,pull-up = <MXS_PULL_DISABLE>;
474 };
475
476 tx28_flexcan_xcvr_pins: tx28-flexcan-xcvr-pins {
477 fsl,pinmux-ids = <
478 MX28_PAD_LCD_D00__GPIO_1_0
479 >;
480 fsl,drive-strength = <MXS_DRIVE_4mA>;
481 fsl,voltage = <MXS_VOLTAGE_HIGH>;
482 fsl,pull-up = <MXS_PULL_DISABLE>;
483 };
484
485 tx28_lcdif_23bit_pins: tx28-lcdif-23bit {
486 fsl,pinmux-ids = <
487 /* LCD_D00 may be used as Flexcan Transceiver Enable on STK5-V5 */
488 MX28_PAD_LCD_D01__LCD_D1
489 MX28_PAD_LCD_D02__LCD_D2
490 MX28_PAD_LCD_D03__LCD_D3
491 MX28_PAD_LCD_D04__LCD_D4
492 MX28_PAD_LCD_D05__LCD_D5
493 MX28_PAD_LCD_D06__LCD_D6
494 MX28_PAD_LCD_D07__LCD_D7
495 MX28_PAD_LCD_D08__LCD_D8
496 MX28_PAD_LCD_D09__LCD_D9
497 MX28_PAD_LCD_D10__LCD_D10
498 MX28_PAD_LCD_D11__LCD_D11
499 MX28_PAD_LCD_D12__LCD_D12
500 MX28_PAD_LCD_D13__LCD_D13
501 MX28_PAD_LCD_D14__LCD_D14
502 MX28_PAD_LCD_D15__LCD_D15
503 MX28_PAD_LCD_D16__LCD_D16
504 MX28_PAD_LCD_D17__LCD_D17
505 MX28_PAD_LCD_D18__LCD_D18
506 MX28_PAD_LCD_D19__LCD_D19
507 MX28_PAD_LCD_D20__LCD_D20
508 MX28_PAD_LCD_D21__LCD_D21
509 MX28_PAD_LCD_D22__LCD_D22
510 MX28_PAD_LCD_D23__LCD_D23
511 >;
512 fsl,drive-strength = <MXS_DRIVE_4mA>;
513 fsl,voltage = <MXS_VOLTAGE_HIGH>;
514 fsl,pull-up = <MXS_PULL_DISABLE>;
515 };
516
517 tx28_lcdif_ctrl_pins: tx28-lcdif-ctrl {
518 fsl,pinmux-ids = <
519 MX28_PAD_LCD_ENABLE__GPIO_1_31 /* Enable */
520 MX28_PAD_LCD_RESET__GPIO_3_30 /* Reset */
521 >;
522 fsl,drive-strength = <MXS_DRIVE_4mA>;
523 fsl,voltage = <MXS_VOLTAGE_HIGH>;
524 fsl,pull-up = <MXS_PULL_DISABLE>;
525 };
526
527 tx28_mac0_pins_gpio: tx28-mac0-gpio-pins {
528 fsl,pinmux-ids = <
529 MX28_PAD_ENET0_MDC__GPIO_4_0
530 MX28_PAD_ENET0_MDIO__GPIO_4_1
531 MX28_PAD_ENET0_RX_EN__GPIO_4_2
532 MX28_PAD_ENET0_RXD0__GPIO_4_3
533 MX28_PAD_ENET0_RXD1__GPIO_4_4
534 MX28_PAD_ENET0_TX_EN__GPIO_4_6
535 MX28_PAD_ENET0_TXD0__GPIO_4_7
536 MX28_PAD_ENET0_TXD1__GPIO_4_8
537 MX28_PAD_ENET_CLK__GPIO_4_16
538 >;
539 fsl,drive-strength = <MXS_DRIVE_4mA>;
540 fsl,voltage = <MXS_VOLTAGE_HIGH>;
541 fsl,pull-up = <MXS_PULL_DISABLE>;
542 };
543
544 tx28_pca9554_pins: tx28-pca9554-pins {
545 fsl,pinmux-ids = <
546 MX28_PAD_PWM3__GPIO_3_28
547 >;
548 fsl,drive-strength = <MXS_DRIVE_4mA>;
549 fsl,voltage = <MXS_VOLTAGE_HIGH>;
550 fsl,pull-up = <MXS_PULL_DISABLE>;
551 };
552
553 tx28_tsc2007_pins: tx28-tsc2007-pins {
554 fsl,pinmux-ids = <
555 MX28_PAD_SAIF0_MCLK__GPIO_3_20 /* TSC2007 IRQ */
556 >;
557 fsl,drive-strength = <MXS_DRIVE_4mA>;
558 fsl,voltage = <MXS_VOLTAGE_HIGH>;
559 fsl,pull-up = <MXS_PULL_DISABLE>;
560 };
561
562
563 tx28_usbphy0_pins: tx28-usbphy0-pins {
564 fsl,pinmux-ids = <
565 MX28_PAD_GPMI_CE2N__GPIO_0_18 /* USBOTG_VBUSEN */
566 MX28_PAD_GPMI_CE3N__GPIO_0_19 /* USBOTH_OC */
567 >;
568 fsl,drive-strength = <MXS_DRIVE_12mA>;
569 fsl,voltage = <MXS_VOLTAGE_HIGH>;
570 fsl,pull-up = <MXS_PULL_DISABLE>;
571 };
572
573 tx28_usbphy1_pins: tx28-usbphy1-pins {
574 fsl,pinmux-ids = <
575 MX28_PAD_SPDIF__GPIO_3_27 /* USBH_VBUSEN */
576 MX28_PAD_JTAG_RTCK__GPIO_4_20 /* USBH_OC */
577 >;
578 fsl,drive-strength = <MXS_DRIVE_12mA>;
579 fsl,voltage = <MXS_VOLTAGE_HIGH>;
580 fsl,pull-up = <MXS_PULL_DISABLE>;
581 };
582};
583
584&saif0 {
585 pinctrl-names = "default";
586 pinctrl-0 = <&saif0_pins_b>;
587 fsl,saif-master;
588 status = "okay";
589};
590
591&saif1 {
592 pinctrl-names = "default";
593 pinctrl-0 = <&saif1_pins_a>;
594 status = "okay";
595};
596
597&ssp0 {
598 compatible = "fsl,imx28-mmc";
599 pinctrl-names = "default", "special";
600 pinctrl-0 = <&mmc0_4bit_pins_a
601 &mmc0_cd_cfg
602 &mmc0_sck_cfg>;
603 bus-width = <4>;
604 status = "okay";
605};
606
607&ssp3 {
608 compatible = "fsl,imx28-spi";
609 pinctrl-names = "default";
610 pinctrl-0 = <&spi3_pins_a>;
611 clock-frequency = <57600000>;
612 status = "okay";
613
614 spidev0: spi@0 {
615 compatible = "spidev";
616 reg = <0>;
617 spi-max-frequency = <57600000>;
618 };
619
620 spidev1: spi@1 {
621 compatible = "spidev";
622 reg = <1>;
623 spi-max-frequency = <57600000>;
115 }; 624 };
116}; 625};
626
627&usb0 {
628 vbus-supply = <&reg_usb0_vbus>;
629 disable-over-current;
630 dr_mode = "peripheral";
631 status = "okay";
632};
633
634&usb1 {
635 vbus-supply = <&reg_usb1_vbus>;
636 disable-over-current;
637 dr_mode = "host";
638 status = "okay";
639};
640
641&usbphy0 {
642 pinctrl-names = "default";
643 pinctrl-0 = <&tx28_usbphy0_pins>;
644 phy_type = "utmi";
645 status = "okay";
646};
647
648&usbphy1 {
649 pinctrl-names = "default";
650 pinctrl-0 = <&tx28_usbphy1_pins>;
651 phy_type = "utmi";
652 status = "okay";
653};
diff --git a/arch/arm/boot/dts/imx28.dtsi b/arch/arm/boot/dts/imx28.dtsi
index 7363fded95ee..1c5ed9dbebb5 100644
--- a/arch/arm/boot/dts/imx28.dtsi
+++ b/arch/arm/boot/dts/imx28.dtsi
@@ -9,7 +9,8 @@
9 * http://www.gnu.org/copyleft/gpl.html 9 * http://www.gnu.org/copyleft/gpl.html
10 */ 10 */
11 11
12/include/ "skeleton.dtsi" 12#include "skeleton.dtsi"
13#include "imx28-pinfunc.h"
13 14
14/ { 15/ {
15 interrupt-parent = <&icoll>; 16 interrupt-parent = <&icoll>;
@@ -207,538 +208,579 @@
207 duart_pins_a: duart@0 { 208 duart_pins_a: duart@0 {
208 reg = <0>; 209 reg = <0>;
209 fsl,pinmux-ids = < 210 fsl,pinmux-ids = <
210 0x3102 /* MX28_PAD_PWM0__DUART_RX */ 211 MX28_PAD_PWM0__DUART_RX
211 0x3112 /* MX28_PAD_PWM1__DUART_TX */ 212 MX28_PAD_PWM1__DUART_TX
212 >; 213 >;
213 fsl,drive-strength = <0>; 214 fsl,drive-strength = <MXS_DRIVE_4mA>;
214 fsl,voltage = <1>; 215 fsl,voltage = <MXS_VOLTAGE_HIGH>;
215 fsl,pull-up = <0>; 216 fsl,pull-up = <MXS_PULL_DISABLE>;
216 }; 217 };
217 218
218 duart_pins_b: duart@1 { 219 duart_pins_b: duart@1 {
219 reg = <1>; 220 reg = <1>;
220 fsl,pinmux-ids = < 221 fsl,pinmux-ids = <
221 0x3022 /* MX28_PAD_AUART0_CTS__DUART_RX */ 222 MX28_PAD_AUART0_CTS__DUART_RX
222 0x3032 /* MX28_PAD_AUART0_RTS__DUART_TX */ 223 MX28_PAD_AUART0_RTS__DUART_TX
223 >; 224 >;
224 fsl,drive-strength = <0>; 225 fsl,drive-strength = <MXS_DRIVE_4mA>;
225 fsl,voltage = <1>; 226 fsl,voltage = <MXS_VOLTAGE_HIGH>;
226 fsl,pull-up = <0>; 227 fsl,pull-up = <MXS_PULL_DISABLE>;
227 }; 228 };
228 229
229 duart_4pins_a: duart-4pins@0 { 230 duart_4pins_a: duart-4pins@0 {
230 reg = <0>; 231 reg = <0>;
231 fsl,pinmux-ids = < 232 fsl,pinmux-ids = <
232 0x3022 /* MX28_PAD_AUART0_CTS__DUART_RX */ 233 MX28_PAD_AUART0_CTS__DUART_RX
233 0x3032 /* MX28_PAD_AUART0_RTS__DUART_TX */ 234 MX28_PAD_AUART0_RTS__DUART_TX
234 0x3002 /* MX28_PAD_AUART0_RX__DUART_CTS */ 235 MX28_PAD_AUART0_RX__DUART_CTS
235 0x3012 /* MX28_PAD_AUART0_TX__DUART_RTS */ 236 MX28_PAD_AUART0_TX__DUART_RTS
236 >; 237 >;
237 fsl,drive-strength = <0>; 238 fsl,drive-strength = <MXS_DRIVE_4mA>;
238 fsl,voltage = <1>; 239 fsl,voltage = <MXS_VOLTAGE_HIGH>;
239 fsl,pull-up = <0>; 240 fsl,pull-up = <MXS_PULL_DISABLE>;
240 }; 241 };
241 242
242 gpmi_pins_a: gpmi-nand@0 { 243 gpmi_pins_a: gpmi-nand@0 {
243 reg = <0>; 244 reg = <0>;
244 fsl,pinmux-ids = < 245 fsl,pinmux-ids = <
245 0x0000 /* MX28_PAD_GPMI_D00__GPMI_D0 */ 246 MX28_PAD_GPMI_D00__GPMI_D0
246 0x0010 /* MX28_PAD_GPMI_D01__GPMI_D1 */ 247 MX28_PAD_GPMI_D01__GPMI_D1
247 0x0020 /* MX28_PAD_GPMI_D02__GPMI_D2 */ 248 MX28_PAD_GPMI_D02__GPMI_D2
248 0x0030 /* MX28_PAD_GPMI_D03__GPMI_D3 */ 249 MX28_PAD_GPMI_D03__GPMI_D3
249 0x0040 /* MX28_PAD_GPMI_D04__GPMI_D4 */ 250 MX28_PAD_GPMI_D04__GPMI_D4
250 0x0050 /* MX28_PAD_GPMI_D05__GPMI_D5 */ 251 MX28_PAD_GPMI_D05__GPMI_D5
251 0x0060 /* MX28_PAD_GPMI_D06__GPMI_D6 */ 252 MX28_PAD_GPMI_D06__GPMI_D6
252 0x0070 /* MX28_PAD_GPMI_D07__GPMI_D7 */ 253 MX28_PAD_GPMI_D07__GPMI_D7
253 0x0100 /* MX28_PAD_GPMI_CE0N__GPMI_CE0N */ 254 MX28_PAD_GPMI_CE0N__GPMI_CE0N
254 0x0140 /* MX28_PAD_GPMI_RDY0__GPMI_READY0 */ 255 MX28_PAD_GPMI_RDY0__GPMI_READY0
255 0x0180 /* MX28_PAD_GPMI_RDN__GPMI_RDN */ 256 MX28_PAD_GPMI_RDN__GPMI_RDN
256 0x0190 /* MX28_PAD_GPMI_WRN__GPMI_WRN */ 257 MX28_PAD_GPMI_WRN__GPMI_WRN
257 0x01a0 /* MX28_PAD_GPMI_ALE__GPMI_ALE */ 258 MX28_PAD_GPMI_ALE__GPMI_ALE
258 0x01b0 /* MX28_PAD_GPMI_CLE__GPMI_CLE */ 259 MX28_PAD_GPMI_CLE__GPMI_CLE
259 0x01c0 /* MX28_PAD_GPMI_RESETN__GPMI_RESETN */ 260 MX28_PAD_GPMI_RESETN__GPMI_RESETN
260 >; 261 >;
261 fsl,drive-strength = <0>; 262 fsl,drive-strength = <MXS_DRIVE_4mA>;
262 fsl,voltage = <1>; 263 fsl,voltage = <MXS_VOLTAGE_HIGH>;
263 fsl,pull-up = <0>; 264 fsl,pull-up = <MXS_PULL_DISABLE>;
264 }; 265 };
265 266
266 gpmi_status_cfg: gpmi-status-cfg { 267 gpmi_status_cfg: gpmi-status-cfg {
267 fsl,pinmux-ids = < 268 fsl,pinmux-ids = <
268 0x0180 /* MX28_PAD_GPMI_RDN__GPMI_RDN */ 269 MX28_PAD_GPMI_RDN__GPMI_RDN
269 0x0190 /* MX28_PAD_GPMI_WRN__GPMI_WRN */ 270 MX28_PAD_GPMI_WRN__GPMI_WRN
270 0x01c0 /* MX28_PAD_GPMI_RESETN__GPMI_RESETN */ 271 MX28_PAD_GPMI_RESETN__GPMI_RESETN
271 >; 272 >;
272 fsl,drive-strength = <2>; 273 fsl,drive-strength = <MXS_DRIVE_12mA>;
273 }; 274 };
274 275
275 auart0_pins_a: auart0@0 { 276 auart0_pins_a: auart0@0 {
276 reg = <0>; 277 reg = <0>;
277 fsl,pinmux-ids = < 278 fsl,pinmux-ids = <
278 0x3000 /* MX28_PAD_AUART0_RX__AUART0_RX */ 279 MX28_PAD_AUART0_RX__AUART0_RX
279 0x3010 /* MX28_PAD_AUART0_TX__AUART0_TX */ 280 MX28_PAD_AUART0_TX__AUART0_TX
280 0x3020 /* MX28_PAD_AUART0_CTS__AUART0_CTS */ 281 MX28_PAD_AUART0_CTS__AUART0_CTS
281 0x3030 /* MX28_PAD_AUART0_RTS__AUART0_RTS */ 282 MX28_PAD_AUART0_RTS__AUART0_RTS
282 >; 283 >;
283 fsl,drive-strength = <0>; 284 fsl,drive-strength = <MXS_DRIVE_4mA>;
284 fsl,voltage = <1>; 285 fsl,voltage = <MXS_VOLTAGE_HIGH>;
285 fsl,pull-up = <0>; 286 fsl,pull-up = <MXS_PULL_DISABLE>;
286 }; 287 };
287 288
288 auart0_2pins_a: auart0-2pins@0 { 289 auart0_2pins_a: auart0-2pins@0 {
289 reg = <0>; 290 reg = <0>;
290 fsl,pinmux-ids = < 291 fsl,pinmux-ids = <
291 0x3000 /* MX28_PAD_AUART0_RX__AUART0_RX */ 292 MX28_PAD_AUART0_RX__AUART0_RX
292 0x3010 /* MX28_PAD_AUART0_TX__AUART0_TX */ 293 MX28_PAD_AUART0_TX__AUART0_TX
293 >; 294 >;
294 fsl,drive-strength = <0>; 295 fsl,drive-strength = <MXS_DRIVE_4mA>;
295 fsl,voltage = <1>; 296 fsl,voltage = <MXS_VOLTAGE_HIGH>;
296 fsl,pull-up = <0>; 297 fsl,pull-up = <MXS_PULL_DISABLE>;
297 }; 298 };
298 299
299 auart1_pins_a: auart1@0 { 300 auart1_pins_a: auart1@0 {
300 reg = <0>; 301 reg = <0>;
301 fsl,pinmux-ids = < 302 fsl,pinmux-ids = <
302 0x3040 /* MX28_PAD_AUART1_RX__AUART1_RX */ 303 MX28_PAD_AUART1_RX__AUART1_RX
303 0x3050 /* MX28_PAD_AUART1_TX__AUART1_TX */ 304 MX28_PAD_AUART1_TX__AUART1_TX
304 0x3060 /* MX28_PAD_AUART1_CTS__AUART1_CTS */ 305 MX28_PAD_AUART1_CTS__AUART1_CTS
305 0x3070 /* MX28_PAD_AUART1_RTS__AUART1_RTS */ 306 MX28_PAD_AUART1_RTS__AUART1_RTS
306 >; 307 >;
307 fsl,drive-strength = <0>; 308 fsl,drive-strength = <MXS_DRIVE_4mA>;
308 fsl,voltage = <1>; 309 fsl,voltage = <MXS_VOLTAGE_HIGH>;
309 fsl,pull-up = <0>; 310 fsl,pull-up = <MXS_PULL_DISABLE>;
310 }; 311 };
311 312
312 auart1_2pins_a: auart1-2pins@0 { 313 auart1_2pins_a: auart1-2pins@0 {
313 reg = <0>; 314 reg = <0>;
314 fsl,pinmux-ids = < 315 fsl,pinmux-ids = <
315 0x3040 /* MX28_PAD_AUART1_RX__AUART1_RX */ 316 MX28_PAD_AUART1_RX__AUART1_RX
316 0x3050 /* MX28_PAD_AUART1_TX__AUART1_TX */ 317 MX28_PAD_AUART1_TX__AUART1_TX
317 >; 318 >;
318 fsl,drive-strength = <0>; 319 fsl,drive-strength = <MXS_DRIVE_4mA>;
319 fsl,voltage = <1>; 320 fsl,voltage = <MXS_VOLTAGE_HIGH>;
320 fsl,pull-up = <0>; 321 fsl,pull-up = <MXS_PULL_DISABLE>;
321 }; 322 };
322 323
323 auart2_2pins_a: auart2-2pins@0 { 324 auart2_2pins_a: auart2-2pins@0 {
324 reg = <0>; 325 reg = <0>;
325 fsl,pinmux-ids = < 326 fsl,pinmux-ids = <
326 0x2101 /* MX28_PAD_SSP2_SCK__AUART2_RX */ 327 MX28_PAD_SSP2_SCK__AUART2_RX
327 0x2111 /* MX28_PAD_SSP2_MOSI__AUART2_TX */ 328 MX28_PAD_SSP2_MOSI__AUART2_TX
328 >; 329 >;
329 fsl,drive-strength = <0>; 330 fsl,drive-strength = <MXS_DRIVE_4mA>;
330 fsl,voltage = <1>; 331 fsl,voltage = <MXS_VOLTAGE_HIGH>;
331 fsl,pull-up = <0>; 332 fsl,pull-up = <MXS_PULL_DISABLE>;
332 }; 333 };
333 334
334 auart2_2pins_b: auart2-2pins@1 { 335 auart2_2pins_b: auart2-2pins@1 {
335 reg = <1>; 336 reg = <1>;
336 fsl,pinmux-ids = < 337 fsl,pinmux-ids = <
337 0x3080 /* MX28_PAD_AUART2_RX__AUART2_RX */ 338 MX28_PAD_AUART2_RX__AUART2_RX
338 0x3090 /* MX28_PAD_AUART2_TX__AUART2_TX */ 339 MX28_PAD_AUART2_TX__AUART2_TX
339 >; 340 >;
340 fsl,drive-strength = <0>; 341 fsl,drive-strength = <MXS_DRIVE_4mA>;
341 fsl,voltage = <1>; 342 fsl,voltage = <MXS_VOLTAGE_HIGH>;
342 fsl,pull-up = <0>; 343 fsl,pull-up = <MXS_PULL_DISABLE>;
343 }; 344 };
344 345
345 auart3_pins_a: auart3@0 { 346 auart3_pins_a: auart3@0 {
346 reg = <0>; 347 reg = <0>;
347 fsl,pinmux-ids = < 348 fsl,pinmux-ids = <
348 0x30c0 /* MX28_PAD_AUART3_RX__AUART3_RX */ 349 MX28_PAD_AUART3_RX__AUART3_RX
349 0x30d0 /* MX28_PAD_AUART3_TX__AUART3_TX */ 350 MX28_PAD_AUART3_TX__AUART3_TX
350 0x30e0 /* MX28_PAD_AUART3_CTS__AUART3_CTS */ 351 MX28_PAD_AUART3_CTS__AUART3_CTS
351 0x30f0 /* MX28_PAD_AUART3_RTS__AUART3_RTS */ 352 MX28_PAD_AUART3_RTS__AUART3_RTS
352 >; 353 >;
353 fsl,drive-strength = <0>; 354 fsl,drive-strength = <MXS_DRIVE_4mA>;
354 fsl,voltage = <1>; 355 fsl,voltage = <MXS_VOLTAGE_HIGH>;
355 fsl,pull-up = <0>; 356 fsl,pull-up = <MXS_PULL_DISABLE>;
356 }; 357 };
357 358
358 auart3_2pins_a: auart3-2pins@0 { 359 auart3_2pins_a: auart3-2pins@0 {
359 reg = <0>; 360 reg = <0>;
360 fsl,pinmux-ids = < 361 fsl,pinmux-ids = <
361 0x2121 /* MX28_PAD_SSP2_MISO__AUART3_RX */ 362 MX28_PAD_SSP2_MISO__AUART3_RX
362 0x2131 /* MX28_PAD_SSP2_SS0__AUART3_TX */ 363 MX28_PAD_SSP2_SS0__AUART3_TX
363 >; 364 >;
364 fsl,drive-strength = <0>; 365 fsl,drive-strength = <MXS_DRIVE_4mA>;
365 fsl,voltage = <1>; 366 fsl,voltage = <MXS_VOLTAGE_HIGH>;
366 fsl,pull-up = <0>; 367 fsl,pull-up = <MXS_PULL_DISABLE>;
367 }; 368 };
368 369
369 auart3_2pins_b: auart3-2pins@1 { 370 auart3_2pins_b: auart3-2pins@1 {
370 reg = <1>; 371 reg = <1>;
371 fsl,pinmux-ids = < 372 fsl,pinmux-ids = <
372 0x30c0 /* MX28_PAD_AUART3_RX__AUART3_RX */ 373 MX28_PAD_AUART3_RX__AUART3_RX
373 0x30d0 /* MX28_PAD_AUART3_TX__AUART3_TX */ 374 MX28_PAD_AUART3_TX__AUART3_TX
374 >; 375 >;
375 fsl,drive-strength = <0>; 376 fsl,drive-strength = <MXS_DRIVE_4mA>;
376 fsl,voltage = <1>; 377 fsl,voltage = <MXS_VOLTAGE_HIGH>;
377 fsl,pull-up = <0>; 378 fsl,pull-up = <MXS_PULL_DISABLE>;
378 }; 379 };
379 380
380 auart4_2pins_a: auart4@0 { 381 auart4_2pins_a: auart4@0 {
381 reg = <0>; 382 reg = <0>;
382 fsl,pinmux-ids = < 383 fsl,pinmux-ids = <
383 0x2181 /* MX28_PAD_SSP3_SCK__AUART4_TX */ 384 MX28_PAD_SSP3_SCK__AUART4_TX
384 0x2191 /* MX28_PAD_SSP3_MOSI__AUART4_RX */ 385 MX28_PAD_SSP3_MOSI__AUART4_RX
385 >; 386 >;
386 fsl,drive-strength = <0>; 387 fsl,drive-strength = <MXS_DRIVE_4mA>;
387 fsl,voltage = <1>; 388 fsl,voltage = <MXS_VOLTAGE_HIGH>;
388 fsl,pull-up = <0>; 389 fsl,pull-up = <MXS_PULL_DISABLE>;
389 }; 390 };
390 391
391 mac0_pins_a: mac0@0 { 392 mac0_pins_a: mac0@0 {
392 reg = <0>; 393 reg = <0>;
393 fsl,pinmux-ids = < 394 fsl,pinmux-ids = <
394 0x4000 /* MX28_PAD_ENET0_MDC__ENET0_MDC */ 395 MX28_PAD_ENET0_MDC__ENET0_MDC
395 0x4010 /* MX28_PAD_ENET0_MDIO__ENET0_MDIO */ 396 MX28_PAD_ENET0_MDIO__ENET0_MDIO
396 0x4020 /* MX28_PAD_ENET0_RX_EN__ENET0_RX_EN */ 397 MX28_PAD_ENET0_RX_EN__ENET0_RX_EN
397 0x4030 /* MX28_PAD_ENET0_RXD0__ENET0_RXD0 */ 398 MX28_PAD_ENET0_RXD0__ENET0_RXD0
398 0x4040 /* MX28_PAD_ENET0_RXD1__ENET0_RXD1 */ 399 MX28_PAD_ENET0_RXD1__ENET0_RXD1
399 0x4060 /* MX28_PAD_ENET0_TX_EN__ENET0_TX_EN */ 400 MX28_PAD_ENET0_TX_EN__ENET0_TX_EN
400 0x4070 /* MX28_PAD_ENET0_TXD0__ENET0_TXD0 */ 401 MX28_PAD_ENET0_TXD0__ENET0_TXD0
401 0x4080 /* MX28_PAD_ENET0_TXD1__ENET0_TXD1 */ 402 MX28_PAD_ENET0_TXD1__ENET0_TXD1
402 0x4100 /* MX28_PAD_ENET_CLK__CLKCTRL_ENET */ 403 MX28_PAD_ENET_CLK__CLKCTRL_ENET
403 >; 404 >;
404 fsl,drive-strength = <1>; 405 fsl,drive-strength = <MXS_DRIVE_8mA>;
405 fsl,voltage = <1>; 406 fsl,voltage = <MXS_VOLTAGE_HIGH>;
406 fsl,pull-up = <1>; 407 fsl,pull-up = <MXS_PULL_ENABLE>;
407 }; 408 };
408 409
409 mac1_pins_a: mac1@0 { 410 mac1_pins_a: mac1@0 {
410 reg = <0>; 411 reg = <0>;
411 fsl,pinmux-ids = < 412 fsl,pinmux-ids = <
412 0x40f1 /* MX28_PAD_ENET0_CRS__ENET1_RX_EN */ 413 MX28_PAD_ENET0_CRS__ENET1_RX_EN
413 0x4091 /* MX28_PAD_ENET0_RXD2__ENET1_RXD0 */ 414 MX28_PAD_ENET0_RXD2__ENET1_RXD0
414 0x40a1 /* MX28_PAD_ENET0_RXD3__ENET1_RXD1 */ 415 MX28_PAD_ENET0_RXD3__ENET1_RXD1
415 0x40e1 /* MX28_PAD_ENET0_COL__ENET1_TX_EN */ 416 MX28_PAD_ENET0_COL__ENET1_TX_EN
416 0x40b1 /* MX28_PAD_ENET0_TXD2__ENET1_TXD0 */ 417 MX28_PAD_ENET0_TXD2__ENET1_TXD0
417 0x40c1 /* MX28_PAD_ENET0_TXD3__ENET1_TXD1 */ 418 MX28_PAD_ENET0_TXD3__ENET1_TXD1
418 >; 419 >;
419 fsl,drive-strength = <1>; 420 fsl,drive-strength = <MXS_DRIVE_8mA>;
420 fsl,voltage = <1>; 421 fsl,voltage = <MXS_VOLTAGE_HIGH>;
421 fsl,pull-up = <1>; 422 fsl,pull-up = <MXS_PULL_ENABLE>;
422 }; 423 };
423 424
424 mmc0_8bit_pins_a: mmc0-8bit@0 { 425 mmc0_8bit_pins_a: mmc0-8bit@0 {
425 reg = <0>; 426 reg = <0>;
426 fsl,pinmux-ids = < 427 fsl,pinmux-ids = <
427 0x2000 /* MX28_PAD_SSP0_DATA0__SSP0_D0 */ 428 MX28_PAD_SSP0_DATA0__SSP0_D0
428 0x2010 /* MX28_PAD_SSP0_DATA1__SSP0_D1 */ 429 MX28_PAD_SSP0_DATA1__SSP0_D1
429 0x2020 /* MX28_PAD_SSP0_DATA2__SSP0_D2 */ 430 MX28_PAD_SSP0_DATA2__SSP0_D2
430 0x2030 /* MX28_PAD_SSP0_DATA3__SSP0_D3 */ 431 MX28_PAD_SSP0_DATA3__SSP0_D3
431 0x2040 /* MX28_PAD_SSP0_DATA4__SSP0_D4 */ 432 MX28_PAD_SSP0_DATA4__SSP0_D4
432 0x2050 /* MX28_PAD_SSP0_DATA5__SSP0_D5 */ 433 MX28_PAD_SSP0_DATA5__SSP0_D5
433 0x2060 /* MX28_PAD_SSP0_DATA6__SSP0_D6 */ 434 MX28_PAD_SSP0_DATA6__SSP0_D6
434 0x2070 /* MX28_PAD_SSP0_DATA7__SSP0_D7 */ 435 MX28_PAD_SSP0_DATA7__SSP0_D7
435 0x2080 /* MX28_PAD_SSP0_CMD__SSP0_CMD */ 436 MX28_PAD_SSP0_CMD__SSP0_CMD
436 0x2090 /* MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT */ 437 MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT
437 0x20a0 /* MX28_PAD_SSP0_SCK__SSP0_SCK */ 438 MX28_PAD_SSP0_SCK__SSP0_SCK
438 >; 439 >;
439 fsl,drive-strength = <1>; 440 fsl,drive-strength = <MXS_DRIVE_8mA>;
440 fsl,voltage = <1>; 441 fsl,voltage = <MXS_VOLTAGE_HIGH>;
441 fsl,pull-up = <1>; 442 fsl,pull-up = <MXS_PULL_ENABLE>;
442 }; 443 };
443 444
444 mmc0_4bit_pins_a: mmc0-4bit@0 { 445 mmc0_4bit_pins_a: mmc0-4bit@0 {
445 reg = <0>; 446 reg = <0>;
446 fsl,pinmux-ids = < 447 fsl,pinmux-ids = <
447 0x2000 /* MX28_PAD_SSP0_DATA0__SSP0_D0 */ 448 MX28_PAD_SSP0_DATA0__SSP0_D0
448 0x2010 /* MX28_PAD_SSP0_DATA1__SSP0_D1 */ 449 MX28_PAD_SSP0_DATA1__SSP0_D1
449 0x2020 /* MX28_PAD_SSP0_DATA2__SSP0_D2 */ 450 MX28_PAD_SSP0_DATA2__SSP0_D2
450 0x2030 /* MX28_PAD_SSP0_DATA3__SSP0_D3 */ 451 MX28_PAD_SSP0_DATA3__SSP0_D3
451 0x2080 /* MX28_PAD_SSP0_CMD__SSP0_CMD */ 452 MX28_PAD_SSP0_CMD__SSP0_CMD
452 0x2090 /* MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT */ 453 MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT
453 0x20a0 /* MX28_PAD_SSP0_SCK__SSP0_SCK */ 454 MX28_PAD_SSP0_SCK__SSP0_SCK
454 >; 455 >;
455 fsl,drive-strength = <1>; 456 fsl,drive-strength = <MXS_DRIVE_8mA>;
456 fsl,voltage = <1>; 457 fsl,voltage = <MXS_VOLTAGE_HIGH>;
457 fsl,pull-up = <1>; 458 fsl,pull-up = <MXS_PULL_ENABLE>;
458 }; 459 };
459 460
460 mmc0_cd_cfg: mmc0-cd-cfg { 461 mmc0_cd_cfg: mmc0-cd-cfg {
461 fsl,pinmux-ids = < 462 fsl,pinmux-ids = <
462 0x2090 /* MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT */ 463 MX28_PAD_SSP0_DETECT__SSP0_CARD_DETECT
463 >; 464 >;
464 fsl,pull-up = <0>; 465 fsl,pull-up = <MXS_PULL_DISABLE>;
465 }; 466 };
466 467
467 mmc0_sck_cfg: mmc0-sck-cfg { 468 mmc0_sck_cfg: mmc0-sck-cfg {
468 fsl,pinmux-ids = < 469 fsl,pinmux-ids = <
469 0x20a0 /* MX28_PAD_SSP0_SCK__SSP0_SCK */ 470 MX28_PAD_SSP0_SCK__SSP0_SCK
470 >; 471 >;
471 fsl,drive-strength = <2>; 472 fsl,drive-strength = <MXS_DRIVE_12mA>;
472 fsl,pull-up = <0>; 473 fsl,pull-up = <MXS_PULL_DISABLE>;
474 };
475
476 mmc2_4bit_pins_a: mmc2-4bit@0 {
477 reg = <0>;
478 fsl,pinmux-ids = <
479 MX28_PAD_SSP0_DATA4__SSP2_D0
480 MX28_PAD_SSP1_SCK__SSP2_D1
481 MX28_PAD_SSP1_CMD__SSP2_D2
482 MX28_PAD_SSP0_DATA5__SSP2_D3
483 MX28_PAD_SSP0_DATA6__SSP2_CMD
484 MX28_PAD_AUART1_RX__SSP2_CARD_DETECT
485 MX28_PAD_SSP0_DATA7__SSP2_SCK
486 >;
487 fsl,drive-strength = <MXS_DRIVE_8mA>;
488 fsl,voltage = <MXS_VOLTAGE_HIGH>;
489 fsl,pull-up = <MXS_PULL_ENABLE>;
490 };
491
492 mmc2_cd_cfg: mmc2-cd-cfg {
493 fsl,pinmux-ids = <
494 MX28_PAD_AUART1_RX__SSP2_CARD_DETECT
495 >;
496 fsl,pull-up = <MXS_PULL_DISABLE>;
497 };
498
499 mmc2_sck_cfg: mmc2-sck-cfg {
500 fsl,pinmux-ids = <
501 MX28_PAD_SSP0_DATA7__SSP2_SCK
502 >;
503 fsl,drive-strength = <MXS_DRIVE_12mA>;
504 fsl,pull-up = <MXS_PULL_DISABLE>;
473 }; 505 };
474 506
475 i2c0_pins_a: i2c0@0 { 507 i2c0_pins_a: i2c0@0 {
476 reg = <0>; 508 reg = <0>;
477 fsl,pinmux-ids = < 509 fsl,pinmux-ids = <
478 0x3180 /* MX28_PAD_I2C0_SCL__I2C0_SCL */ 510 MX28_PAD_I2C0_SCL__I2C0_SCL
479 0x3190 /* MX28_PAD_I2C0_SDA__I2C0_SDA */ 511 MX28_PAD_I2C0_SDA__I2C0_SDA
480 >; 512 >;
481 fsl,drive-strength = <1>; 513 fsl,drive-strength = <MXS_DRIVE_8mA>;
482 fsl,voltage = <1>; 514 fsl,voltage = <MXS_VOLTAGE_HIGH>;
483 fsl,pull-up = <1>; 515 fsl,pull-up = <MXS_PULL_ENABLE>;
484 }; 516 };
485 517
486 i2c0_pins_b: i2c0@1 { 518 i2c0_pins_b: i2c0@1 {
487 reg = <1>; 519 reg = <1>;
488 fsl,pinmux-ids = < 520 fsl,pinmux-ids = <
489 0x3001 /* MX28_PAD_AUART0_RX__I2C0_SCL */ 521 MX28_PAD_AUART0_RX__I2C0_SCL
490 0x3011 /* MX28_PAD_AUART0_TX__I2C0_SDA */ 522 MX28_PAD_AUART0_TX__I2C0_SDA
491 >; 523 >;
492 fsl,drive-strength = <1>; 524 fsl,drive-strength = <MXS_DRIVE_8mA>;
493 fsl,voltage = <1>; 525 fsl,voltage = <MXS_VOLTAGE_HIGH>;
494 fsl,pull-up = <1>; 526 fsl,pull-up = <MXS_PULL_ENABLE>;
495 }; 527 };
496 528
497 i2c1_pins_a: i2c1@0 { 529 i2c1_pins_a: i2c1@0 {
498 reg = <0>; 530 reg = <0>;
499 fsl,pinmux-ids = < 531 fsl,pinmux-ids = <
500 0x3101 /* MX28_PAD_PWM0__I2C1_SCL */ 532 MX28_PAD_PWM0__I2C1_SCL
501 0x3111 /* MX28_PAD_PWM1__I2C1_SDA */ 533 MX28_PAD_PWM1__I2C1_SDA
502 >; 534 >;
503 fsl,drive-strength = <1>; 535 fsl,drive-strength = <MXS_DRIVE_8mA>;
504 fsl,voltage = <1>; 536 fsl,voltage = <MXS_VOLTAGE_HIGH>;
505 fsl,pull-up = <1>; 537 fsl,pull-up = <MXS_PULL_ENABLE>;
506 }; 538 };
507 539
508 saif0_pins_a: saif0@0 { 540 saif0_pins_a: saif0@0 {
509 reg = <0>; 541 reg = <0>;
510 fsl,pinmux-ids = < 542 fsl,pinmux-ids = <
511 0x3140 /* MX28_PAD_SAIF0_MCLK__SAIF0_MCLK */ 543 MX28_PAD_SAIF0_MCLK__SAIF0_MCLK
512 0x3150 /* MX28_PAD_SAIF0_LRCLK__SAIF0_LRCLK */ 544 MX28_PAD_SAIF0_LRCLK__SAIF0_LRCLK
513 0x3160 /* MX28_PAD_SAIF0_BITCLK__SAIF0_BITCLK */ 545 MX28_PAD_SAIF0_BITCLK__SAIF0_BITCLK
514 0x3170 /* MX28_PAD_SAIF0_SDATA0__SAIF0_SDATA0 */ 546 MX28_PAD_SAIF0_SDATA0__SAIF0_SDATA0
515 >; 547 >;
516 fsl,drive-strength = <2>; 548 fsl,drive-strength = <MXS_DRIVE_12mA>;
517 fsl,voltage = <1>; 549 fsl,voltage = <MXS_VOLTAGE_HIGH>;
518 fsl,pull-up = <1>; 550 fsl,pull-up = <MXS_PULL_ENABLE>;
519 }; 551 };
520 552
521 saif0_pins_b: saif0@1 { 553 saif0_pins_b: saif0@1 {
522 reg = <1>; 554 reg = <1>;
523 fsl,pinmux-ids = < 555 fsl,pinmux-ids = <
524 0x3150 /* MX28_PAD_SAIF0_LRCLK__SAIF0_LRCLK */ 556 MX28_PAD_SAIF0_LRCLK__SAIF0_LRCLK
525 0x3160 /* MX28_PAD_SAIF0_BITCLK__SAIF0_BITCLK */ 557 MX28_PAD_SAIF0_BITCLK__SAIF0_BITCLK
526 0x3170 /* MX28_PAD_SAIF0_SDATA0__SAIF0_SDATA0 */ 558 MX28_PAD_SAIF0_SDATA0__SAIF0_SDATA0
527 >; 559 >;
528 fsl,drive-strength = <2>; 560 fsl,drive-strength = <MXS_DRIVE_12mA>;
529 fsl,voltage = <1>; 561 fsl,voltage = <MXS_VOLTAGE_HIGH>;
530 fsl,pull-up = <1>; 562 fsl,pull-up = <MXS_PULL_ENABLE>;
531 }; 563 };
532 564
533 saif1_pins_a: saif1@0 { 565 saif1_pins_a: saif1@0 {
534 reg = <0>; 566 reg = <0>;
535 fsl,pinmux-ids = < 567 fsl,pinmux-ids = <
536 0x31a0 /* MX28_PAD_SAIF1_SDATA0__SAIF1_SDATA0 */ 568 MX28_PAD_SAIF1_SDATA0__SAIF1_SDATA0
537 >; 569 >;
538 fsl,drive-strength = <2>; 570 fsl,drive-strength = <MXS_DRIVE_12mA>;
539 fsl,voltage = <1>; 571 fsl,voltage = <MXS_VOLTAGE_HIGH>;
540 fsl,pull-up = <1>; 572 fsl,pull-up = <MXS_PULL_ENABLE>;
541 }; 573 };
542 574
543 pwm0_pins_a: pwm0@0 { 575 pwm0_pins_a: pwm0@0 {
544 reg = <0>; 576 reg = <0>;
545 fsl,pinmux-ids = < 577 fsl,pinmux-ids = <
546 0x3100 /* MX28_PAD_PWM0__PWM_0 */ 578 MX28_PAD_PWM0__PWM_0
547 >; 579 >;
548 fsl,drive-strength = <0>; 580 fsl,drive-strength = <MXS_DRIVE_4mA>;
549 fsl,voltage = <1>; 581 fsl,voltage = <MXS_VOLTAGE_HIGH>;
550 fsl,pull-up = <0>; 582 fsl,pull-up = <MXS_PULL_DISABLE>;
551 }; 583 };
552 584
553 pwm2_pins_a: pwm2@0 { 585 pwm2_pins_a: pwm2@0 {
554 reg = <0>; 586 reg = <0>;
555 fsl,pinmux-ids = < 587 fsl,pinmux-ids = <
556 0x3120 /* MX28_PAD_PWM2__PWM_2 */ 588 MX28_PAD_PWM2__PWM_2
557 >; 589 >;
558 fsl,drive-strength = <0>; 590 fsl,drive-strength = <MXS_DRIVE_4mA>;
559 fsl,voltage = <1>; 591 fsl,voltage = <MXS_VOLTAGE_HIGH>;
560 fsl,pull-up = <0>; 592 fsl,pull-up = <MXS_PULL_DISABLE>;
561 }; 593 };
562 594
563 pwm3_pins_a: pwm3@0 { 595 pwm3_pins_a: pwm3@0 {
564 reg = <0>; 596 reg = <0>;
565 fsl,pinmux-ids = < 597 fsl,pinmux-ids = <
566 0x31c0 /* MX28_PAD_PWM3__PWM_3 */ 598 MX28_PAD_PWM3__PWM_3
567 >; 599 >;
568 fsl,drive-strength = <0>; 600 fsl,drive-strength = <MXS_DRIVE_4mA>;
569 fsl,voltage = <1>; 601 fsl,voltage = <MXS_VOLTAGE_HIGH>;
570 fsl,pull-up = <0>; 602 fsl,pull-up = <MXS_PULL_DISABLE>;
571 }; 603 };
572 604
573 pwm3_pins_b: pwm3@1 { 605 pwm3_pins_b: pwm3@1 {
574 reg = <1>; 606 reg = <1>;
575 fsl,pinmux-ids = < 607 fsl,pinmux-ids = <
576 0x3141 /* MX28_PAD_SAIF0_MCLK__PWM3 */ 608 MX28_PAD_SAIF0_MCLK__PWM_3
577 >; 609 >;
578 fsl,drive-strength = <0>; 610 fsl,drive-strength = <MXS_DRIVE_4mA>;
579 fsl,voltage = <1>; 611 fsl,voltage = <MXS_VOLTAGE_HIGH>;
580 fsl,pull-up = <0>; 612 fsl,pull-up = <MXS_PULL_DISABLE>;
581 }; 613 };
582 614
583 pwm4_pins_a: pwm4@0 { 615 pwm4_pins_a: pwm4@0 {
584 reg = <0>; 616 reg = <0>;
585 fsl,pinmux-ids = < 617 fsl,pinmux-ids = <
586 0x31d0 /* MX28_PAD_PWM4__PWM_4 */ 618 MX28_PAD_PWM4__PWM_4
587 >; 619 >;
588 fsl,drive-strength = <0>; 620 fsl,drive-strength = <MXS_DRIVE_4mA>;
589 fsl,voltage = <1>; 621 fsl,voltage = <MXS_VOLTAGE_HIGH>;
590 fsl,pull-up = <0>; 622 fsl,pull-up = <MXS_PULL_DISABLE>;
591 }; 623 };
592 624
593 lcdif_24bit_pins_a: lcdif-24bit@0 { 625 lcdif_24bit_pins_a: lcdif-24bit@0 {
594 reg = <0>; 626 reg = <0>;
595 fsl,pinmux-ids = < 627 fsl,pinmux-ids = <
596 0x1000 /* MX28_PAD_LCD_D00__LCD_D0 */ 628 MX28_PAD_LCD_D00__LCD_D0
597 0x1010 /* MX28_PAD_LCD_D01__LCD_D1 */ 629 MX28_PAD_LCD_D01__LCD_D1
598 0x1020 /* MX28_PAD_LCD_D02__LCD_D2 */ 630 MX28_PAD_LCD_D02__LCD_D2
599 0x1030 /* MX28_PAD_LCD_D03__LCD_D3 */ 631 MX28_PAD_LCD_D03__LCD_D3
600 0x1040 /* MX28_PAD_LCD_D04__LCD_D4 */ 632 MX28_PAD_LCD_D04__LCD_D4
601 0x1050 /* MX28_PAD_LCD_D05__LCD_D5 */ 633 MX28_PAD_LCD_D05__LCD_D5
602 0x1060 /* MX28_PAD_LCD_D06__LCD_D6 */ 634 MX28_PAD_LCD_D06__LCD_D6
603 0x1070 /* MX28_PAD_LCD_D07__LCD_D7 */ 635 MX28_PAD_LCD_D07__LCD_D7
604 0x1080 /* MX28_PAD_LCD_D08__LCD_D8 */ 636 MX28_PAD_LCD_D08__LCD_D8
605 0x1090 /* MX28_PAD_LCD_D09__LCD_D9 */ 637 MX28_PAD_LCD_D09__LCD_D9
606 0x10a0 /* MX28_PAD_LCD_D10__LCD_D10 */ 638 MX28_PAD_LCD_D10__LCD_D10
607 0x10b0 /* MX28_PAD_LCD_D11__LCD_D11 */ 639 MX28_PAD_LCD_D11__LCD_D11
608 0x10c0 /* MX28_PAD_LCD_D12__LCD_D12 */ 640 MX28_PAD_LCD_D12__LCD_D12
609 0x10d0 /* MX28_PAD_LCD_D13__LCD_D13 */ 641 MX28_PAD_LCD_D13__LCD_D13
610 0x10e0 /* MX28_PAD_LCD_D14__LCD_D14 */ 642 MX28_PAD_LCD_D14__LCD_D14
611 0x10f0 /* MX28_PAD_LCD_D15__LCD_D15 */ 643 MX28_PAD_LCD_D15__LCD_D15
612 0x1100 /* MX28_PAD_LCD_D16__LCD_D16 */ 644 MX28_PAD_LCD_D16__LCD_D16
613 0x1110 /* MX28_PAD_LCD_D17__LCD_D17 */ 645 MX28_PAD_LCD_D17__LCD_D17
614 0x1120 /* MX28_PAD_LCD_D18__LCD_D18 */ 646 MX28_PAD_LCD_D18__LCD_D18
615 0x1130 /* MX28_PAD_LCD_D19__LCD_D19 */ 647 MX28_PAD_LCD_D19__LCD_D19
616 0x1140 /* MX28_PAD_LCD_D20__LCD_D20 */ 648 MX28_PAD_LCD_D20__LCD_D20
617 0x1150 /* MX28_PAD_LCD_D21__LCD_D21 */ 649 MX28_PAD_LCD_D21__LCD_D21
618 0x1160 /* MX28_PAD_LCD_D22__LCD_D22 */ 650 MX28_PAD_LCD_D22__LCD_D22
619 0x1170 /* MX28_PAD_LCD_D23__LCD_D23 */ 651 MX28_PAD_LCD_D23__LCD_D23
620 >; 652 >;
621 fsl,drive-strength = <0>; 653 fsl,drive-strength = <MXS_DRIVE_4mA>;
622 fsl,voltage = <1>; 654 fsl,voltage = <MXS_VOLTAGE_HIGH>;
623 fsl,pull-up = <0>; 655 fsl,pull-up = <MXS_PULL_DISABLE>;
624 }; 656 };
625 657
626 lcdif_16bit_pins_a: lcdif-16bit@0 { 658 lcdif_16bit_pins_a: lcdif-16bit@0 {
627 reg = <0>; 659 reg = <0>;
628 fsl,pinmux-ids = < 660 fsl,pinmux-ids = <
629 0x1000 /* MX28_PAD_LCD_D00__LCD_D0 */ 661 MX28_PAD_LCD_D00__LCD_D0
630 0x1010 /* MX28_PAD_LCD_D01__LCD_D1 */ 662 MX28_PAD_LCD_D01__LCD_D1
631 0x1020 /* MX28_PAD_LCD_D02__LCD_D2 */ 663 MX28_PAD_LCD_D02__LCD_D2
632 0x1030 /* MX28_PAD_LCD_D03__LCD_D3 */ 664 MX28_PAD_LCD_D03__LCD_D3
633 0x1040 /* MX28_PAD_LCD_D04__LCD_D4 */ 665 MX28_PAD_LCD_D04__LCD_D4
634 0x1050 /* MX28_PAD_LCD_D05__LCD_D5 */ 666 MX28_PAD_LCD_D05__LCD_D5
635 0x1060 /* MX28_PAD_LCD_D06__LCD_D6 */ 667 MX28_PAD_LCD_D06__LCD_D6
636 0x1070 /* MX28_PAD_LCD_D07__LCD_D7 */ 668 MX28_PAD_LCD_D07__LCD_D7
637 0x1080 /* MX28_PAD_LCD_D08__LCD_D8 */ 669 MX28_PAD_LCD_D08__LCD_D8
638 0x1090 /* MX28_PAD_LCD_D09__LCD_D9 */ 670 MX28_PAD_LCD_D09__LCD_D9
639 0x10a0 /* MX28_PAD_LCD_D10__LCD_D10 */ 671 MX28_PAD_LCD_D10__LCD_D10
640 0x10b0 /* MX28_PAD_LCD_D11__LCD_D11 */ 672 MX28_PAD_LCD_D11__LCD_D11
641 0x10c0 /* MX28_PAD_LCD_D12__LCD_D12 */ 673 MX28_PAD_LCD_D12__LCD_D12
642 0x10d0 /* MX28_PAD_LCD_D13__LCD_D13 */ 674 MX28_PAD_LCD_D13__LCD_D13
643 0x10e0 /* MX28_PAD_LCD_D14__LCD_D14 */ 675 MX28_PAD_LCD_D14__LCD_D14
644 0x10f0 /* MX28_PAD_LCD_D15__LCD_D15 */ 676 MX28_PAD_LCD_D15__LCD_D15
645 >; 677 >;
646 fsl,drive-strength = <0>; 678 fsl,drive-strength = <MXS_DRIVE_4mA>;
647 fsl,voltage = <1>; 679 fsl,voltage = <MXS_VOLTAGE_HIGH>;
648 fsl,pull-up = <0>; 680 fsl,pull-up = <MXS_PULL_DISABLE>;
649 }; 681 };
650 682
651 lcdif_sync_pins_a: lcdif-sync@0 { 683 lcdif_sync_pins_a: lcdif-sync@0 {
652 reg = <0>; 684 reg = <0>;
653 fsl,pinmux-ids = < 685 fsl,pinmux-ids = <
654 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ 686 MX28_PAD_LCD_RS__LCD_DOTCLK
655 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ 687 MX28_PAD_LCD_CS__LCD_ENABLE
656 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ 688 MX28_PAD_LCD_RD_E__LCD_VSYNC
657 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ 689 MX28_PAD_LCD_WR_RWN__LCD_HSYNC
658 >; 690 >;
659 fsl,drive-strength = <0>; 691 fsl,drive-strength = <MXS_DRIVE_4mA>;
660 fsl,voltage = <1>; 692 fsl,voltage = <MXS_VOLTAGE_HIGH>;
661 fsl,pull-up = <0>; 693 fsl,pull-up = <MXS_PULL_DISABLE>;
662 }; 694 };
663 695
664 can0_pins_a: can0@0 { 696 can0_pins_a: can0@0 {
665 reg = <0>; 697 reg = <0>;
666 fsl,pinmux-ids = < 698 fsl,pinmux-ids = <
667 0x0161 /* MX28_PAD_GPMI_RDY2__CAN0_TX */ 699 MX28_PAD_GPMI_RDY2__CAN0_TX
668 0x0171 /* MX28_PAD_GPMI_RDY3__CAN0_RX */ 700 MX28_PAD_GPMI_RDY3__CAN0_RX
669 >; 701 >;
670 fsl,drive-strength = <0>; 702 fsl,drive-strength = <MXS_DRIVE_4mA>;
671 fsl,voltage = <1>; 703 fsl,voltage = <MXS_VOLTAGE_HIGH>;
672 fsl,pull-up = <0>; 704 fsl,pull-up = <MXS_PULL_DISABLE>;
673 }; 705 };
674 706
675 can1_pins_a: can1@0 { 707 can1_pins_a: can1@0 {
676 reg = <0>; 708 reg = <0>;
677 fsl,pinmux-ids = < 709 fsl,pinmux-ids = <
678 0x0121 /* MX28_PAD_GPMI_CE2N__CAN1_TX */ 710 MX28_PAD_GPMI_CE2N__CAN1_TX
679 0x0131 /* MX28_PAD_GPMI_CE3N__CAN1_RX */ 711 MX28_PAD_GPMI_CE3N__CAN1_RX
680 >; 712 >;
681 fsl,drive-strength = <0>; 713 fsl,drive-strength = <MXS_DRIVE_4mA>;
682 fsl,voltage = <1>; 714 fsl,voltage = <MXS_VOLTAGE_HIGH>;
683 fsl,pull-up = <0>; 715 fsl,pull-up = <MXS_PULL_DISABLE>;
684 }; 716 };
685 717
686 spi2_pins_a: spi2@0 { 718 spi2_pins_a: spi2@0 {
687 reg = <0>; 719 reg = <0>;
688 fsl,pinmux-ids = < 720 fsl,pinmux-ids = <
689 0x2100 /* MX28_PAD_SSP2_SCK__SSP2_SCK */ 721 MX28_PAD_SSP2_SCK__SSP2_SCK
690 0x2110 /* MX28_PAD_SSP2_MOSI__SSP2_CMD */ 722 MX28_PAD_SSP2_MOSI__SSP2_CMD
691 0x2120 /* MX28_PAD_SSP2_MISO__SSP2_D0 */ 723 MX28_PAD_SSP2_MISO__SSP2_D0
692 0x2130 /* MX28_PAD_SSP2_SS0__SSP2_D3 */ 724 MX28_PAD_SSP2_SS0__SSP2_D3
693 >; 725 >;
694 fsl,drive-strength = <1>; 726 fsl,drive-strength = <MXS_DRIVE_8mA>;
695 fsl,voltage = <1>; 727 fsl,voltage = <MXS_VOLTAGE_HIGH>;
696 fsl,pull-up = <1>; 728 fsl,pull-up = <MXS_PULL_ENABLE>;
697 }; 729 };
698 730
699 spi3_pins_a: spi3@0 { 731 spi3_pins_a: spi3@0 {
700 reg = <0>; 732 reg = <0>;
701 fsl,pinmux-ids = < 733 fsl,pinmux-ids = <
702 0x3082 /* MX28_PAD_AUART2_RX__SSP3_D4 */ 734 MX28_PAD_AUART2_RX__SSP3_D4
703 0x3092 /* MX28_PAD_AUART2_TX__SSP3_D5 */ 735 MX28_PAD_AUART2_TX__SSP3_D5
704 0x2180 /* MX28_PAD_SSP3_SCK__SSP3_SCK */ 736 MX28_PAD_SSP3_SCK__SSP3_SCK
705 0x2190 /* MX28_PAD_SSP3_MOSI__SSP3_CMD */ 737 MX28_PAD_SSP3_MOSI__SSP3_CMD
706 0x21A0 /* MX28_PAD_SSP3_MISO__SSP3_D0 */ 738 MX28_PAD_SSP3_MISO__SSP3_D0
707 0x21B0 /* MX28_PAD_SSP3_SS0__SSP3_D3 */ 739 MX28_PAD_SSP3_SS0__SSP3_D3
708 >; 740 >;
709 fsl,drive-strength = <1>; 741 fsl,drive-strength = <MXS_DRIVE_8mA>;
710 fsl,voltage = <1>; 742 fsl,voltage = <MXS_VOLTAGE_HIGH>;
711 fsl,pull-up = <0>; 743 fsl,pull-up = <MXS_PULL_DISABLE>;
712 }; 744 };
713 745
714 usbphy0_pins_a: usbphy0@0 { 746 usbphy0_pins_a: usbphy0@0 {
715 reg = <0>; 747 reg = <0>;
716 fsl,pinmux-ids = < 748 fsl,pinmux-ids = <
717 0x2152 /* MX28_PAD_SSP2_SS2__USB0_OVERCURRENT */ 749 MX28_PAD_SSP2_SS2__USB0_OVERCURRENT
718 >; 750 >;
719 fsl,drive-strength = <2>; 751 fsl,drive-strength = <MXS_DRIVE_12mA>;
720 fsl,voltage = <1>; 752 fsl,voltage = <MXS_VOLTAGE_HIGH>;
721 fsl,pull-up = <0>; 753 fsl,pull-up = <MXS_PULL_DISABLE>;
722 }; 754 };
723 755
724 usbphy0_pins_b: usbphy0@1 { 756 usbphy0_pins_b: usbphy0@1 {
725 reg = <1>; 757 reg = <1>;
726 fsl,pinmux-ids = < 758 fsl,pinmux-ids = <
727 0x3061 /* MX28_PAD_AUART1_CTS__USB0_OVERCURRENT */ 759 MX28_PAD_AUART1_CTS__USB0_OVERCURRENT
728 >; 760 >;
729 fsl,drive-strength = <2>; 761 fsl,drive-strength = <MXS_DRIVE_12mA>;
730 fsl,voltage = <1>; 762 fsl,voltage = <MXS_VOLTAGE_HIGH>;
731 fsl,pull-up = <0>; 763 fsl,pull-up = <MXS_PULL_DISABLE>;
732 }; 764 };
733 765
734 usbphy1_pins_a: usbphy1@0 { 766 usbphy1_pins_a: usbphy1@0 {
735 reg = <0>; 767 reg = <0>;
736 fsl,pinmux-ids = < 768 fsl,pinmux-ids = <
737 0x2142 /* MX28_PAD_SSP2_SS1__USB1_OVERCURRENT */ 769 MX28_PAD_SSP2_SS1__USB1_OVERCURRENT
770 >;
771 fsl,drive-strength = <MXS_DRIVE_12mA>;
772 fsl,voltage = <MXS_VOLTAGE_HIGH>;
773 fsl,pull-up = <MXS_PULL_DISABLE>;
774 };
775
776 usb0_id_pins_a: usb0id@0 {
777 reg = <0>;
778 fsl,pinmux-ids = <
779 MX28_PAD_AUART1_RTS__USB0_ID
738 >; 780 >;
739 fsl,drive-strength = <2>; 781 fsl,drive-strength = <MXS_DRIVE_12mA>;
740 fsl,voltage = <1>; 782 fsl,voltage = <MXS_VOLTAGE_HIGH>;
741 fsl,pull-up = <0>; 783 fsl,pull-up = <MXS_PULL_ENABLE>;
742 }; 784 };
743 }; 785 };
744 786
diff --git a/arch/arm/boot/dts/imx51-apf51dev.dts b/arch/arm/boot/dts/imx51-apf51dev.dts
index 123fe84e0e8c..5a7f552786a1 100644
--- a/arch/arm/boot/dts/imx51-apf51dev.dts
+++ b/arch/arm/boot/dts/imx51-apf51dev.dts
@@ -16,6 +16,33 @@
16 model = "Armadeus Systems APF51Dev docking/development board"; 16 model = "Armadeus Systems APF51Dev docking/development board";
17 compatible = "armadeus,imx51-apf51dev", "armadeus,imx51-apf51", "fsl,imx51"; 17 compatible = "armadeus,imx51-apf51dev", "armadeus,imx51-apf51", "fsl,imx51";
18 18
19 display@di1 {
20 compatible = "fsl,imx-parallel-display";
21 crtcs = <&ipu 0>;
22 interface-pix-fmt = "bgr666";
23 pinctrl-names = "default";
24 pinctrl-0 = <&pinctrl_ipu_disp1_1>;
25
26 display-timings {
27 lw700 {
28 native-mode;
29 clock-frequency = <33000033>;
30 hactive = <800>;
31 vactive = <480>;
32 hback-porch = <96>;
33 hfront-porch = <96>;
34 vback-porch = <20>;
35 vfront-porch = <21>;
36 hsync-len = <64>;
37 vsync-len = <4>;
38 hsync-active = <1>;
39 vsync-active = <1>;
40 de-active = <1>;
41 pixelclk-active = <0>;
42 };
43 };
44 };
45
19 gpio-keys { 46 gpio-keys {
20 compatible = "gpio-keys"; 47 compatible = "gpio-keys";
21 48
diff --git a/arch/arm/boot/dts/imx51-babbage.dts b/arch/arm/boot/dts/imx51-babbage.dts
index 1d337d99ecd5..be1407cf5abd 100644
--- a/arch/arm/boot/dts/imx51-babbage.dts
+++ b/arch/arm/boot/dts/imx51-babbage.dts
@@ -27,6 +27,20 @@
27 interface-pix-fmt = "rgb24"; 27 interface-pix-fmt = "rgb24";
28 pinctrl-names = "default"; 28 pinctrl-names = "default";
29 pinctrl-0 = <&pinctrl_ipu_disp1_1>; 29 pinctrl-0 = <&pinctrl_ipu_disp1_1>;
30 display-timings {
31 native-mode = <&timing0>;
32 timing0: dvi {
33 clock-frequency = <65000000>;
34 hactive = <1024>;
35 vactive = <768>;
36 hback-porch = <220>;
37 hfront-porch = <40>;
38 vback-porch = <21>;
39 vfront-porch = <7>;
40 hsync-len = <60>;
41 vsync-len = <10>;
42 };
43 };
30 }; 44 };
31 45
32 display@di1 { 46 display@di1 {
@@ -35,6 +49,25 @@
35 interface-pix-fmt = "rgb565"; 49 interface-pix-fmt = "rgb565";
36 pinctrl-names = "default"; 50 pinctrl-names = "default";
37 pinctrl-0 = <&pinctrl_ipu_disp2_1>; 51 pinctrl-0 = <&pinctrl_ipu_disp2_1>;
52 status = "disabled";
53 display-timings {
54 native-mode = <&timing1>;
55 timing1: claawvga {
56 clock-frequency = <27000000>;
57 hactive = <800>;
58 vactive = <480>;
59 hback-porch = <40>;
60 hfront-porch = <60>;
61 vback-porch = <10>;
62 vfront-porch = <10>;
63 hsync-len = <20>;
64 vsync-len = <10>;
65 hsync-active = <0>;
66 vsync-active = <0>;
67 de-active = <1>;
68 pixelclk-active = <0>;
69 };
70 };
38 }; 71 };
39 72
40 gpio-keys { 73 gpio-keys {
@@ -95,7 +128,7 @@
95 128
96&uart3 { 129&uart3 {
97 pinctrl-names = "default"; 130 pinctrl-names = "default";
98 pinctrl-0 = <&pinctrl_uart3_1>; 131 pinctrl-0 = <&pinctrl_uart3_1 &pinctrl_uart3_rtscts_1>;
99 fsl,uart-has-rtscts; 132 fsl,uart-has-rtscts;
100 status = "okay"; 133 status = "okay";
101}; 134};
@@ -252,7 +285,7 @@
252 285
253&uart1 { 286&uart1 {
254 pinctrl-names = "default"; 287 pinctrl-names = "default";
255 pinctrl-0 = <&pinctrl_uart1_1>; 288 pinctrl-0 = <&pinctrl_uart1_1 &pinctrl_uart1_rtscts_1>;
256 fsl,uart-has-rtscts; 289 fsl,uart-has-rtscts;
257 status = "okay"; 290 status = "okay";
258}; 291};
diff --git a/arch/arm/boot/dts/imx51.dtsi b/arch/arm/boot/dts/imx51.dtsi
index 54cee6517902..f4dcff3a9969 100644
--- a/arch/arm/boot/dts/imx51.dtsi
+++ b/arch/arm/boot/dts/imx51.dtsi
@@ -86,6 +86,11 @@
86 interrupt-parent = <&tzic>; 86 interrupt-parent = <&tzic>;
87 ranges; 87 ranges;
88 88
89 iram: iram@1ffe0000 {
90 compatible = "mmio-sram";
91 reg = <0x1ffe0000 0x20000>;
92 };
93
89 ipu: ipu@40000000 { 94 ipu: ipu@40000000 {
90 #crtc-cells = <1>; 95 #crtc-cells = <1>;
91 compatible = "fsl,imx51-ipu"; 96 compatible = "fsl,imx51-ipu";
@@ -374,6 +379,14 @@
374 clocks = <&clks 107>; 379 clocks = <&clks 107>;
375 }; 380 };
376 381
382 owire: owire@83fa4000 {
383 compatible = "fsl,imx51-owire", "fsl,imx21-owire";
384 reg = <0x83fa4000 0x4000>;
385 interrupts = <88>;
386 clocks = <&clks 159>;
387 status = "disabled";
388 };
389
377 ecspi2: ecspi@83fac000 { 390 ecspi2: ecspi@83fac000 {
378 #address-cells = <1>; 391 #address-cells = <1>;
379 #size-cells = <0>; 392 #size-cells = <0>;
@@ -747,6 +760,11 @@
747 fsl,pins = < 760 fsl,pins = <
748 MX51_PAD_UART1_RXD__UART1_RXD 0x1c5 761 MX51_PAD_UART1_RXD__UART1_RXD 0x1c5
749 MX51_PAD_UART1_TXD__UART1_TXD 0x1c5 762 MX51_PAD_UART1_TXD__UART1_TXD 0x1c5
763 >;
764 };
765
766 pinctrl_uart1_rtscts_1: uart1rtscts-1 {
767 fsl,pins = <
750 MX51_PAD_UART1_RTS__UART1_RTS 0x1c5 768 MX51_PAD_UART1_RTS__UART1_RTS 0x1c5
751 MX51_PAD_UART1_CTS__UART1_CTS 0x1c5 769 MX51_PAD_UART1_CTS__UART1_CTS 0x1c5
752 >; 770 >;
@@ -767,6 +785,11 @@
767 fsl,pins = < 785 fsl,pins = <
768 MX51_PAD_EIM_D25__UART3_RXD 0x1c5 786 MX51_PAD_EIM_D25__UART3_RXD 0x1c5
769 MX51_PAD_EIM_D26__UART3_TXD 0x1c5 787 MX51_PAD_EIM_D26__UART3_TXD 0x1c5
788 >;
789 };
790
791 pinctrl_uart3_rtscts_1: uart3rtscts-1 {
792 fsl,pins = <
770 MX51_PAD_EIM_D27__UART3_RTS 0x1c5 793 MX51_PAD_EIM_D27__UART3_RTS 0x1c5
771 MX51_PAD_EIM_D24__UART3_CTS 0x1c5 794 MX51_PAD_EIM_D24__UART3_CTS 0x1c5
772 >; 795 >;
diff --git a/arch/arm/boot/dts/imx53-qsb.dts b/arch/arm/boot/dts/imx53-qsb.dts
index e97ddae09d74..91a5935a4aac 100644
--- a/arch/arm/boot/dts/imx53-qsb.dts
+++ b/arch/arm/boot/dts/imx53-qsb.dts
@@ -55,19 +55,20 @@
55 label = "Power Button"; 55 label = "Power Button";
56 gpios = <&gpio1 8 0>; 56 gpios = <&gpio1 8 0>;
57 linux,code = <116>; /* KEY_POWER */ 57 linux,code = <116>; /* KEY_POWER */
58 gpio-key,wakeup;
59 }; 58 };
60 59
61 volume-up { 60 volume-up {
62 label = "Volume Up"; 61 label = "Volume Up";
63 gpios = <&gpio2 14 0>; 62 gpios = <&gpio2 14 0>;
64 linux,code = <115>; /* KEY_VOLUMEUP */ 63 linux,code = <115>; /* KEY_VOLUMEUP */
64 gpio-key,wakeup;
65 }; 65 };
66 66
67 volume-down { 67 volume-down {
68 label = "Volume Down"; 68 label = "Volume Down";
69 gpios = <&gpio2 15 0>; 69 gpios = <&gpio2 15 0>;
70 linux,code = <114>; /* KEY_VOLUMEDOWN */ 70 linux,code = <114>; /* KEY_VOLUMEDOWN */
71 gpio-key,wakeup;
71 }; 72 };
72 }; 73 };
73 74
@@ -122,7 +123,6 @@
122&esdhc1 { 123&esdhc1 {
123 pinctrl-names = "default"; 124 pinctrl-names = "default";
124 pinctrl-0 = <&pinctrl_esdhc1_1>; 125 pinctrl-0 = <&pinctrl_esdhc1_1>;
125 cd-gpios = <&gpio3 13 0>;
126 status = "okay"; 126 status = "okay";
127}; 127};
128 128
@@ -136,6 +136,7 @@
136 pinctrl-0 = <&pinctrl_esdhc3_1>; 136 pinctrl-0 = <&pinctrl_esdhc3_1>;
137 cd-gpios = <&gpio3 11 0>; 137 cd-gpios = <&gpio3 11 0>;
138 wp-gpios = <&gpio3 12 0>; 138 wp-gpios = <&gpio3 12 0>;
139 bus-width = <8>;
139 status = "okay"; 140 status = "okay";
140}; 141};
141 142
@@ -152,7 +153,6 @@
152 MX53_PAD_PATA_DATA15__GPIO2_15 0x80000000 153 MX53_PAD_PATA_DATA15__GPIO2_15 0x80000000
153 MX53_PAD_EIM_DA11__GPIO3_11 0x80000000 154 MX53_PAD_EIM_DA11__GPIO3_11 0x80000000
154 MX53_PAD_EIM_DA12__GPIO3_12 0x80000000 155 MX53_PAD_EIM_DA12__GPIO3_12 0x80000000
155 MX53_PAD_EIM_DA13__GPIO3_13 0x80000000
156 MX53_PAD_PATA_DA_0__GPIO7_6 0x80000000 156 MX53_PAD_PATA_DA_0__GPIO7_6 0x80000000
157 MX53_PAD_PATA_DA_2__GPIO7_8 0x80000000 157 MX53_PAD_PATA_DA_2__GPIO7_8 0x80000000
158 MX53_PAD_GPIO_16__GPIO7_11 0x80000000 158 MX53_PAD_GPIO_16__GPIO7_11 0x80000000
@@ -318,5 +318,6 @@
318}; 318};
319 319
320&usbotg { 320&usbotg {
321 status = "okay"; 321 dr_mode = "peripheral";
322 status = "okay";
322}; 323};
diff --git a/arch/arm/boot/dts/imx6q-pinfunc.h b/arch/arm/boot/dts/imx6q-pinfunc.h
index 9bbe82bdee41..97ed0816a6e0 100644
--- a/arch/arm/boot/dts/imx6q-pinfunc.h
+++ b/arch/arm/boot/dts/imx6q-pinfunc.h
@@ -536,7 +536,7 @@
536#define MX6QDL_PAD_ENET_REF_CLK__ESAI_RX_FS 0x1d4 0x4e8 0x85c 0x2 0x0 536#define MX6QDL_PAD_ENET_REF_CLK__ESAI_RX_FS 0x1d4 0x4e8 0x85c 0x2 0x0
537#define MX6QDL_PAD_ENET_REF_CLK__GPIO1_IO23 0x1d4 0x4e8 0x000 0x5 0x0 537#define MX6QDL_PAD_ENET_REF_CLK__GPIO1_IO23 0x1d4 0x4e8 0x000 0x5 0x0
538#define MX6QDL_PAD_ENET_REF_CLK__SPDIF_SR_CLK 0x1d4 0x4e8 0x000 0x6 0x0 538#define MX6QDL_PAD_ENET_REF_CLK__SPDIF_SR_CLK 0x1d4 0x4e8 0x000 0x6 0x0
539#define MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x1d8 0x4ec 0x000 0x0 0x0 539#define MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x1d8 0x4ec 0x004 0x0 0xff0d0100
540#define MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1d8 0x4ec 0x000 0x1 0x0 540#define MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1d8 0x4ec 0x000 0x1 0x0
541#define MX6QDL_PAD_ENET_RX_ER__ESAI_RX_HF_CLK 0x1d8 0x4ec 0x864 0x2 0x0 541#define MX6QDL_PAD_ENET_RX_ER__ESAI_RX_HF_CLK 0x1d8 0x4ec 0x864 0x2 0x0
542#define MX6QDL_PAD_ENET_RX_ER__SPDIF_IN 0x1d8 0x4ec 0x914 0x3 0x1 542#define MX6QDL_PAD_ENET_RX_ER__SPDIF_IN 0x1d8 0x4ec 0x914 0x3 0x1
@@ -654,7 +654,7 @@
654#define MX6QDL_PAD_GPIO_1__ESAI_RX_CLK 0x224 0x5f4 0x86c 0x0 0x1 654#define MX6QDL_PAD_GPIO_1__ESAI_RX_CLK 0x224 0x5f4 0x86c 0x0 0x1
655#define MX6QDL_PAD_GPIO_1__WDOG2_B 0x224 0x5f4 0x000 0x1 0x0 655#define MX6QDL_PAD_GPIO_1__WDOG2_B 0x224 0x5f4 0x000 0x1 0x0
656#define MX6QDL_PAD_GPIO_1__KEY_ROW5 0x224 0x5f4 0x8f4 0x2 0x0 656#define MX6QDL_PAD_GPIO_1__KEY_ROW5 0x224 0x5f4 0x8f4 0x2 0x0
657#define MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x224 0x5f4 0x000 0x3 0x0 657#define MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x224 0x5f4 0x004 0x3 0xff0d0101
658#define MX6QDL_PAD_GPIO_1__PWM2_OUT 0x224 0x5f4 0x000 0x4 0x0 658#define MX6QDL_PAD_GPIO_1__PWM2_OUT 0x224 0x5f4 0x000 0x4 0x0
659#define MX6QDL_PAD_GPIO_1__GPIO1_IO01 0x224 0x5f4 0x000 0x5 0x0 659#define MX6QDL_PAD_GPIO_1__GPIO1_IO01 0x224 0x5f4 0x000 0x5 0x0
660#define MX6QDL_PAD_GPIO_1__SD1_CD_B 0x224 0x5f4 0x000 0x6 0x0 660#define MX6QDL_PAD_GPIO_1__SD1_CD_B 0x224 0x5f4 0x000 0x6 0x0
diff --git a/arch/arm/boot/dts/imx6q-sabrelite.dts b/arch/arm/boot/dts/imx6q-sabrelite.dts
index 3530280f5150..f004913f7d80 100644
--- a/arch/arm/boot/dts/imx6q-sabrelite.dts
+++ b/arch/arm/boot/dts/imx6q-sabrelite.dts
@@ -65,8 +65,10 @@
65 }; 65 };
66}; 66};
67 67
68&sata { 68&audmux {
69 status = "okay"; 69 status = "okay";
70 pinctrl-names = "default";
71 pinctrl-0 = <&pinctrl_audmux_1>;
70}; 72};
71 73
72&ecspi1 { 74&ecspi1 {
@@ -83,11 +85,29 @@
83 }; 85 };
84}; 86};
85 87
86&ssi1 { 88&fec {
87 fsl,mode = "i2s-slave"; 89 pinctrl-names = "default";
90 pinctrl-0 = <&pinctrl_enet_1>;
91 phy-mode = "rgmii";
92 phy-reset-gpios = <&gpio3 23 0>;
88 status = "okay"; 93 status = "okay";
89}; 94};
90 95
96&i2c1 {
97 status = "okay";
98 clock-frequency = <100000>;
99 pinctrl-names = "default";
100 pinctrl-0 = <&pinctrl_i2c1_1>;
101
102 codec: sgtl5000@0a {
103 compatible = "fsl,sgtl5000";
104 reg = <0x0a>;
105 clocks = <&clks 201>;
106 VDDA-supply = <&reg_2p5v>;
107 VDDIO-supply = <&reg_3p3v>;
108 };
109};
110
91&iomuxc { 111&iomuxc {
92 pinctrl-names = "default"; 112 pinctrl-names = "default";
93 pinctrl-0 = <&pinctrl_hog>; 113 pinctrl-0 = <&pinctrl_hog>;
@@ -103,28 +123,61 @@
103 MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x80000000 123 MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x80000000
104 MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x1f0b0 124 MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x1f0b0
105 MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x80000000 125 MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x80000000
126 MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x80000000
106 >; 127 >;
107 }; 128 };
108 }; 129 };
109}; 130};
110 131
111&usbotg { 132&ldb {
112 vbus-supply = <&reg_usb_otg_vbus>; 133 status = "okay";
113 pinctrl-names = "default"; 134
114 pinctrl-0 = <&pinctrl_usbotg_1>; 135 lvds-channel@0 {
115 disable-over-current; 136 fsl,data-mapping = "spwg";
137 fsl,data-width = <18>;
138 status = "okay";
139
140 display-timings {
141 native-mode = <&timing0>;
142 timing0: hsd100pxn1 {
143 clock-frequency = <65000000>;
144 hactive = <1024>;
145 vactive = <768>;
146 hback-porch = <220>;
147 hfront-porch = <40>;
148 vback-porch = <21>;
149 vfront-porch = <7>;
150 hsync-len = <60>;
151 vsync-len = <10>;
152 };
153 };
154 };
155};
156
157&sata {
158 status = "okay";
159};
160
161&ssi1 {
162 fsl,mode = "i2s-slave";
116 status = "okay"; 163 status = "okay";
117}; 164};
118 165
166&uart2 {
167 status = "okay";
168 pinctrl-names = "default";
169 pinctrl-0 = <&pinctrl_uart2_1>;
170};
171
119&usbh1 { 172&usbh1 {
120 status = "okay"; 173 status = "okay";
121}; 174};
122 175
123&fec { 176&usbotg {
177 vbus-supply = <&reg_usb_otg_vbus>;
124 pinctrl-names = "default"; 178 pinctrl-names = "default";
125 pinctrl-0 = <&pinctrl_enet_1>; 179 pinctrl-0 = <&pinctrl_usbotg_1>;
126 phy-mode = "rgmii"; 180 disable-over-current;
127 phy-reset-gpios = <&gpio3 23 0>;
128 status = "okay"; 181 status = "okay";
129}; 182};
130 183
@@ -145,30 +198,3 @@
145 vmmc-supply = <&reg_3p3v>; 198 vmmc-supply = <&reg_3p3v>;
146 status = "okay"; 199 status = "okay";
147}; 200};
148
149&audmux {
150 status = "okay";
151 pinctrl-names = "default";
152 pinctrl-0 = <&pinctrl_audmux_1>;
153};
154
155&uart2 {
156 status = "okay";
157 pinctrl-names = "default";
158 pinctrl-0 = <&pinctrl_uart2_1>;
159};
160
161&i2c1 {
162 status = "okay";
163 clock-frequency = <100000>;
164 pinctrl-names = "default";
165 pinctrl-0 = <&pinctrl_i2c1_1>;
166
167 codec: sgtl5000@0a {
168 compatible = "fsl,sgtl5000";
169 reg = <0x0a>;
170 clocks = <&clks 201>;
171 VDDA-supply = <&reg_2p5v>;
172 VDDIO-supply = <&reg_3p3v>;
173 };
174};
diff --git a/arch/arm/boot/dts/imx6q-udoo.dts b/arch/arm/boot/dts/imx6q-udoo.dts
new file mode 100644
index 000000000000..6e1ccdc019a7
--- /dev/null
+++ b/arch/arm/boot/dts/imx6q-udoo.dts
@@ -0,0 +1,39 @@
1/*
2 * Copyright 2013 Freescale Semiconductor, Inc.
3 *
4 * Author: Fabio Estevam <fabio.estevam@freescale.com>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 *
10 */
11
12/dts-v1/;
13#include "imx6q.dtsi"
14
15/ {
16 model = "Udoo i.MX6 Quad Board";
17 compatible = "udoo,imx6q-udoo", "fsl,imx6q";
18
19 memory {
20 reg = <0x10000000 0x40000000>;
21 };
22};
23
24&sata {
25 status = "okay";
26};
27
28&uart2 {
29 pinctrl-names = "default";
30 pinctrl-0 = <&pinctrl_uart2_1>;
31 status = "okay";
32};
33
34&usdhc3 {
35 pinctrl-names = "default";
36 pinctrl-0 = <&pinctrl_usdhc3_2>;
37 non-removable;
38 status = "okay";
39};
diff --git a/arch/arm/boot/dts/imx6qdl-sabreauto.dtsi b/arch/arm/boot/dts/imx6qdl-sabreauto.dtsi
index 1cbbc5160d27..ff6f1e8f2dd9 100644
--- a/arch/arm/boot/dts/imx6qdl-sabreauto.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-sabreauto.dtsi
@@ -54,6 +54,7 @@
54 fsl,pins = < 54 fsl,pins = <
55 MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x80000000 55 MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x80000000
56 MX6QDL_PAD_SD2_DAT2__GPIO1_IO13 0x80000000 56 MX6QDL_PAD_SD2_DAT2__GPIO1_IO13 0x80000000
57 MX6QDL_PAD_GPIO_18__SD3_VSELECT 0x17059
57 >; 58 >;
58 }; 59 };
59 }; 60 };
@@ -74,8 +75,10 @@
74}; 75};
75 76
76&usdhc3 { 77&usdhc3 {
77 pinctrl-names = "default"; 78 pinctrl-names = "default", "state_100mhz", "state_200mhz";
78 pinctrl-0 = <&pinctrl_usdhc3_1>; 79 pinctrl-0 = <&pinctrl_usdhc3_1>;
80 pinctrl-1 = <&pinctrl_usdhc3_1_100mhz>;
81 pinctrl-2 = <&pinctrl_usdhc3_1_200mhz>;
79 cd-gpios = <&gpio6 15 0>; 82 cd-gpios = <&gpio6 15 0>;
80 wp-gpios = <&gpio1 13 0>; 83 wp-gpios = <&gpio1 13 0>;
81 status = "okay"; 84 status = "okay";
diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
index 39eafc222a2e..e75e11b36dff 100644
--- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
@@ -80,6 +80,14 @@
80 mux-int-port = <2>; 80 mux-int-port = <2>;
81 mux-ext-port = <3>; 81 mux-ext-port = <3>;
82 }; 82 };
83
84 backlight {
85 compatible = "pwm-backlight";
86 pwms = <&pwm1 0 5000000>;
87 brightness-levels = <0 4 8 16 32 64 128 255>;
88 default-brightness-level = <7>;
89 status = "okay";
90 };
83}; 91};
84 92
85&audmux { 93&audmux {
@@ -108,6 +116,7 @@
108 pinctrl-names = "default"; 116 pinctrl-names = "default";
109 pinctrl-0 = <&pinctrl_enet_1>; 117 pinctrl-0 = <&pinctrl_enet_1>;
110 phy-mode = "rgmii"; 118 phy-mode = "rgmii";
119 phy-reset-gpios = <&gpio1 25 0>;
111 status = "okay"; 120 status = "okay";
112}; 121};
113 122
@@ -172,6 +181,7 @@
172 MX6QDL_PAD_NANDF_CLE__GPIO6_IO07 0x80000000 181 MX6QDL_PAD_NANDF_CLE__GPIO6_IO07 0x80000000
173 MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000 182 MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000
174 MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x80000000 183 MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x80000000
184 MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x80000000
175 >; 185 >;
176 }; 186 };
177 }; 187 };
@@ -202,6 +212,12 @@
202 }; 212 };
203}; 213};
204 214
215&pwm1 {
216 pinctrl-names = "default";
217 pinctrl-0 = <&pinctrl_pwm0_1>;
218 status = "okay";
219};
220
205&ssi2 { 221&ssi2 {
206 fsl,mode = "i2s-slave"; 222 fsl,mode = "i2s-slave";
207 status = "okay"; 223 status = "okay";
@@ -229,6 +245,7 @@
229&usdhc2 { 245&usdhc2 {
230 pinctrl-names = "default"; 246 pinctrl-names = "default";
231 pinctrl-0 = <&pinctrl_usdhc2_1>; 247 pinctrl-0 = <&pinctrl_usdhc2_1>;
248 bus-width = <8>;
232 cd-gpios = <&gpio2 2 0>; 249 cd-gpios = <&gpio2 2 0>;
233 wp-gpios = <&gpio2 3 0>; 250 wp-gpios = <&gpio2 3 0>;
234 status = "okay"; 251 status = "okay";
@@ -237,6 +254,7 @@
237&usdhc3 { 254&usdhc3 {
238 pinctrl-names = "default"; 255 pinctrl-names = "default";
239 pinctrl-0 = <&pinctrl_usdhc3_1>; 256 pinctrl-0 = <&pinctrl_usdhc3_1>;
257 bus-width = <8>;
240 cd-gpios = <&gpio2 0 0>; 258 cd-gpios = <&gpio2 0 0>;
241 wp-gpios = <&gpio2 1 0>; 259 wp-gpios = <&gpio2 1 0>;
242 status = "okay"; 260 status = "okay";
diff --git a/arch/arm/boot/dts/imx6qdl-wandboard.dtsi b/arch/arm/boot/dts/imx6qdl-wandboard.dtsi
index a55113e65bcb..35f547929167 100644
--- a/arch/arm/boot/dts/imx6qdl-wandboard.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-wandboard.dtsi
@@ -43,6 +43,13 @@
43 mux-int-port = <1>; 43 mux-int-port = <1>;
44 mux-ext-port = <3>; 44 mux-ext-port = <3>;
45 }; 45 };
46
47 sound-spdif {
48 compatible = "fsl,imx-audio-spdif";
49 model = "imx-spdif";
50 spdif-controller = <&spdif>;
51 spdif-out;
52 };
46}; 53};
47 54
48&audmux { 55&audmux {
@@ -81,6 +88,7 @@
81 MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x80000000 /* WL_REG_ON */ 88 MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x80000000 /* WL_REG_ON */
82 MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000 /* WL_HOST_WAKE */ 89 MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000 /* WL_HOST_WAKE */
83 MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x80000000 /* WL_WAKE */ 90 MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x80000000 /* WL_WAKE */
91 MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x80000000
84 >; 92 >;
85 }; 93 };
86 }; 94 };
@@ -90,6 +98,13 @@
90 pinctrl-names = "default"; 98 pinctrl-names = "default";
91 pinctrl-0 = <&pinctrl_enet_1>; 99 pinctrl-0 = <&pinctrl_enet_1>;
92 phy-mode = "rgmii"; 100 phy-mode = "rgmii";
101 phy-reset-gpios = <&gpio3 29 0>;
102 status = "okay";
103};
104
105&spdif {
106 pinctrl-names = "default";
107 pinctrl-0 = <&pinctrl_spdif_3>;
93 status = "okay"; 108 status = "okay";
94}; 109};
95 110
@@ -115,6 +130,14 @@
115 status = "okay"; 130 status = "okay";
116}; 131};
117 132
133&usbotg {
134 pinctrl-names = "default";
135 pinctrl-0 = <&pinctrl_usbotg_1>;
136 disable-over-current;
137 dr_mode = "peripheral";
138 status = "okay";
139};
140
118&usdhc1 { 141&usdhc1 {
119 pinctrl-names = "default"; 142 pinctrl-names = "default";
120 pinctrl-0 = <&pinctrl_usdhc1_2>; 143 pinctrl-0 = <&pinctrl_usdhc1_2>;
diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi
index ccd55c2fdb67..59154dc15fe4 100644
--- a/arch/arm/boot/dts/imx6qdl.dtsi
+++ b/arch/arm/boot/dts/imx6qdl.dtsi
@@ -116,6 +116,22 @@
116 arm,data-latency = <4 2 3>; 116 arm,data-latency = <4 2 3>;
117 }; 117 };
118 118
119 pcie: pcie@0x01000000 {
120 compatible = "fsl,imx6q-pcie", "snps,dw-pcie";
121 reg = <0x01ffc000 0x4000>; /* DBI */
122 #address-cells = <3>;
123 #size-cells = <2>;
124 device_type = "pci";
125 ranges = <0x00000800 0 0x01f00000 0x01f00000 0 0x00080000 /* configuration space */
126 0x81000000 0 0 0x01f80000 0 0x00010000 /* downstream I/O */
127 0x82000000 0 0x01000000 0x01000000 0 0x00f00000>; /* non-prefetchable memory */
128 num-lanes = <1>;
129 interrupts = <0 123 0x04>;
130 clocks = <&clks 189>, <&clks 187>, <&clks 206>, <&clks 144>;
131 clock-names = "pcie_ref_125m", "sata_ref_100m", "lvds_gate", "pcie_axi";
132 status = "disabled";
133 };
134
119 pmu { 135 pmu {
120 compatible = "arm,cortex-a9-pmu"; 136 compatible = "arm,cortex-a9-pmu";
121 interrupts = <0 94 0x04>; 137 interrupts = <0 94 0x04>;
@@ -136,8 +152,23 @@
136 ranges; 152 ranges;
137 153
138 spdif: spdif@02004000 { 154 spdif: spdif@02004000 {
155 compatible = "fsl,imx35-spdif";
139 reg = <0x02004000 0x4000>; 156 reg = <0x02004000 0x4000>;
140 interrupts = <0 52 0x04>; 157 interrupts = <0 52 0x04>;
158 dmas = <&sdma 14 18 0>,
159 <&sdma 15 18 0>;
160 dma-names = "rx", "tx";
161 clocks = <&clks 197>, <&clks 3>,
162 <&clks 197>, <&clks 107>,
163 <&clks 0>, <&clks 118>,
164 <&clks 62>, <&clks 139>,
165 <&clks 0>;
166 clock-names = "core", "rxtx0",
167 "rxtx1", "rxtx2",
168 "rxtx3", "rxtx4",
169 "rxtx5", "rxtx6",
170 "rxtx7";
171 status = "disabled";
141 }; 172 };
142 173
143 ecspi1: ecspi@02008000 { 174 ecspi1: ecspi@02008000 {
@@ -1010,6 +1041,12 @@
1010 MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x1b0b0 1041 MX6QDL_PAD_GPIO_17__SPDIF_OUT 0x1b0b0
1011 >; 1042 >;
1012 }; 1043 };
1044
1045 pinctrl_spdif_3: spdifgrp-3 {
1046 fsl,pins = <
1047 MX6QDL_PAD_ENET_RXD0__SPDIF_OUT 0x1b0b0
1048 >;
1049 };
1013 }; 1050 };
1014 1051
1015 uart1 { 1052 uart1 {
@@ -1184,6 +1221,36 @@
1184 >; 1221 >;
1185 }; 1222 };
1186 1223
1224 pinctrl_usdhc3_1_100mhz: usdhc3grp-1-100mhz { /* 100Mhz */
1225 fsl,pins = <
1226 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170b9
1227 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100b9
1228 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170b9
1229 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170b9
1230 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170b9
1231 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170b9
1232 MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170b9
1233 MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170b9
1234 MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170b9
1235 MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170b9
1236 >;
1237 };
1238
1239 pinctrl_usdhc3_1_200mhz: usdhc3grp-1-200mhz { /* 200Mhz */
1240 fsl,pins = <
1241 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170f9
1242 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100f9
1243 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170f9
1244 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170f9
1245 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170f9
1246 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170f9
1247 MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170f9
1248 MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170f9
1249 MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170f9
1250 MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170f9
1251 >;
1252 };
1253
1187 pinctrl_usdhc3_2: usdhc3grp-2 { 1254 pinctrl_usdhc3_2: usdhc3grp-2 {
1188 fsl,pins = < 1255 fsl,pins = <
1189 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 1256 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
diff --git a/arch/arm/boot/dts/imx6sl-evk.dts b/arch/arm/boot/dts/imx6sl-evk.dts
index 2886a590823d..cc68e19c5163 100644
--- a/arch/arm/boot/dts/imx6sl-evk.dts
+++ b/arch/arm/boot/dts/imx6sl-evk.dts
@@ -17,6 +17,44 @@
17 memory { 17 memory {
18 reg = <0x80000000 0x40000000>; 18 reg = <0x80000000 0x40000000>;
19 }; 19 };
20
21 regulators {
22 compatible = "simple-bus";
23
24 reg_usb_otg1_vbus: usb_otg1_vbus {
25 compatible = "regulator-fixed";
26 regulator-name = "usb_otg1_vbus";
27 regulator-min-microvolt = <5000000>;
28 regulator-max-microvolt = <5000000>;
29 gpio = <&gpio4 0 0>;
30 enable-active-high;
31 };
32
33 reg_usb_otg2_vbus: usb_otg2_vbus {
34 compatible = "regulator-fixed";
35 regulator-name = "usb_otg2_vbus";
36 regulator-min-microvolt = <5000000>;
37 regulator-max-microvolt = <5000000>;
38 gpio = <&gpio4 2 0>;
39 enable-active-high;
40 };
41 };
42};
43
44&ecspi1 {
45 fsl,spi-num-chipselects = <1>;
46 cs-gpios = <&gpio4 11 0>;
47 pinctrl-names = "default";
48 pinctrl-0 = <&pinctrl_ecspi1_1>;
49 status = "okay";
50
51 flash: m25p80@0 {
52 #address-cells = <1>;
53 #size-cells = <1>;
54 compatible = "st,m25p32";
55 spi-max-frequency = <20000000>;
56 reg = <0>;
57 };
20}; 58};
21 59
22&fec { 60&fec {
@@ -38,6 +76,8 @@
38 MX6SL_PAD_SD2_DAT7__GPIO5_IO00 0x17059 76 MX6SL_PAD_SD2_DAT7__GPIO5_IO00 0x17059
39 MX6SL_PAD_SD2_DAT6__GPIO4_IO29 0x17059 77 MX6SL_PAD_SD2_DAT6__GPIO4_IO29 0x17059
40 MX6SL_PAD_REF_CLK_32K__GPIO3_IO22 0x17059 78 MX6SL_PAD_REF_CLK_32K__GPIO3_IO22 0x17059
79 MX6SL_PAD_KEY_COL4__GPIO4_IO00 0x80000000
80 MX6SL_PAD_KEY_COL5__GPIO4_IO02 0x80000000
41 >; 81 >;
42 }; 82 };
43 }; 83 };
@@ -49,9 +89,26 @@
49 status = "okay"; 89 status = "okay";
50}; 90};
51 91
52&usdhc1 { 92&usbotg1 {
93 vbus-supply = <&reg_usb_otg1_vbus>;
53 pinctrl-names = "default"; 94 pinctrl-names = "default";
95 pinctrl-0 = <&pinctrl_usbotg1_1>;
96 disable-over-current;
97 status = "okay";
98};
99
100&usbotg2 {
101 vbus-supply = <&reg_usb_otg2_vbus>;
102 dr_mode = "host";
103 disable-over-current;
104 status = "okay";
105};
106
107&usdhc1 {
108 pinctrl-names = "default", "state_100mhz", "state_200mhz";
54 pinctrl-0 = <&pinctrl_usdhc1_1>; 109 pinctrl-0 = <&pinctrl_usdhc1_1>;
110 pinctrl-1 = <&pinctrl_usdhc1_1_100mhz>;
111 pinctrl-2 = <&pinctrl_usdhc1_1_200mhz>;
55 bus-width = <8>; 112 bus-width = <8>;
56 cd-gpios = <&gpio4 7 0>; 113 cd-gpios = <&gpio4 7 0>;
57 wp-gpios = <&gpio4 6 0>; 114 wp-gpios = <&gpio4 6 0>;
@@ -59,16 +116,20 @@
59}; 116};
60 117
61&usdhc2 { 118&usdhc2 {
62 pinctrl-names = "default"; 119 pinctrl-names = "default", "state_100mhz", "state_200mhz";
63 pinctrl-0 = <&pinctrl_usdhc2_1>; 120 pinctrl-0 = <&pinctrl_usdhc2_1>;
121 pinctrl-1 = <&pinctrl_usdhc2_1_100mhz>;
122 pinctrl-2 = <&pinctrl_usdhc2_1_200mhz>;
64 cd-gpios = <&gpio5 0 0>; 123 cd-gpios = <&gpio5 0 0>;
65 wp-gpios = <&gpio4 29 0>; 124 wp-gpios = <&gpio4 29 0>;
66 status = "okay"; 125 status = "okay";
67}; 126};
68 127
69&usdhc3 { 128&usdhc3 {
70 pinctrl-names = "default"; 129 pinctrl-names = "default", "state_100mhz", "state_200mhz";
71 pinctrl-0 = <&pinctrl_usdhc3_1>; 130 pinctrl-0 = <&pinctrl_usdhc3_1>;
131 pinctrl-1 = <&pinctrl_usdhc3_1_100mhz>;
132 pinctrl-2 = <&pinctrl_usdhc3_1_200mhz>;
72 cd-gpios = <&gpio3 22 0>; 133 cd-gpios = <&gpio3 22 0>;
73 status = "okay"; 134 status = "okay";
74}; 135};
diff --git a/arch/arm/boot/dts/imx6sl.dtsi b/arch/arm/boot/dts/imx6sl.dtsi
index c46651e4d966..6eabfa12e8c5 100644
--- a/arch/arm/boot/dts/imx6sl.dtsi
+++ b/arch/arm/boot/dts/imx6sl.dtsi
@@ -13,16 +13,20 @@
13 13
14/ { 14/ {
15 aliases { 15 aliases {
16 serial0 = &uart1;
17 serial1 = &uart2;
18 serial2 = &uart3;
19 serial3 = &uart4;
20 serial4 = &uart5;
21 gpio0 = &gpio1; 16 gpio0 = &gpio1;
22 gpio1 = &gpio2; 17 gpio1 = &gpio2;
23 gpio2 = &gpio3; 18 gpio2 = &gpio3;
24 gpio3 = &gpio4; 19 gpio3 = &gpio4;
25 gpio4 = &gpio5; 20 gpio4 = &gpio5;
21 serial0 = &uart1;
22 serial1 = &uart2;
23 serial2 = &uart3;
24 serial3 = &uart4;
25 serial4 = &uart5;
26 spi0 = &ecspi1;
27 spi1 = &ecspi2;
28 spi2 = &ecspi3;
29 spi3 = &ecspi4;
26 }; 30 };
27 31
28 cpus { 32 cpus {
@@ -528,10 +532,26 @@
528 interrupts = <0 89 0x04>; 532 interrupts = <0 89 0x04>;
529 }; 533 };
530 534
535 gpr: iomuxc-gpr@020e0000 {
536 compatible = "fsl,imx6sl-iomuxc-gpr",
537 "fsl,imx6q-iomuxc-gpr", "syscon";
538 reg = <0x020e0000 0x38>;
539 };
540
531 iomuxc: iomuxc@020e0000 { 541 iomuxc: iomuxc@020e0000 {
532 compatible = "fsl,imx6sl-iomuxc"; 542 compatible = "fsl,imx6sl-iomuxc";
533 reg = <0x020e0000 0x4000>; 543 reg = <0x020e0000 0x4000>;
534 544
545 ecspi1 {
546 pinctrl_ecspi1_1: ecspi1grp-1 {
547 fsl,pins = <
548 MX6SL_PAD_ECSPI1_MISO__ECSPI1_MISO 0x100b1
549 MX6SL_PAD_ECSPI1_MOSI__ECSPI1_MOSI 0x100b1
550 MX6SL_PAD_ECSPI1_SCLK__ECSPI1_SCLK 0x100b1
551 >;
552 };
553 };
554
535 fec { 555 fec {
536 pinctrl_fec_1: fecgrp-1 { 556 pinctrl_fec_1: fecgrp-1 {
537 fsl,pins = < 557 fsl,pins = <
@@ -557,6 +577,64 @@
557 }; 577 };
558 }; 578 };
559 579
580 usbotg1 {
581 pinctrl_usbotg1_1: usbotg1grp-1 {
582 fsl,pins = <
583 MX6SL_PAD_EPDC_PWRCOM__USB_OTG1_ID 0x17059
584 >;
585 };
586
587 pinctrl_usbotg1_2: usbotg1grp-2 {
588 fsl,pins = <
589 MX6SL_PAD_FEC_RXD0__USB_OTG1_ID 0x17059
590 >;
591 };
592
593 pinctrl_usbotg1_3: usbotg1grp-3 {
594 fsl,pins = <
595 MX6SL_PAD_LCD_DAT1__USB_OTG1_ID 0x17059
596 >;
597 };
598
599 pinctrl_usbotg1_4: usbotg1grp-4 {
600 fsl,pins = <
601 MX6SL_PAD_REF_CLK_32K__USB_OTG1_ID 0x17059
602 >;
603 };
604
605 pinctrl_usbotg1_5: usbotg1grp-5 {
606 fsl,pins = <
607 MX6SL_PAD_SD3_DAT0__USB_OTG1_ID 0x17059
608 >;
609 };
610 };
611
612 usbotg2 {
613 pinctrl_usbotg2_1: usbotg2grp-1 {
614 fsl,pins = <
615 MX6SL_PAD_ECSPI1_SCLK__USB_OTG2_OC 0x17059
616 >;
617 };
618
619 pinctrl_usbotg2_2: usbotg2grp-2 {
620 fsl,pins = <
621 MX6SL_PAD_ECSPI2_SCLK__USB_OTG2_OC 0x17059
622 >;
623 };
624
625 pinctrl_usbotg2_3: usbotg2grp-3 {
626 fsl,pins = <
627 MX6SL_PAD_KEY_ROW5__USB_OTG2_OC 0x17059
628 >;
629 };
630
631 pinctrl_usbotg2_4: usbotg2grp-4 {
632 fsl,pins = <
633 MX6SL_PAD_SD3_DAT2__USB_OTG2_OC 0x17059
634 >;
635 };
636 };
637
560 usdhc1 { 638 usdhc1 {
561 pinctrl_usdhc1_1: usdhc1grp-1 { 639 pinctrl_usdhc1_1: usdhc1grp-1 {
562 fsl,pins = < 640 fsl,pins = <
@@ -572,6 +650,38 @@
572 MX6SL_PAD_SD1_DAT7__SD1_DATA7 0x17059 650 MX6SL_PAD_SD1_DAT7__SD1_DATA7 0x17059
573 >; 651 >;
574 }; 652 };
653
654 pinctrl_usdhc1_1_100mhz: usdhc1grp-1-100mhz {
655 fsl,pins = <
656 MX6SL_PAD_SD1_CMD__SD1_CMD 0x170b9
657 MX6SL_PAD_SD1_CLK__SD1_CLK 0x100b9
658 MX6SL_PAD_SD1_DAT0__SD1_DATA0 0x170b9
659 MX6SL_PAD_SD1_DAT1__SD1_DATA1 0x170b9
660 MX6SL_PAD_SD1_DAT2__SD1_DATA2 0x170b9
661 MX6SL_PAD_SD1_DAT3__SD1_DATA3 0x170b9
662 MX6SL_PAD_SD1_DAT4__SD1_DATA4 0x170b9
663 MX6SL_PAD_SD1_DAT5__SD1_DATA5 0x170b9
664 MX6SL_PAD_SD1_DAT6__SD1_DATA6 0x170b9
665 MX6SL_PAD_SD1_DAT7__SD1_DATA7 0x170b9
666 >;
667 };
668
669 pinctrl_usdhc1_1_200mhz: usdhc1grp-1-200mhz {
670 fsl,pins = <
671 MX6SL_PAD_SD1_CMD__SD1_CMD 0x170f9
672 MX6SL_PAD_SD1_CLK__SD1_CLK 0x100f9
673 MX6SL_PAD_SD1_DAT0__SD1_DATA0 0x170f9
674 MX6SL_PAD_SD1_DAT1__SD1_DATA1 0x170f9
675 MX6SL_PAD_SD1_DAT2__SD1_DATA2 0x170f9
676 MX6SL_PAD_SD1_DAT3__SD1_DATA3 0x170f9
677 MX6SL_PAD_SD1_DAT4__SD1_DATA4 0x170f9
678 MX6SL_PAD_SD1_DAT5__SD1_DATA5 0x170f9
679 MX6SL_PAD_SD1_DAT6__SD1_DATA6 0x170f9
680 MX6SL_PAD_SD1_DAT7__SD1_DATA7 0x170f9
681 >;
682 };
683
684
575 }; 685 };
576 686
577 usdhc2 { 687 usdhc2 {
@@ -585,6 +695,29 @@
585 MX6SL_PAD_SD2_DAT3__SD2_DATA3 0x17059 695 MX6SL_PAD_SD2_DAT3__SD2_DATA3 0x17059
586 >; 696 >;
587 }; 697 };
698
699 pinctrl_usdhc2_1_100mhz: usdhc2grp-1-100mhz {
700 fsl,pins = <
701 MX6SL_PAD_SD2_CMD__SD2_CMD 0x170b9
702 MX6SL_PAD_SD2_CLK__SD2_CLK 0x100b9
703 MX6SL_PAD_SD2_DAT0__SD2_DATA0 0x170b9
704 MX6SL_PAD_SD2_DAT1__SD2_DATA1 0x170b9
705 MX6SL_PAD_SD2_DAT2__SD2_DATA2 0x170b9
706 MX6SL_PAD_SD2_DAT3__SD2_DATA3 0x170b9
707 >;
708 };
709
710 pinctrl_usdhc2_1_200mhz: usdhc2grp-1-200mhz {
711 fsl,pins = <
712 MX6SL_PAD_SD2_CMD__SD2_CMD 0x170f9
713 MX6SL_PAD_SD2_CLK__SD2_CLK 0x100f9
714 MX6SL_PAD_SD2_DAT0__SD2_DATA0 0x170f9
715 MX6SL_PAD_SD2_DAT1__SD2_DATA1 0x170f9
716 MX6SL_PAD_SD2_DAT2__SD2_DATA2 0x170f9
717 MX6SL_PAD_SD2_DAT3__SD2_DATA3 0x170f9
718 >;
719 };
720
588 }; 721 };
589 722
590 usdhc3 { 723 usdhc3 {
@@ -598,6 +731,28 @@
598 MX6SL_PAD_SD3_DAT3__SD3_DATA3 0x17059 731 MX6SL_PAD_SD3_DAT3__SD3_DATA3 0x17059
599 >; 732 >;
600 }; 733 };
734
735 pinctrl_usdhc3_1_100mhz: usdhc3grp-1-100mhz {
736 fsl,pins = <
737 MX6SL_PAD_SD3_CMD__SD3_CMD 0x170b9
738 MX6SL_PAD_SD3_CLK__SD3_CLK 0x100b9
739 MX6SL_PAD_SD3_DAT0__SD3_DATA0 0x170b9
740 MX6SL_PAD_SD3_DAT1__SD3_DATA1 0x170b9
741 MX6SL_PAD_SD3_DAT2__SD3_DATA2 0x170b9
742 MX6SL_PAD_SD3_DAT3__SD3_DATA3 0x170b9
743 >;
744 };
745
746 pinctrl_usdhc3_1_200mhz: usdhc3grp-1-200mhz {
747 fsl,pins = <
748 MX6SL_PAD_SD3_CMD__SD3_CMD 0x170f9
749 MX6SL_PAD_SD3_CLK__SD3_CLK 0x100f9
750 MX6SL_PAD_SD3_DAT0__SD3_DATA0 0x170f9
751 MX6SL_PAD_SD3_DAT1__SD3_DATA1 0x170f9
752 MX6SL_PAD_SD3_DAT2__SD3_DATA2 0x170f9
753 MX6SL_PAD_SD3_DAT3__SD3_DATA3 0x170f9
754 >;
755 };
601 }; 756 };
602 }; 757 };
603 758
@@ -619,7 +774,8 @@
619 <&clks IMX6SL_CLK_SDMA>; 774 <&clks IMX6SL_CLK_SDMA>;
620 clock-names = "ipg", "ahb"; 775 clock-names = "ipg", "ahb";
621 #dma-cells = <3>; 776 #dma-cells = <3>;
622 fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6sl.bin"; 777 /* imx6sl reuses imx6q sdma firmware */
778 fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin";
623 }; 779 };
624 780
625 pxp: pxp@020f0000 { 781 pxp: pxp@020f0000 {
@@ -663,7 +819,7 @@
663 usbotg2: usb@02184200 { 819 usbotg2: usb@02184200 {
664 compatible = "fsl,imx6sl-usb", "fsl,imx27-usb"; 820 compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
665 reg = <0x02184200 0x200>; 821 reg = <0x02184200 0x200>;
666 interrupts = <0 40 0x04>; 822 interrupts = <0 42 0x04>;
667 clocks = <&clks IMX6SL_CLK_USBOH3>; 823 clocks = <&clks IMX6SL_CLK_USBOH3>;
668 fsl,usbphy = <&usbphy2>; 824 fsl,usbphy = <&usbphy2>;
669 fsl,usbmisc = <&usbmisc 1>; 825 fsl,usbmisc = <&usbmisc 1>;
@@ -673,7 +829,7 @@
673 usbh: usb@02184400 { 829 usbh: usb@02184400 {
674 compatible = "fsl,imx6sl-usb", "fsl,imx27-usb"; 830 compatible = "fsl,imx6sl-usb", "fsl,imx27-usb";
675 reg = <0x02184400 0x200>; 831 reg = <0x02184400 0x200>;
676 interrupts = <0 42 0x04>; 832 interrupts = <0 40 0x04>;
677 clocks = <&clks IMX6SL_CLK_USBOH3>; 833 clocks = <&clks IMX6SL_CLK_USBOH3>;
678 fsl,usbmisc = <&usbmisc 2>; 834 fsl,usbmisc = <&usbmisc 2>;
679 status = "disabled"; 835 status = "disabled";
diff --git a/arch/arm/boot/dts/mxs-pinfunc.h b/arch/arm/boot/dts/mxs-pinfunc.h
new file mode 100644
index 000000000000..c6da987b20cb
--- /dev/null
+++ b/arch/arm/boot/dts/mxs-pinfunc.h
@@ -0,0 +1,31 @@
1/*
2 * Header providing constants for i.MX28 pinctrl bindings.
3 *
4 * Copyright (C) 2013 Lothar Waßmann <LW@KARO-electronics.de>
5 *
6 * The code contained herein is licensed under the GNU General Public
7 * License. You may obtain a copy of the GNU General Public License
8 * Version 2 at the following locations:
9 *
10 * http://www.opensource.org/licenses/gpl-license.html
11 * http://www.gnu.org/copyleft/gpl.html
12 */
13
14#ifndef __DT_BINDINGS_MXS_PINCTRL_H__
15#define __DT_BINDINGS_MXS_PINCTRL_H__
16
17/* fsl,drive-strength property */
18#define MXS_DRIVE_4mA 0
19#define MXS_DRIVE_8mA 1
20#define MXS_DRIVE_12mA 2
21#define MXS_DRIVE_16mA 3
22
23/* fsl,voltage property */
24#define MXS_VOLTAGE_LOW 0
25#define MXS_VOLTAGE_HIGH 1
26
27/* fsl,pull-up property */
28#define MXS_PULL_DISABLE 0
29#define MXS_PULL_ENABLE 1
30
31#endif /* __DT_BINDINGS_MXS_PINCTRL_H__ */
diff --git a/arch/arm/boot/dts/vf610-cosmic.dts b/arch/arm/boot/dts/vf610-cosmic.dts
new file mode 100644
index 000000000000..c42e4f938dcd
--- /dev/null
+++ b/arch/arm/boot/dts/vf610-cosmic.dts
@@ -0,0 +1,47 @@
1/*
2 * Copyright 2013 Freescale Semiconductor, Inc.
3 * Copyright 2013 Linaro Limited
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
9 */
10
11/dts-v1/;
12#include "vf610.dtsi"
13
14/ {
15 model = "PHYTEC Cosmic/Cosmic+ Board";
16 compatible = "phytec,vf610-cosmic", "fsl,vf610";
17
18 chosen {
19 bootargs = "console=ttyLP1,115200";
20 };
21
22 memory {
23 reg = <0x80000000 0x10000000>;
24 };
25
26 clocks {
27 enet_ext {
28 compatible = "fixed-clock";
29 #clock-cells = <0>;
30 clock-frequency = <50000000>;
31 };
32 };
33
34};
35
36&fec1 {
37 phy-mode = "rmii";
38 pinctrl-names = "default";
39 pinctrl-0 = <&pinctrl_fec1_1>;
40 status = "okay";
41};
42
43&uart1 {
44 pinctrl-names = "default";
45 pinctrl-0 = <&pinctrl_uart1_1>;
46 status = "okay";
47};
diff --git a/arch/arm/boot/dts/vf610-twr.dts b/arch/arm/boot/dts/vf610-twr.dts
index 1a58678b93fa..c8047ca16501 100644
--- a/arch/arm/boot/dts/vf610-twr.dts
+++ b/arch/arm/boot/dts/vf610-twr.dts
@@ -36,6 +36,23 @@
36 36
37}; 37};
38 38
39&dspi0 {
40 bus-num = <0>;
41 pinctrl-names = "default";
42 pinctrl-0 = <&pinctrl_dspi0_1>;
43 status = "okay";
44
45 sflash: at26df081a@0 {
46 #address-cells = <1>;
47 #size-cells = <1>;
48 compatible = "atmel,at26df081a";
49 spi-max-frequency = <16000000>;
50 spi-cpol;
51 spi-cpha;
52 reg = <0>;
53 };
54};
55
39&fec0 { 56&fec0 {
40 phy-mode = "rmii"; 57 phy-mode = "rmii";
41 pinctrl-names = "default"; 58 pinctrl-names = "default";
diff --git a/arch/arm/boot/dts/vf610.dtsi b/arch/arm/boot/dts/vf610.dtsi
index 67d929cf9804..d31ce1b4a7b0 100644
--- a/arch/arm/boot/dts/vf610.dtsi
+++ b/arch/arm/boot/dts/vf610.dtsi
@@ -123,6 +123,18 @@
123 status = "disabled"; 123 status = "disabled";
124 }; 124 };
125 125
126 dspi0: dspi0@4002c000 {
127 #address-cells = <1>;
128 #size-cells = <0>;
129 compatible = "fsl,vf610-dspi";
130 reg = <0x4002c000 0x1000>;
131 interrupts = <0 67 0x04>;
132 clocks = <&clks VF610_CLK_DSPI0>;
133 clock-names = "dspi";
134 spi-num-chipselects = <5>;
135 status = "disabled";
136 };
137
126 sai2: sai@40031000 { 138 sai2: sai@40031000 {
127 compatible = "fsl,vf610-sai"; 139 compatible = "fsl,vf610-sai";
128 reg = <0x40031000 0x1000>; 140 reg = <0x40031000 0x1000>;
diff --git a/arch/arm/mach-mxs/mach-mxs.c b/arch/arm/mach-mxs/mach-mxs.c
index 98f6e2adb53e..c0ceb17649fa 100644
--- a/arch/arm/mach-mxs/mach-mxs.c
+++ b/arch/arm/mach-mxs/mach-mxs.c
@@ -332,6 +332,11 @@ static void __init crystalfontz_init(void)
332 update_fec_mac_prop(OUI_CRYSTALFONTZ); 332 update_fec_mac_prop(OUI_CRYSTALFONTZ);
333} 333}
334 334
335static void __init m28cu3_init(void)
336{
337 update_fec_mac_prop(OUI_DENX);
338}
339
335static const char __init *mxs_get_soc_id(void) 340static const char __init *mxs_get_soc_id(void)
336{ 341{
337 struct device_node *np; 342 struct device_node *np;
@@ -459,6 +464,8 @@ static void __init mxs_machine_init(void)
459 apx4devkit_init(); 464 apx4devkit_init();
460 else if (of_machine_is_compatible("crystalfontz,cfa10036")) 465 else if (of_machine_is_compatible("crystalfontz,cfa10036"))
461 crystalfontz_init(); 466 crystalfontz_init();
467 else if (of_machine_is_compatible("msr,m28cu3"))
468 m28cu3_init();
462 469
463 of_platform_populate(NULL, of_default_bus_match_table, 470 of_platform_populate(NULL, of_default_bus_match_table,
464 NULL, parent); 471 NULL, parent);