blob: 2dba1328acfaa9dd997f57f87a28cb59b8ce9bb9 [file] [log] [blame]
Marek Vasutcbff9f82018-12-03 21:43:05 +01001// SPDX-License-Identifier: GPL-2.0
Marek Vasut37a79082017-09-12 23:01:51 +02002/*
3 * Device Tree Source for common parts of Salvator-X board variants
4 *
5 * Copyright (C) 2015-2016 Renesas Electronics Corp.
Marek Vasut37a79082017-09-12 23:01:51 +02006 */
7
8/*
9 * SSI-AK4613
10 *
11 * This command is required when Playback/Capture
12 *
13 * amixer set "DVC Out" 100%
14 * amixer set "DVC In" 100%
15 *
16 * You can use Mute
17 *
18 * amixer set "DVC Out Mute" on
19 * amixer set "DVC In Mute" on
20 *
21 * You can use Volume Ramp
22 *
23 * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps"
24 * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps"
25 * amixer set "DVC Out Ramp" on
26 * aplay xxx.wav &
27 * amixer set "DVC Out" 80% // Volume Down
28 * amixer set "DVC Out" 100% // Volume Up
29 */
30
31#include <dt-bindings/gpio/gpio.h>
Eugeniu Rosca89c00f02019-07-09 18:27:13 +020032#include <dt-bindings/input/input.h>
Marek Vasut37a79082017-09-12 23:01:51 +020033
34/ {
35 aliases {
36 serial0 = &scif2;
Marek Vasutcbff9f82018-12-03 21:43:05 +010037 serial1 = &hscif1;
Marek Vasut37a79082017-09-12 23:01:51 +020038 ethernet0 = &avb;
39 };
40
41 chosen {
42 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
43 stdout-path = "serial0:115200n8";
44 };
45
46 audio_clkout: audio-clkout {
47 /*
48 * This is same as <&rcar_sound 0>
49 * but needed to avoid cs2000/rcar_sound probe dead-lock
50 */
51 compatible = "fixed-clock";
52 #clock-cells = <0>;
Marek Vasut2519a292018-06-06 20:03:30 +020053 clock-frequency = <12288000>;
Marek Vasut37a79082017-09-12 23:01:51 +020054 };
55
56 backlight: backlight {
57 compatible = "pwm-backlight";
58 pwms = <&pwm1 0 50000>;
59
60 brightness-levels = <256 128 64 16 8 4 0>;
61 default-brightness-level = <6>;
62
Marek Vasut62b2bb52017-11-29 04:27:36 +010063 power-supply = <&reg_12v>;
Marek Vasut37a79082017-09-12 23:01:51 +020064 enable-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
65 };
66
Marek Vasutcbff9f82018-12-03 21:43:05 +010067 cvbs-in {
68 compatible = "composite-video-connector";
69 label = "CVBS IN";
70
71 port {
72 cvbs_con: endpoint {
73 remote-endpoint = <&adv7482_ain7>;
74 };
75 };
76 };
77
78 hdmi-in {
79 compatible = "hdmi-connector";
80 label = "HDMI IN";
81 type = "a";
82
83 port {
84 hdmi_in_con: endpoint {
85 remote-endpoint = <&adv7482_hdmi>;
86 };
87 };
88 };
89
Eugeniu Rosca89c00f02019-07-09 18:27:13 +020090 keys {
91 compatible = "gpio-keys";
92
93 pinctrl-0 = <&keys_pins>;
94 pinctrl-names = "default";
95
96 key-1 {
97 gpios = <&gpio5 17 GPIO_ACTIVE_LOW>;
98 linux,code = <KEY_1>;
99 label = "SW4-1";
100 wakeup-source;
101 debounce-interval = <20>;
102 };
103 key-2 {
104 gpios = <&gpio5 20 GPIO_ACTIVE_LOW>;
105 linux,code = <KEY_2>;
106 label = "SW4-2";
107 wakeup-source;
108 debounce-interval = <20>;
109 };
110 key-3 {
111 gpios = <&gpio5 22 GPIO_ACTIVE_LOW>;
112 linux,code = <KEY_3>;
113 label = "SW4-3";
114 wakeup-source;
115 debounce-interval = <20>;
116 };
117 key-4 {
118 gpios = <&gpio5 23 GPIO_ACTIVE_LOW>;
119 linux,code = <KEY_4>;
120 label = "SW4-4";
121 wakeup-source;
122 debounce-interval = <20>;
123 };
124 key-a {
125 gpios = <&gpio6 11 GPIO_ACTIVE_LOW>;
126 linux,code = <KEY_A>;
127 label = "TSW0";
128 wakeup-source;
129 debounce-interval = <20>;
130 };
131 key-b {
132 gpios = <&gpio6 12 GPIO_ACTIVE_LOW>;
133 linux,code = <KEY_B>;
134 label = "TSW1";
135 wakeup-source;
136 debounce-interval = <20>;
137 };
138 key-c {
139 gpios = <&gpio6 13 GPIO_ACTIVE_LOW>;
140 linux,code = <KEY_C>;
141 label = "TSW2";
142 wakeup-source;
143 debounce-interval = <20>;
144 };
145 };
146
Marek Vasut37a79082017-09-12 23:01:51 +0200147 reg_1p8v: regulator0 {
148 compatible = "regulator-fixed";
149 regulator-name = "fixed-1.8V";
150 regulator-min-microvolt = <1800000>;
151 regulator-max-microvolt = <1800000>;
152 regulator-boot-on;
153 regulator-always-on;
154 };
155
156 reg_3p3v: regulator1 {
157 compatible = "regulator-fixed";
158 regulator-name = "fixed-3.3V";
159 regulator-min-microvolt = <3300000>;
160 regulator-max-microvolt = <3300000>;
161 regulator-boot-on;
162 regulator-always-on;
163 };
164
Marek Vasut62b2bb52017-11-29 04:27:36 +0100165 reg_12v: regulator2 {
166 compatible = "regulator-fixed";
167 regulator-name = "fixed-12V";
168 regulator-min-microvolt = <12000000>;
169 regulator-max-microvolt = <12000000>;
170 regulator-boot-on;
171 regulator-always-on;
172 };
173
Marek Vasutcbff9f82018-12-03 21:43:05 +0100174 sound_card: sound {
175 compatible = "audio-graph-card";
Marek Vasut37a79082017-09-12 23:01:51 +0200176
Marek Vasutcbff9f82018-12-03 21:43:05 +0100177 label = "rcar-sound";
Marek Vasut37a79082017-09-12 23:01:51 +0200178
Marek Vasutcbff9f82018-12-03 21:43:05 +0100179 dais = <&rsnd_port0>;
Marek Vasut37a79082017-09-12 23:01:51 +0200180 };
181
182 vbus0_usb2: regulator-vbus0-usb2 {
183 compatible = "regulator-fixed";
184
185 regulator-name = "USB20_VBUS0";
186 regulator-min-microvolt = <5000000>;
187 regulator-max-microvolt = <5000000>;
188
189 gpio = <&gpio6 16 GPIO_ACTIVE_HIGH>;
190 enable-active-high;
191 };
192
193 vcc_sdhi0: regulator-vcc-sdhi0 {
194 compatible = "regulator-fixed";
195
196 regulator-name = "SDHI0 Vcc";
197 regulator-min-microvolt = <3300000>;
198 regulator-max-microvolt = <3300000>;
199
200 gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>;
201 enable-active-high;
202 };
203
204 vccq_sdhi0: regulator-vccq-sdhi0 {
205 compatible = "regulator-gpio";
206
207 regulator-name = "SDHI0 VccQ";
208 regulator-min-microvolt = <1800000>;
209 regulator-max-microvolt = <3300000>;
210
211 gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;
212 gpios-states = <1>;
213 states = <3300000 1
214 1800000 0>;
215 };
216
217 vcc_sdhi3: regulator-vcc-sdhi3 {
218 compatible = "regulator-fixed";
219
220 regulator-name = "SDHI3 Vcc";
221 regulator-min-microvolt = <3300000>;
222 regulator-max-microvolt = <3300000>;
223
224 gpio = <&gpio3 15 GPIO_ACTIVE_HIGH>;
225 enable-active-high;
226 };
227
228 vccq_sdhi3: regulator-vccq-sdhi3 {
229 compatible = "regulator-gpio";
230
231 regulator-name = "SDHI3 VccQ";
232 regulator-min-microvolt = <1800000>;
233 regulator-max-microvolt = <3300000>;
234
235 gpios = <&gpio3 14 GPIO_ACTIVE_HIGH>;
236 gpios-states = <1>;
237 states = <3300000 1
238 1800000 0>;
239 };
240
241 hdmi0-out {
242 compatible = "hdmi-connector";
243 label = "HDMI0 OUT";
244 type = "a";
245
246 port {
247 hdmi0_con: endpoint {
248 };
249 };
250 };
251
252 hdmi1-out {
253 compatible = "hdmi-connector";
254 label = "HDMI1 OUT";
255 type = "a";
256
257 port {
258 hdmi1_con: endpoint {
259 };
260 };
261 };
262
263 vga {
264 compatible = "vga-connector";
265
266 port {
267 vga_in: endpoint {
268 remote-endpoint = <&adv7123_out>;
269 };
270 };
271 };
272
273 vga-encoder {
274 compatible = "adi,adv7123";
275
276 ports {
277 #address-cells = <1>;
278 #size-cells = <0>;
279
280 port@0 {
281 reg = <0>;
282 adv7123_in: endpoint {
283 remote-endpoint = <&du_out_rgb>;
284 };
285 };
286 port@1 {
287 reg = <1>;
288 adv7123_out: endpoint {
289 remote-endpoint = <&vga_in>;
290 };
291 };
292 };
293 };
294
295 x12_clk: x12 {
296 compatible = "fixed-clock";
297 #clock-cells = <0>;
298 clock-frequency = <24576000>;
299 };
300
301 /* External DU dot clocks */
302 x21_clk: x21-clock {
303 compatible = "fixed-clock";
304 #clock-cells = <0>;
305 clock-frequency = <33000000>;
306 };
307
308 x22_clk: x22-clock {
309 compatible = "fixed-clock";
310 #clock-cells = <0>;
311 clock-frequency = <33000000>;
312 };
313
314 x23_clk: x23-clock {
315 compatible = "fixed-clock";
316 #clock-cells = <0>;
317 clock-frequency = <25000000>;
318 };
319};
320
321&audio_clk_a {
322 clock-frequency = <22579200>;
323};
324
325&avb {
326 pinctrl-0 = <&avb_pins>;
327 pinctrl-names = "default";
Marek Vasut37a79082017-09-12 23:01:51 +0200328 phy-handle = <&phy0>;
Marek Vasut2519a292018-06-06 20:03:30 +0200329 phy-mode = "rgmii-txid";
Marek Vasut37a79082017-09-12 23:01:51 +0200330 status = "okay";
331
332 phy0: ethernet-phy@0 {
333 rxc-skew-ps = <1500>;
334 reg = <0>;
335 interrupt-parent = <&gpio2>;
336 interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
Marek Vasut2519a292018-06-06 20:03:30 +0200337 reset-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>;
Marek Vasut37a79082017-09-12 23:01:51 +0200338 };
339};
340
Marek Vasutcbff9f82018-12-03 21:43:05 +0100341&csi20 {
342 status = "okay";
343
344 ports {
345 port@0 {
346 reg = <0>;
347 csi20_in: endpoint {
348 clock-lanes = <0>;
349 data-lanes = <1>;
350 remote-endpoint = <&adv7482_txb>;
351 };
352 };
353 };
354};
355
356&csi40 {
357 status = "okay";
358
359 ports {
360 port@0 {
361 reg = <0>;
362
363 csi40_in: endpoint {
364 clock-lanes = <0>;
365 data-lanes = <1 2 3 4>;
366 remote-endpoint = <&adv7482_txa>;
367 };
368 };
369 };
370};
371
Marek Vasut37a79082017-09-12 23:01:51 +0200372&du {
373 pinctrl-0 = <&du_pins>;
374 pinctrl-names = "default";
375 status = "okay";
376
377 ports {
378 port@0 {
379 endpoint {
380 remote-endpoint = <&adv7123_in>;
381 };
382 };
Marek Vasut37a79082017-09-12 23:01:51 +0200383 };
384};
385
386&ehci0 {
Marek Vasut2519a292018-06-06 20:03:30 +0200387 dr_mode = "otg";
Marek Vasut37a79082017-09-12 23:01:51 +0200388 status = "okay";
389};
390
391&ehci1 {
392 status = "okay";
393};
394
395&extalr_clk {
396 clock-frequency = <32768>;
397};
398
Marek Vasutcbff9f82018-12-03 21:43:05 +0100399&hscif1 {
400 pinctrl-0 = <&hscif1_pins>;
401 pinctrl-names = "default";
402
403 uart-has-rtscts;
404 /* Please only enable hscif1 or scif1 */
405 status = "okay";
406};
407
Marek Vasut37a79082017-09-12 23:01:51 +0200408&hsusb {
Marek Vasut2519a292018-06-06 20:03:30 +0200409 dr_mode = "otg";
Marek Vasut37a79082017-09-12 23:01:51 +0200410 status = "okay";
411};
412
413&i2c2 {
414 pinctrl-0 = <&i2c2_pins>;
415 pinctrl-names = "default";
416
417 status = "okay";
418
419 clock-frequency = <100000>;
420
421 ak4613: codec@10 {
422 compatible = "asahi-kasei,ak4613";
423 #sound-dai-cells = <0>;
424 reg = <0x10>;
425 clocks = <&rcar_sound 3>;
426
427 asahi-kasei,in1-single-end;
428 asahi-kasei,in2-single-end;
429 asahi-kasei,out1-single-end;
430 asahi-kasei,out2-single-end;
431 asahi-kasei,out3-single-end;
432 asahi-kasei,out4-single-end;
433 asahi-kasei,out5-single-end;
434 asahi-kasei,out6-single-end;
Marek Vasutcbff9f82018-12-03 21:43:05 +0100435
436 port {
437 ak4613_endpoint: endpoint {
438 remote-endpoint = <&rsnd_endpoint0>;
439 };
440 };
Marek Vasut37a79082017-09-12 23:01:51 +0200441 };
442
443 cs2000: clk_multiplier@4f {
444 #clock-cells = <0>;
445 compatible = "cirrus,cs2000-cp";
446 reg = <0x4f>;
447 clocks = <&audio_clkout>, <&x12_clk>;
448 clock-names = "clk_in", "ref_clk";
449
450 assigned-clocks = <&cs2000>;
451 assigned-clock-rates = <24576000>; /* 1/1 divide */
452 };
453};
454
455&i2c4 {
456 status = "okay";
457
Marek Vasut2519a292018-06-06 20:03:30 +0200458 pca9654: gpio@20 {
459 compatible = "onnn,pca9654";
460 reg = <0x20>;
461 gpio-controller;
462 #gpio-cells = <2>;
463 };
464
Marek Vasut37a79082017-09-12 23:01:51 +0200465 csa_vdd: adc@7c {
466 compatible = "maxim,max9611";
467 reg = <0x7c>;
468
469 shunt-resistor-micro-ohms = <5000>;
470 };
471
472 csa_dvfs: adc@7f {
473 compatible = "maxim,max9611";
474 reg = <0x7f>;
475
476 shunt-resistor-micro-ohms = <5000>;
477 };
Marek Vasutcbff9f82018-12-03 21:43:05 +0100478
479 video-receiver@70 {
480 compatible = "adi,adv7482";
Marek Vasut317d13a2019-03-04 22:53:28 +0100481 reg = <0x70 0x71 0x72 0x73 0x74 0x75
482 0x60 0x61 0x62 0x63 0x64 0x65>;
483 reg-names = "main", "dpll", "cp", "hdmi", "edid", "repeater",
484 "infoframe", "cbus", "cec", "sdp", "txa", "txb" ;
Marek Vasutcbff9f82018-12-03 21:43:05 +0100485
486 #address-cells = <1>;
487 #size-cells = <0>;
488
489 interrupt-parent = <&gpio6>;
490 interrupt-names = "intrq1", "intrq2";
491 interrupts = <30 IRQ_TYPE_LEVEL_LOW>,
492 <31 IRQ_TYPE_LEVEL_LOW>;
493
494 port@7 {
495 reg = <7>;
496
497 adv7482_ain7: endpoint {
498 remote-endpoint = <&cvbs_con>;
499 };
500 };
501
502 port@8 {
503 reg = <8>;
504
505 adv7482_hdmi: endpoint {
506 remote-endpoint = <&hdmi_in_con>;
507 };
508 };
509
510 port@a {
511 reg = <10>;
512
513 adv7482_txa: endpoint {
514 clock-lanes = <0>;
515 data-lanes = <1 2 3 4>;
516 remote-endpoint = <&csi40_in>;
517 };
518 };
519
520 port@b {
521 reg = <11>;
522
523 adv7482_txb: endpoint {
524 clock-lanes = <0>;
525 data-lanes = <1>;
526 remote-endpoint = <&csi20_in>;
527 };
528 };
529 };
Marek Vasut37a79082017-09-12 23:01:51 +0200530};
531
532&i2c_dvfs {
533 status = "okay";
Marek Vasut2519a292018-06-06 20:03:30 +0200534
Marek Vasut317d13a2019-03-04 22:53:28 +0100535 clock-frequency = <400000>;
536
Marek Vasut2519a292018-06-06 20:03:30 +0200537 pmic: pmic@30 {
538 pinctrl-0 = <&irq0_pins>;
539 pinctrl-names = "default";
540
541 compatible = "rohm,bd9571mwv";
542 reg = <0x30>;
543 interrupt-parent = <&intc_ex>;
544 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
545 interrupt-controller;
546 #interrupt-cells = <2>;
547 gpio-controller;
548 #gpio-cells = <2>;
Marek Vasutcbff9f82018-12-03 21:43:05 +0100549 rohm,ddr-backup-power = <0xf>;
550 rohm,rstbmode-level;
Marek Vasut2519a292018-06-06 20:03:30 +0200551
552 regulators {
553 dvfs: dvfs {
554 regulator-name = "dvfs";
555 regulator-min-microvolt = <750000>;
556 regulator-max-microvolt = <1030000>;
557 regulator-boot-on;
558 regulator-always-on;
559 };
560 };
561 };
Marek Vasutcbff9f82018-12-03 21:43:05 +0100562
563 eeprom@50 {
564 compatible = "rohm,br24t01", "atmel,24c01";
565 reg = <0x50>;
566 pagesize = <8>;
567 };
Marek Vasut37a79082017-09-12 23:01:51 +0200568};
569
570&ohci0 {
Marek Vasut2519a292018-06-06 20:03:30 +0200571 dr_mode = "otg";
Marek Vasut37a79082017-09-12 23:01:51 +0200572 status = "okay";
573};
574
575&ohci1 {
576 status = "okay";
577};
578
579&pcie_bus_clk {
580 clock-frequency = <100000000>;
581};
582
583&pciec0 {
584 status = "okay";
585};
586
587&pciec1 {
588 status = "okay";
589};
590
591&pfc {
592 pinctrl-0 = <&scif_clk_pins>;
593 pinctrl-names = "default";
594
595 avb_pins: avb {
596 mux {
Marek Vasutcbff9f82018-12-03 21:43:05 +0100597 groups = "avb_link", "avb_mdio", "avb_mii";
Marek Vasut37a79082017-09-12 23:01:51 +0200598 function = "avb";
599 };
600
Marek Vasutcbff9f82018-12-03 21:43:05 +0100601 pins_mdio {
602 groups = "avb_mdio";
Marek Vasut37a79082017-09-12 23:01:51 +0200603 drive-strength = <24>;
604 };
605
606 pins_mii_tx {
607 pins = "PIN_AVB_TX_CTL", "PIN_AVB_TXC", "PIN_AVB_TD0",
608 "PIN_AVB_TD1", "PIN_AVB_TD2", "PIN_AVB_TD3";
609 drive-strength = <12>;
610 };
611 };
612
613 du_pins: du {
614 groups = "du_rgb888", "du_sync", "du_oddf", "du_clk_out_0";
615 function = "du";
616 };
617
Marek Vasutcbff9f82018-12-03 21:43:05 +0100618 hscif1_pins: hscif1 {
619 groups = "hscif1_data_a", "hscif1_ctrl_a";
620 function = "hscif1";
621 };
622
Marek Vasut37a79082017-09-12 23:01:51 +0200623 i2c2_pins: i2c2 {
624 groups = "i2c2_a";
625 function = "i2c2";
626 };
627
Marek Vasut2519a292018-06-06 20:03:30 +0200628 irq0_pins: irq0 {
629 groups = "intc_ex_irq0";
630 function = "intc_ex";
631 };
632
Eugeniu Rosca89c00f02019-07-09 18:27:13 +0200633 keys_pins: keys {
634 pins = "GP_5_17", "GP_5_20", "GP_5_22";
635 bias-pull-up;
636 };
637
Marek Vasut37a79082017-09-12 23:01:51 +0200638 pwm1_pins: pwm1 {
639 groups = "pwm1_a";
640 function = "pwm1";
641 };
642
643 scif1_pins: scif1 {
644 groups = "scif1_data_a", "scif1_ctrl";
645 function = "scif1";
646 };
647
648 scif2_pins: scif2 {
649 groups = "scif2_data_a";
650 function = "scif2";
651 };
652
653 scif_clk_pins: scif_clk {
654 groups = "scif_clk_a";
655 function = "scif_clk";
656 };
657
658 sdhi0_pins: sd0 {
659 groups = "sdhi0_data4", "sdhi0_ctrl";
660 function = "sdhi0";
661 power-source = <3300>;
662 };
663
664 sdhi0_pins_uhs: sd0_uhs {
665 groups = "sdhi0_data4", "sdhi0_ctrl";
666 function = "sdhi0";
667 power-source = <1800>;
668 };
669
670 sdhi2_pins: sd2 {
Marek Vasutcbff9f82018-12-03 21:43:05 +0100671 groups = "sdhi2_data8", "sdhi2_ctrl", "sdhi2_ds";
Marek Vasut37a79082017-09-12 23:01:51 +0200672 function = "sdhi2";
Marek Vasut37a79082017-09-12 23:01:51 +0200673 power-source = <1800>;
674 };
675
676 sdhi3_pins: sd3 {
677 groups = "sdhi3_data4", "sdhi3_ctrl";
678 function = "sdhi3";
679 power-source = <3300>;
680 };
681
682 sdhi3_pins_uhs: sd3_uhs {
683 groups = "sdhi3_data4", "sdhi3_ctrl";
684 function = "sdhi3";
685 power-source = <1800>;
686 };
687
688 sound_pins: sound {
689 groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a";
690 function = "ssi";
691 };
692
693 sound_clk_pins: sound_clk {
694 groups = "audio_clk_a_a", "audio_clk_b_a", "audio_clk_c_a",
695 "audio_clkout_a", "audio_clkout3_a";
696 function = "audio_clk";
697 };
698
699 usb0_pins: usb0 {
700 groups = "usb0";
701 function = "usb0";
702 };
703
704 usb1_pins: usb1 {
705 mux {
706 groups = "usb1";
707 function = "usb1";
708 };
709
710 ovc {
711 pins = "GP_6_27";
712 bias-pull-up;
713 };
714
715 pwen {
716 pins = "GP_6_26";
717 bias-pull-down;
718 };
719 };
Marek Vasut2519a292018-06-06 20:03:30 +0200720
721 usb30_pins: usb30 {
722 groups = "usb30";
723 function = "usb30";
724 };
Marek Vasut37a79082017-09-12 23:01:51 +0200725};
726
727&pwm1 {
728 pinctrl-0 = <&pwm1_pins>;
729 pinctrl-names = "default";
730
731 status = "okay";
732};
733
734&rcar_sound {
735 pinctrl-0 = <&sound_pins &sound_clk_pins>;
736 pinctrl-names = "default";
737
738 /* Single DAI */
739 #sound-dai-cells = <0>;
740
741 /* audio_clkout0/1/2/3 */
742 #clock-cells = <1>;
743 clock-frequency = <12288000 11289600>;
744
745 status = "okay";
746
747 /* update <audio_clk_b> to <cs2000> */
748 clocks = <&cpg CPG_MOD 1005>,
749 <&cpg CPG_MOD 1006>, <&cpg CPG_MOD 1007>,
750 <&cpg CPG_MOD 1008>, <&cpg CPG_MOD 1009>,
751 <&cpg CPG_MOD 1010>, <&cpg CPG_MOD 1011>,
752 <&cpg CPG_MOD 1012>, <&cpg CPG_MOD 1013>,
753 <&cpg CPG_MOD 1014>, <&cpg CPG_MOD 1015>,
754 <&cpg CPG_MOD 1022>, <&cpg CPG_MOD 1023>,
755 <&cpg CPG_MOD 1024>, <&cpg CPG_MOD 1025>,
756 <&cpg CPG_MOD 1026>, <&cpg CPG_MOD 1027>,
757 <&cpg CPG_MOD 1028>, <&cpg CPG_MOD 1029>,
758 <&cpg CPG_MOD 1030>, <&cpg CPG_MOD 1031>,
759 <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>,
760 <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>,
761 <&cpg CPG_MOD 1019>, <&cpg CPG_MOD 1018>,
762 <&audio_clk_a>, <&cs2000>,
763 <&audio_clk_c>,
764 <&cpg CPG_CORE CPG_AUDIO_CLK_I>;
765
Marek Vasutcbff9f82018-12-03 21:43:05 +0100766 ports {
Marek Vasut317d13a2019-03-04 22:53:28 +0100767 #address-cells = <1>;
768 #size-cells = <0>;
Marek Vasutcbff9f82018-12-03 21:43:05 +0100769 rsnd_port0: port@0 {
Marek Vasut317d13a2019-03-04 22:53:28 +0100770 reg = <0>;
Marek Vasutcbff9f82018-12-03 21:43:05 +0100771 rsnd_endpoint0: endpoint {
772 remote-endpoint = <&ak4613_endpoint>;
773
774 dai-format = "left_j";
775 bitclock-master = <&rsnd_endpoint0>;
776 frame-master = <&rsnd_endpoint0>;
777
778 playback = <&ssi0 &src0 &dvc0>;
779 capture = <&ssi1 &src1 &dvc1>;
780 };
Marek Vasut37a79082017-09-12 23:01:51 +0200781 };
782 };
783};
784
Eugeniu Rosca89c00f02019-07-09 18:27:13 +0200785&rwdt {
786 timeout-sec = <60>;
787 status = "okay";
788};
789
Marek Vasut37a79082017-09-12 23:01:51 +0200790&scif1 {
791 pinctrl-0 = <&scif1_pins>;
792 pinctrl-names = "default";
793
794 uart-has-rtscts;
Marek Vasutcbff9f82018-12-03 21:43:05 +0100795 /* Please only enable hscif1 or scif1 */
796 /* status = "okay"; */
Marek Vasut37a79082017-09-12 23:01:51 +0200797};
798
799&scif2 {
800 pinctrl-0 = <&scif2_pins>;
801 pinctrl-names = "default";
802
803 status = "okay";
804};
805
806&scif_clk {
807 clock-frequency = <14745600>;
808};
809
810&sdhi0 {
811 pinctrl-0 = <&sdhi0_pins>;
812 pinctrl-1 = <&sdhi0_pins_uhs>;
813 pinctrl-names = "default", "state_uhs";
814
815 vmmc-supply = <&vcc_sdhi0>;
816 vqmmc-supply = <&vccq_sdhi0>;
817 cd-gpios = <&gpio3 12 GPIO_ACTIVE_LOW>;
818 wp-gpios = <&gpio3 13 GPIO_ACTIVE_HIGH>;
819 bus-width = <4>;
820 sd-uhs-sdr50;
Marek Vasut317d13a2019-03-04 22:53:28 +0100821 sd-uhs-sdr104;
Marek Vasut37a79082017-09-12 23:01:51 +0200822 status = "okay";
823};
824
825&sdhi2 {
826 /* used for on-board 8bit eMMC */
827 pinctrl-0 = <&sdhi2_pins>;
Marek Vasut317d13a2019-03-04 22:53:28 +0100828 pinctrl-1 = <&sdhi2_pins>;
Marek Vasut37a79082017-09-12 23:01:51 +0200829 pinctrl-names = "default", "state_uhs";
830
831 vmmc-supply = <&reg_3p3v>;
832 vqmmc-supply = <&reg_1p8v>;
833 bus-width = <8>;
834 mmc-hs200-1_8v;
Marek Vasut317d13a2019-03-04 22:53:28 +0100835 mmc-hs400-1_8v;
Marek Vasut37a79082017-09-12 23:01:51 +0200836 non-removable;
Marek Vasut2519a292018-06-06 20:03:30 +0200837 fixed-emmc-driver-type = <1>;
Marek Vasut37a79082017-09-12 23:01:51 +0200838 status = "okay";
839};
840
841&sdhi3 {
842 pinctrl-0 = <&sdhi3_pins>;
843 pinctrl-1 = <&sdhi3_pins_uhs>;
844 pinctrl-names = "default", "state_uhs";
845
846 vmmc-supply = <&vcc_sdhi3>;
847 vqmmc-supply = <&vccq_sdhi3>;
848 cd-gpios = <&gpio4 15 GPIO_ACTIVE_LOW>;
849 wp-gpios = <&gpio4 16 GPIO_ACTIVE_HIGH>;
850 bus-width = <4>;
851 sd-uhs-sdr50;
Marek Vasut317d13a2019-03-04 22:53:28 +0100852 sd-uhs-sdr104;
Marek Vasut37a79082017-09-12 23:01:51 +0200853 status = "okay";
Marek Vasut37a79082017-09-12 23:01:51 +0200854};
855
856&ssi1 {
857 shared-pin;
858};
859
Marek Vasut2519a292018-06-06 20:03:30 +0200860&usb_extal_clk {
861 clock-frequency = <50000000>;
862};
863
Marek Vasut37a79082017-09-12 23:01:51 +0200864&usb2_phy0 {
865 pinctrl-0 = <&usb0_pins>;
866 pinctrl-names = "default";
867
868 vbus-supply = <&vbus0_usb2>;
869 status = "okay";
870};
871
872&usb2_phy1 {
873 pinctrl-0 = <&usb1_pins>;
874 pinctrl-names = "default";
875
876 status = "okay";
877};
878
Marek Vasut2519a292018-06-06 20:03:30 +0200879&usb3_peri0 {
880 phys = <&usb3_phy0>;
881 phy-names = "usb";
882
Marek Vasut317d13a2019-03-04 22:53:28 +0100883 companion = <&xhci0>;
884
Marek Vasut2519a292018-06-06 20:03:30 +0200885 status = "okay";
886};
887
888&usb3_phy0 {
889 status = "okay";
890};
891
892&usb3s0_clk {
893 clock-frequency = <100000000>;
894};
895
Marek Vasutcbff9f82018-12-03 21:43:05 +0100896&vin0 {
897 status = "okay";
898};
899
900&vin1 {
901 status = "okay";
902};
903
904&vin2 {
905 status = "okay";
906};
907
908&vin3 {
909 status = "okay";
910};
911
912&vin4 {
913 status = "okay";
914};
915
916&vin5 {
917 status = "okay";
918};
919
920&vin6 {
921 status = "okay";
922};
923
924&vin7 {
925 status = "okay";
926};
927
Marek Vasut37a79082017-09-12 23:01:51 +0200928&xhci0 {
Marek Vasut2519a292018-06-06 20:03:30 +0200929 pinctrl-0 = <&usb30_pins>;
930 pinctrl-names = "default";
931
Marek Vasut37a79082017-09-12 23:01:51 +0200932 status = "okay";
933};