ARM: dt: imx28-cfa10036: introduce a regulator for mmc0
[linux-2.6-block.git] / arch / arm / boot / dts / imx6qdl-gw54xx.dtsi
CommitLineData
e3946fe8
TH
1/*
2 * Copyright 2013 Gateworks Corporation
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/ {
13 /* these are used by bootloader for disabling nodes */
14 aliases {
15 can0 = &can1;
16 ethernet0 = &fec;
17 ethernet1 = &eth1;
18 led0 = &led0;
19 led1 = &led1;
20 led2 = &led2;
21 nand = &gpmi;
22 sky2 = &eth1;
23 ssi0 = &ssi1;
24 usb0 = &usbh1;
25 usb1 = &usbotg;
26 usdhc2 = &usdhc3;
27 };
28
29 chosen {
30 bootargs = "console=ttymxc1,115200";
31 };
32
b3253241
TH
33 backlight {
34 compatible = "pwm-backlight";
35 pwms = <&pwm4 0 5000000>;
36 brightness-levels = <0 4 8 16 32 64 128 255>;
37 default-brightness-level = <7>;
38 };
39
e3946fe8
TH
40 leds {
41 compatible = "gpio-leds";
42
43 led0: user1 {
44 label = "user1";
45 gpios = <&gpio4 6 0>; /* 102 -> MX6_PANLEDG */
46 default-state = "on";
47 linux,default-trigger = "heartbeat";
48 };
49
50 led1: user2 {
51 label = "user2";
52 gpios = <&gpio4 7 0>; /* 103 -> MX6_PANLEDR */
53 default-state = "off";
54 };
55
56 led2: user3 {
57 label = "user3";
58 gpios = <&gpio4 15 1>; /* 111 -> MX6_LOCLED# */
59 default-state = "off";
60 };
61 };
62
63 memory {
64 reg = <0x10000000 0x40000000>;
65 };
66
67 pps {
68 compatible = "pps-gpio";
69 gpios = <&gpio1 26 0>;
70 status = "okay";
71 };
72
73 regulators {
74 compatible = "simple-bus";
75 #address-cells = <1>;
76 #size-cells = <0>;
77
78 reg_1p0v: regulator@0 {
79 compatible = "regulator-fixed";
80 reg = <0>;
81 regulator-name = "1P0V";
82 regulator-min-microvolt = <1000000>;
83 regulator-max-microvolt = <1000000>;
84 regulator-always-on;
85 };
86
87 reg_3p3v: regulator@1 {
88 compatible = "regulator-fixed";
89 reg = <1>;
90 regulator-name = "3P3V";
91 regulator-min-microvolt = <3300000>;
92 regulator-max-microvolt = <3300000>;
93 regulator-always-on;
94 };
95
96 reg_usb_h1_vbus: regulator@2 {
97 compatible = "regulator-fixed";
98 reg = <2>;
99 regulator-name = "usb_h1_vbus";
100 regulator-min-microvolt = <5000000>;
101 regulator-max-microvolt = <5000000>;
102 regulator-always-on;
103 };
104
105 reg_usb_otg_vbus: regulator@3 {
106 compatible = "regulator-fixed";
107 reg = <3>;
108 regulator-name = "usb_otg_vbus";
109 regulator-min-microvolt = <5000000>;
110 regulator-max-microvolt = <5000000>;
111 gpio = <&gpio3 22 0>;
112 enable-active-high;
113 };
114 };
115
116 sound {
117 compatible = "fsl,imx6q-sabrelite-sgtl5000",
118 "fsl,imx-audio-sgtl5000";
119 model = "imx6q-sabrelite-sgtl5000";
120 ssi-controller = <&ssi1>;
121 audio-codec = <&codec>;
122 audio-routing =
123 "MIC_IN", "Mic Jack",
124 "Mic Jack", "Mic Bias",
125 "Headphone Jack", "HP_OUT";
126 mux-int-port = <1>;
127 mux-ext-port = <4>;
128 };
129};
130
131&audmux {
132 pinctrl-names = "default";
133 pinctrl-0 = <&pinctrl_audmux>; /* AUD4<->sgtl5000 */
134 status = "okay";
135};
136
137&can1 {
138 pinctrl-names = "default";
139 pinctrl-0 = <&pinctrl_flexcan1>;
140 status = "okay";
141};
142
143&fec {
144 pinctrl-names = "default";
145 pinctrl-0 = <&pinctrl_enet>;
146 phy-mode = "rgmii";
147 phy-reset-gpios = <&gpio1 30 0>;
148 status = "okay";
149};
150
151&gpmi {
152 pinctrl-names = "default";
153 pinctrl-0 = <&pinctrl_gpmi_nand>;
154 status = "okay";
155};
156
aef15dba
TH
157&hdmi {
158 ddc-i2c-bus = <&i2c3>;
159 status = "okay";
160};
161
e3946fe8
TH
162&i2c1 {
163 clock-frequency = <100000>;
164 pinctrl-names = "default";
165 pinctrl-0 = <&pinctrl_i2c1>;
166 status = "okay";
167
168 eeprom1: eeprom@50 {
169 compatible = "atmel,24c02";
170 reg = <0x50>;
171 pagesize = <16>;
172 };
173
174 eeprom2: eeprom@51 {
175 compatible = "atmel,24c02";
176 reg = <0x51>;
177 pagesize = <16>;
178 };
179
180 eeprom3: eeprom@52 {
181 compatible = "atmel,24c02";
182 reg = <0x52>;
183 pagesize = <16>;
184 };
185
186 eeprom4: eeprom@53 {
187 compatible = "atmel,24c02";
188 reg = <0x53>;
189 pagesize = <16>;
190 };
191
192 gpio: pca9555@23 {
193 compatible = "nxp,pca9555";
194 reg = <0x23>;
195 gpio-controller;
196 #gpio-cells = <2>;
197 };
198
199 hwmon: gsc@29 {
200 compatible = "gw,gsp";
201 reg = <0x29>;
202 };
203
204 rtc: ds1672@68 {
205 compatible = "dallas,ds1672";
206 reg = <0x68>;
207 };
208};
209
210&i2c2 {
211 clock-frequency = <100000>;
212 pinctrl-names = "default";
213 pinctrl-0 = <&pinctrl_i2c2>;
214 status = "okay";
215
216 pmic: pfuze100@08 {
217 compatible = "fsl,pfuze100";
218 reg = <0x08>;
219
220 regulators {
221 sw1a_reg: sw1ab {
222 regulator-min-microvolt = <300000>;
223 regulator-max-microvolt = <1875000>;
224 regulator-boot-on;
225 regulator-always-on;
226 regulator-ramp-delay = <6250>;
227 };
228
229 sw1c_reg: sw1c {
230 regulator-min-microvolt = <300000>;
231 regulator-max-microvolt = <1875000>;
232 regulator-boot-on;
233 regulator-always-on;
234 regulator-ramp-delay = <6250>;
235 };
236
237 sw2_reg: sw2 {
238 regulator-min-microvolt = <800000>;
239 regulator-max-microvolt = <3950000>;
240 regulator-boot-on;
241 regulator-always-on;
242 };
243
244 sw3a_reg: sw3a {
245 regulator-min-microvolt = <400000>;
246 regulator-max-microvolt = <1975000>;
247 regulator-boot-on;
248 regulator-always-on;
249 };
250
251 sw3b_reg: sw3b {
252 regulator-min-microvolt = <400000>;
253 regulator-max-microvolt = <1975000>;
254 regulator-boot-on;
255 regulator-always-on;
256 };
257
258 sw4_reg: sw4 {
259 regulator-min-microvolt = <800000>;
260 regulator-max-microvolt = <3300000>;
261 };
262
263 swbst_reg: swbst {
264 regulator-min-microvolt = <5000000>;
265 regulator-max-microvolt = <5150000>;
266 };
267
268 snvs_reg: vsnvs {
269 regulator-min-microvolt = <1000000>;
270 regulator-max-microvolt = <3000000>;
271 regulator-boot-on;
272 regulator-always-on;
273 };
274
275 vref_reg: vrefddr {
276 regulator-boot-on;
277 regulator-always-on;
278 };
279
280 vgen1_reg: vgen1 {
281 regulator-min-microvolt = <800000>;
282 regulator-max-microvolt = <1550000>;
283 };
284
285 vgen2_reg: vgen2 {
286 regulator-min-microvolt = <800000>;
287 regulator-max-microvolt = <1550000>;
288 };
289
290 vgen3_reg: vgen3 {
291 regulator-min-microvolt = <1800000>;
292 regulator-max-microvolt = <3300000>;
293 };
294
295 vgen4_reg: vgen4 {
296 regulator-min-microvolt = <1800000>;
297 regulator-max-microvolt = <3300000>;
298 regulator-always-on;
299 };
300
301 vgen5_reg: vgen5 {
302 regulator-min-microvolt = <1800000>;
303 regulator-max-microvolt = <3300000>;
304 regulator-always-on;
305 };
306
307 vgen6_reg: vgen6 {
308 regulator-min-microvolt = <1800000>;
309 regulator-max-microvolt = <3300000>;
310 regulator-always-on;
311 };
312 };
313 };
314
315 pciswitch: pex8609@3f {
316 compatible = "plx,pex8609";
317 reg = <0x3f>;
318 };
319
320 pciclkgen: si52147@6b {
321 compatible = "sil,si52147";
322 reg = <0x6b>;
323 };
324};
325
326&i2c3 {
327 clock-frequency = <100000>;
328 pinctrl-names = "default";
329 pinctrl-0 = <&pinctrl_i2c3>;
330 status = "okay";
331
332 accelerometer: fxos8700@1e {
333 compatible = "fsl,fxos8700";
334 reg = <0x1e>;
335 };
336
337 codec: sgtl5000@0a {
338 compatible = "fsl,sgtl5000";
339 reg = <0x0a>;
340 clocks = <&clks 201>;
341 VDDA-supply = <&sw4_reg>;
342 VDDIO-supply = <&reg_3p3v>;
343 };
344
345 hdmiin: adv7611@4c {
346 compatible = "adi,adv7611";
347 reg = <0x4c>;
348 };
349
350 touchscreen: egalax_ts@04 {
351 compatible = "eeti,egalax_ts";
352 reg = <0x04>;
353 interrupt-parent = <&gpio7>;
354 interrupts = <12 2>; /* gpio7_12 active low */
355 wakeup-gpios = <&gpio7 12 0>;
356 };
357
358 videoout: adv7393@2a {
359 compatible = "adi,adv7393";
360 reg = <0x2a>;
361 };
362
363 videoin: adv7180@20 {
364 compatible = "adi,adv7180";
365 reg = <0x20>;
366 };
367};
368
369&iomuxc {
370 pinctrl-names = "default";
371 pinctrl-0 = <&pinctrl_hog>;
372
373 imx6qdl-gw54xx {
374 pinctrl_hog: hoggrp {
375 fsl,pins = <
376 MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x80000000 /* OTG_PWR_EN */
377 MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x80000000 /* SPINOR_CS0# */
378 MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x80000000 /* GPS_PPS */
379 MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x80000000 /* PCIE IRQ */
380 MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000 /* PCIE RST */
381 MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x000130b0 /* AUD4_MCK */
382 MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000 /* CAN_STBY */
383 MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x80000000 /* TOUCH_IRQ# */
384 MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x80000000 /* user1 led */
385 MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x80000000 /* user2 led */
386 MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x80000000 /* user3 led */
387 MX6QDL_PAD_SD1_DAT0__GPIO1_IO16 0x80000000 /* USBHUB_RST# */
388 MX6QDL_PAD_SD1_DAT3__GPIO1_IO21 0x80000000 /* MIPI_DIO */
389 >;
390 };
391
392 pinctrl_audmux: audmuxgrp {
393 fsl,pins = <
394 MX6QDL_PAD_SD2_DAT0__AUD4_RXD 0x130b0
395 MX6QDL_PAD_SD2_DAT3__AUD4_TXC 0x130b0
396 MX6QDL_PAD_SD2_DAT2__AUD4_TXD 0x110b0
397 MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x130b0
398 >;
399 };
400
401 pinctrl_enet: enetgrp {
402 fsl,pins = <
403 MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b0b0
404 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b0b0
405 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b0b0
406 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b0b0
407 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b0b0
408 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b0b0
409 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b0b0
410 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b0b0
411 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b0b0
412 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b0b0
413 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b0b0
414 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b0b0
415 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
416 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
417 MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
418 MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
419 >;
420 };
421
422 pinctrl_flexcan1: flexcan1grp {
423 fsl,pins = <
424 MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x80000000
425 MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x80000000
426 >;
427 };
428
429 pinctrl_gpmi_nand: gpminandgrp {
430 fsl,pins = <
431 MX6QDL_PAD_NANDF_CLE__NAND_CLE 0xb0b1
432 MX6QDL_PAD_NANDF_ALE__NAND_ALE 0xb0b1
433 MX6QDL_PAD_NANDF_WP_B__NAND_WP_B 0xb0b1
434 MX6QDL_PAD_NANDF_RB0__NAND_READY_B 0xb000
435 MX6QDL_PAD_NANDF_CS0__NAND_CE0_B 0xb0b1
436 MX6QDL_PAD_NANDF_CS1__NAND_CE1_B 0xb0b1
437 MX6QDL_PAD_SD4_CMD__NAND_RE_B 0xb0b1
438 MX6QDL_PAD_SD4_CLK__NAND_WE_B 0xb0b1
439 MX6QDL_PAD_NANDF_D0__NAND_DATA00 0xb0b1
440 MX6QDL_PAD_NANDF_D1__NAND_DATA01 0xb0b1
441 MX6QDL_PAD_NANDF_D2__NAND_DATA02 0xb0b1
442 MX6QDL_PAD_NANDF_D3__NAND_DATA03 0xb0b1
443 MX6QDL_PAD_NANDF_D4__NAND_DATA04 0xb0b1
444 MX6QDL_PAD_NANDF_D5__NAND_DATA05 0xb0b1
445 MX6QDL_PAD_NANDF_D6__NAND_DATA06 0xb0b1
446 MX6QDL_PAD_NANDF_D7__NAND_DATA07 0xb0b1
447 >;
448 };
449
450 pinctrl_i2c1: i2c1grp {
451 fsl,pins = <
452 MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
453 MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
454 >;
455 };
456
457 pinctrl_i2c2: i2c2grp {
458 fsl,pins = <
459 MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1
460 MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1
461 >;
462 };
463
464 pinctrl_i2c3: i2c3grp {
465 fsl,pins = <
466 MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1
467 MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1
468 >;
469 };
470
b3253241
TH
471 pinctrl_pwm4: pwm4grp {
472 fsl,pins = <
473 MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1
474 >;
475 };
476
e3946fe8
TH
477 pinctrl_uart1: uart1grp {
478 fsl,pins = <
479 MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
480 MX6QDL_PAD_SD3_DAT6__UART1_RX_DATA 0x1b0b1
481 >;
482 };
483
484 pinctrl_uart2: uart2grp {
485 fsl,pins = <
486 MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b0b1
487 MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1
488 >;
489 };
490
491 pinctrl_uart5: uart5grp {
492 fsl,pins = <
493 MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1
494 MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1
495 >;
496 };
497
498 pinctrl_usbotg: usbotggrp {
499 fsl,pins = <
500 MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
501 >;
502 };
503
504 pinctrl_usdhc3: usdhc3grp {
505 fsl,pins = <
506 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
507 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059
508 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
509 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
510 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
511 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
512 >;
513 };
514 };
515};
516
517&ldb {
518 status = "okay";
519
520 lvds-channel@1 {
521 fsl,data-mapping = "spwg";
522 fsl,data-width = <18>;
523 status = "okay";
524
525 display-timings {
526 native-mode = <&timing0>;
527 timing0: hsd100pxn1 {
528 clock-frequency = <65000000>;
529 hactive = <1024>;
530 vactive = <768>;
531 hback-porch = <220>;
532 hfront-porch = <40>;
533 vback-porch = <21>;
534 vfront-porch = <7>;
535 hsync-len = <60>;
536 vsync-len = <10>;
537 };
538 };
539 };
540};
541
542&pcie {
543 reset-gpio = <&gpio1 29 0>;
544 status = "okay";
545
546 eth1: sky2@8 { /* MAC/PHY on bus 8 */
547 compatible = "marvell,sky2";
548 };
549};
550
b3253241
TH
551&pwm4 {
552 pinctrl-names = "default";
553 pinctrl-0 = <&pinctrl_pwm4>;
554 status = "okay";
555};
556
e3946fe8
TH
557&ssi1 {
558 fsl,mode = "i2s-slave";
559 status = "okay";
560};
561
562&ssi2 {
563 fsl,mode = "i2s-slave";
564 status = "okay";
565};
566
567&uart1 {
568 pinctrl-names = "default";
569 pinctrl-0 = <&pinctrl_uart1>;
570 status = "okay";
571};
572
573&uart2 {
574 pinctrl-names = "default";
575 pinctrl-0 = <&pinctrl_uart2>;
576 status = "okay";
577};
578
579&uart5 {
580 pinctrl-names = "default";
581 pinctrl-0 = <&pinctrl_uart5>;
582 status = "okay";
583};
584
585&usbotg {
586 vbus-supply = <&reg_usb_otg_vbus>;
587 pinctrl-names = "default";
588 pinctrl-0 = <&pinctrl_usbotg>;
589 disable-over-current;
590 status = "okay";
591};
592
593&usbh1 {
594 vbus-supply = <&reg_usb_h1_vbus>;
595 status = "okay";
596};
597
598&usdhc3 {
599 pinctrl-names = "default";
600 pinctrl-0 = <&pinctrl_usdhc3>;
601 cd-gpios = <&gpio7 0 0>;
602 vmmc-supply = <&reg_3p3v>;
603 status = "okay";
604};