diff options
author | Lothar Waßmann <LW@KARO-electronics.de> | 2013-09-23 06:20:48 -0400 |
---|---|---|
committer | Shawn Guo <shawn.guo@linaro.org> | 2013-09-26 01:01:37 -0400 |
commit | af67a755376df068aae678e96e42c72fb631b87b (patch) | |
tree | a7fcb0dc8e4f3879a5c69ee3ad15be7e7c9add28 /arch/arm/boot/dts/imx28-tx28.dts | |
parent | d1d67d71d5e86e0c401bb91f91c6a44b8f408b1d (diff) |
ARM: dts: tx28: restructure and update DTS file
Update the Ka-Ro TX28 DTS file.
- add Copyright header
- use label references for better readability
- sort the entries alphabetically
- add some aliases used by U-Boot to modify the DT data
Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de>
Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
Diffstat (limited to 'arch/arm/boot/dts/imx28-tx28.dts')
-rw-r--r-- | arch/arm/boot/dts/imx28-tx28.dts | 701 |
1 files changed, 619 insertions, 82 deletions
diff --git a/arch/arm/boot/dts/imx28-tx28.dts b/arch/arm/boot/dts/imx28-tx28.dts index 3dbe1d7da467..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 = <®_can_xcvr>; | ||
218 | status = "okay"; | ||
219 | }; | ||
220 | |||
221 | &can1 { | ||
222 | pinctrl-names = "default"; | ||
223 | pinctrl-0 = <&can1_pins_a>; | ||
224 | xceiver-supply = <®_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 = <®_2p5v>; | ||
255 | VDDIO-supply = <®_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 = <®_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 = <®_usb0_vbus>; | ||
629 | disable-over-current; | ||
630 | dr_mode = "peripheral"; | ||
631 | status = "okay"; | ||
632 | }; | ||
633 | |||
634 | &usb1 { | ||
635 | vbus-supply = <®_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 | }; | ||