blob: 26a40782cc899bd0ebe74df0ca5f91f099dde72f [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001// SPDX-License-Identifier: GPL-2.0
Marek Vasutd2def432018-01-07 20:17:39 +01002/*
3 * Device Tree Source for the Koelsch board
4 *
5 * Copyright (C) 2013 Renesas Electronics Corporation
6 * Copyright (C) 2013-2014 Renesas Solutions Corp.
7 * Copyright (C) 2014 Cogent Embedded, Inc.
Marek Vasutd2def432018-01-07 20:17:39 +01008 */
9
10/*
11 * SSI-AK4643
12 *
13 * SW1: 1: AK4643
14 * 2: CN22
15 * 3: ADV7511
16 *
17 * This command is required when Playback/Capture
18 *
19 * amixer set "LINEOUT Mixer DACL" on
20 * amixer set "DVC Out" 100%
21 * amixer set "DVC In" 100%
22 *
23 * You can use Mute
24 *
25 * amixer set "DVC Out Mute" on
26 * amixer set "DVC In Mute" on
27 *
28 * You can use Volume Ramp
29 *
30 * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps"
31 * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps"
32 * amixer set "DVC Out Ramp" on
33 * aplay xxx.wav &
34 * amixer set "DVC Out" 80% // Volume Down
35 * amixer set "DVC Out" 100% // Volume Up
36 */
37
38/dts-v1/;
39#include "r8a7791.dtsi"
40#include <dt-bindings/gpio/gpio.h>
41#include <dt-bindings/input/input.h>
42
43/ {
44 model = "Koelsch";
45 compatible = "renesas,koelsch", "renesas,r8a7791";
46
47 aliases {
48 serial0 = &scif0;
49 serial1 = &scif1;
50 i2c9 = &gpioi2c1;
Marek Vasut047b1942018-06-06 19:58:17 +020051 i2c10 = &gpioi2c2;
52 i2c11 = &gpioi2c4;
Marek Vasutd2def432018-01-07 20:17:39 +010053 i2c12 = &i2cexio1;
Marek Vasut047b1942018-06-06 19:58:17 +020054 i2c13 = &i2chdmi;
55 i2c14 = &i2cexio4;
Marek Vasut2a8450f2023-01-26 21:01:32 +010056 mmc0 = &sdhi0;
57 mmc1 = &sdhi1;
58 mmc2 = &sdhi2;
Marek Vasutd2def432018-01-07 20:17:39 +010059 };
60
61 chosen {
Marek Vasutcd82e692020-04-04 15:21:26 +020062 bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
Marek Vasutd2def432018-01-07 20:17:39 +010063 stdout-path = "serial0:115200n8";
64 };
65
66 memory@40000000 {
67 device_type = "memory";
68 reg = <0 0x40000000 0 0x40000000>;
69 };
70
71 memory@200000000 {
72 device_type = "memory";
73 reg = <2 0x00000000 0 0x40000000>;
74 };
75
76 lbsc {
77 #address-cells = <1>;
78 #size-cells = <1>;
79 };
80
81 keyboard {
82 compatible = "gpio-keys";
83
Marek Vasut2a8450f2023-01-26 21:01:32 +010084 pinctrl-0 = <&keyboard_pins>;
85 pinctrl-names = "default";
86
Marek Vasutd2def432018-01-07 20:17:39 +010087 key-1 {
88 gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
89 linux,code = <KEY_1>;
90 label = "SW2-1";
91 wakeup-source;
92 debounce-interval = <20>;
93 };
94 key-2 {
95 gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
96 linux,code = <KEY_2>;
97 label = "SW2-2";
98 wakeup-source;
99 debounce-interval = <20>;
100 };
101 key-3 {
102 gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
103 linux,code = <KEY_3>;
104 label = "SW2-3";
105 wakeup-source;
106 debounce-interval = <20>;
107 };
108 key-4 {
109 gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
110 linux,code = <KEY_4>;
111 label = "SW2-4";
112 wakeup-source;
113 debounce-interval = <20>;
114 };
115 key-a {
116 gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
117 linux,code = <KEY_A>;
118 label = "SW30";
119 wakeup-source;
120 debounce-interval = <20>;
121 };
122 key-b {
123 gpios = <&gpio7 1 GPIO_ACTIVE_LOW>;
124 linux,code = <KEY_B>;
125 label = "SW31";
126 wakeup-source;
127 debounce-interval = <20>;
128 };
129 key-c {
130 gpios = <&gpio7 2 GPIO_ACTIVE_LOW>;
131 linux,code = <KEY_C>;
132 label = "SW32";
133 wakeup-source;
134 debounce-interval = <20>;
135 };
136 key-d {
137 gpios = <&gpio7 3 GPIO_ACTIVE_LOW>;
138 linux,code = <KEY_D>;
139 label = "SW33";
140 wakeup-source;
141 debounce-interval = <20>;
142 };
143 key-e {
144 gpios = <&gpio7 4 GPIO_ACTIVE_LOW>;
145 linux,code = <KEY_E>;
146 label = "SW34";
147 wakeup-source;
148 debounce-interval = <20>;
149 };
150 key-f {
151 gpios = <&gpio7 5 GPIO_ACTIVE_LOW>;
152 linux,code = <KEY_F>;
153 label = "SW35";
154 wakeup-source;
155 debounce-interval = <20>;
156 };
157 key-g {
158 gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
159 linux,code = <KEY_G>;
160 label = "SW36";
161 wakeup-source;
162 debounce-interval = <20>;
163 };
164 };
165
166 leds {
167 compatible = "gpio-leds";
168 led6 {
169 gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
170 label = "LED6";
171 };
172 led7 {
173 gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>;
174 label = "LED7";
175 };
176 led8 {
177 gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
178 label = "LED8";
179 };
180 };
181
182 vcc_sdhi0: regulator-vcc-sdhi0 {
183 compatible = "regulator-fixed";
184
185 regulator-name = "SDHI0 Vcc";
186 regulator-min-microvolt = <3300000>;
187 regulator-max-microvolt = <3300000>;
188
189 gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>;
190 enable-active-high;
191 };
192
193 vccq_sdhi0: regulator-vccq-sdhi0 {
194 compatible = "regulator-gpio";
195
196 regulator-name = "SDHI0 VccQ";
197 regulator-min-microvolt = <1800000>;
198 regulator-max-microvolt = <3300000>;
199
200 gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
201 gpios-states = <1>;
Marek Vasutcd82e692020-04-04 15:21:26 +0200202 states = <3300000 1>, <1800000 0>;
Marek Vasutd2def432018-01-07 20:17:39 +0100203 };
204
205 vcc_sdhi1: regulator-vcc-sdhi1 {
206 compatible = "regulator-fixed";
207
208 regulator-name = "SDHI1 Vcc";
209 regulator-min-microvolt = <3300000>;
210 regulator-max-microvolt = <3300000>;
211
212 gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>;
213 enable-active-high;
214 };
215
216 vccq_sdhi1: regulator-vccq-sdhi1 {
217 compatible = "regulator-gpio";
218
219 regulator-name = "SDHI1 VccQ";
220 regulator-min-microvolt = <1800000>;
221 regulator-max-microvolt = <3300000>;
222
223 gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
224 gpios-states = <1>;
Marek Vasutcd82e692020-04-04 15:21:26 +0200225 states = <3300000 1>, <1800000 0>;
Marek Vasutd2def432018-01-07 20:17:39 +0100226 };
227
228 vcc_sdhi2: regulator-vcc-sdhi2 {
229 compatible = "regulator-fixed";
230
231 regulator-name = "SDHI2 Vcc";
232 regulator-min-microvolt = <3300000>;
233 regulator-max-microvolt = <3300000>;
234
235 gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>;
236 enable-active-high;
237 };
238
239 vccq_sdhi2: regulator-vccq-sdhi2 {
240 compatible = "regulator-gpio";
241
242 regulator-name = "SDHI2 VccQ";
243 regulator-min-microvolt = <1800000>;
244 regulator-max-microvolt = <3300000>;
245
246 gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
247 gpios-states = <1>;
Marek Vasutcd82e692020-04-04 15:21:26 +0200248 states = <3300000 1>, <1800000 0>;
Marek Vasutd2def432018-01-07 20:17:39 +0100249 };
250
251 audio_clock: audio_clock {
252 compatible = "fixed-clock";
253 #clock-cells = <0>;
254 clock-frequency = <11289600>;
255 };
256
257 rsnd_ak4643: sound {
258 compatible = "simple-audio-card";
259
260 simple-audio-card,format = "left_j";
261 simple-audio-card,bitclock-master = <&sndcodec>;
262 simple-audio-card,frame-master = <&sndcodec>;
263
264 sndcpu: simple-audio-card,cpu {
265 sound-dai = <&rcar_sound>;
266 };
267
268 sndcodec: simple-audio-card,codec {
269 sound-dai = <&ak4643>;
270 clocks = <&audio_clock>;
271 };
272 };
273
274 hdmi-in {
275 compatible = "hdmi-connector";
276 type = "a";
277
278 port {
279 hdmi_con_in: endpoint {
280 remote-endpoint = <&adv7612_in>;
281 };
282 };
283 };
284
Marek Vasut047b1942018-06-06 19:58:17 +0200285 cec_clock: cec-clock {
286 compatible = "fixed-clock";
287 #clock-cells = <0>;
288 clock-frequency = <12000000>;
289 };
290
Marek Vasutd2def432018-01-07 20:17:39 +0100291 hdmi-out {
292 compatible = "hdmi-connector";
293 type = "a";
294
295 port {
296 hdmi_con_out: endpoint {
297 remote-endpoint = <&adv7511_out>;
298 };
299 };
300 };
301
302 x2_clk: x2-clock {
303 compatible = "fixed-clock";
304 #clock-cells = <0>;
305 clock-frequency = <74250000>;
306 };
307
308 x13_clk: x13-clock {
309 compatible = "fixed-clock";
310 #clock-cells = <0>;
311 clock-frequency = <148500000>;
312 };
313
314 gpioi2c1: i2c-9 {
315 #address-cells = <1>;
316 #size-cells = <0>;
317 compatible = "i2c-gpio";
318 status = "disabled";
Marek Vasut047b1942018-06-06 19:58:17 +0200319 scl-gpios = <&gpio7 15 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
320 sda-gpios = <&gpio7 16 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
321 i2c-gpio,delay-us = <5>;
322 };
323
324 gpioi2c2: i2c-10 {
325 #address-cells = <1>;
326 #size-cells = <0>;
327 compatible = "i2c-gpio";
328 status = "disabled";
329 scl-gpios = <&gpio2 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
330 sda-gpios = <&gpio2 7 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
331 i2c-gpio,delay-us = <5>;
332 };
333
334 gpioi2c4: i2c-11 {
335 #address-cells = <1>;
336 #size-cells = <0>;
337 compatible = "i2c-gpio";
338 status = "disabled";
339 scl-gpios = <&gpio7 13 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
340 sda-gpios = <&gpio7 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
Marek Vasutd2def432018-01-07 20:17:39 +0100341 i2c-gpio,delay-us = <5>;
342 };
343
344 /*
345 * I2C1 is routed to EXIO connector B, pins 64 (SCL) + 66 (SDA).
346 * A fallback to GPIO is provided.
347 */
348 i2cexio1: i2c-12 {
349 compatible = "i2c-demux-pinctrl";
350 i2c-parent = <&i2c1>, <&gpioi2c1>;
351 i2c-bus-name = "i2c-exio1";
352 #address-cells = <1>;
353 #size-cells = <0>;
354 };
Marek Vasut047b1942018-06-06 19:58:17 +0200355
356 /*
357 * A fallback to GPIO is provided for I2C2.
358 */
359 i2chdmi: i2c-13 {
360 compatible = "i2c-demux-pinctrl";
361 i2c-parent = <&i2c2>, <&gpioi2c2>;
362 i2c-bus-name = "i2c-hdmi";
363 #address-cells = <1>;
364 #size-cells = <0>;
365
366 ak4643: codec@12 {
367 compatible = "asahi-kasei,ak4643";
368 #sound-dai-cells = <0>;
369 reg = <0x12>;
370 };
371
372 composite-in@20 {
373 compatible = "adi,adv7180";
374 reg = <0x20>;
Marek Vasut047b1942018-06-06 19:58:17 +0200375
376 port {
377 adv7180: endpoint {
378 bus-width = <8>;
379 remote-endpoint = <&vin1ep>;
380 };
381 };
382 };
383
384 hdmi@39 {
385 compatible = "adi,adv7511w";
386 reg = <0x39>;
387 interrupt-parent = <&gpio3>;
388 interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
389 clocks = <&cec_clock>;
390 clock-names = "cec";
391
392 adi,input-depth = <8>;
393 adi,input-colorspace = "rgb";
394 adi,input-clock = "1x";
Marek Vasut047b1942018-06-06 19:58:17 +0200395
396 ports {
397 #address-cells = <1>;
398 #size-cells = <0>;
399
400 port@0 {
401 reg = <0>;
402 adv7511_in: endpoint {
403 remote-endpoint = <&du_out_rgb>;
404 };
405 };
406
407 port@1 {
408 reg = <1>;
409 adv7511_out: endpoint {
410 remote-endpoint = <&hdmi_con_out>;
411 };
412 };
413 };
414 };
415
416 hdmi-in@4c {
417 compatible = "adi,adv7612";
418 reg = <0x4c>;
419 interrupt-parent = <&gpio4>;
420 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
421 default-input = <0>;
422
423 ports {
424 #address-cells = <1>;
425 #size-cells = <0>;
426
427 port@0 {
428 reg = <0>;
429 adv7612_in: endpoint {
430 remote-endpoint = <&hdmi_con_in>;
431 };
432 };
433
434 port@2 {
435 reg = <2>;
436 adv7612_out: endpoint {
437 remote-endpoint = <&vin0ep2>;
438 };
439 };
440 };
441 };
442
443 eeprom@50 {
444 compatible = "renesas,r1ex24002", "atmel,24c02";
445 reg = <0x50>;
446 pagesize = <16>;
447 };
448 };
449
450 /*
451 * I2C4 is routed to EXIO connector E, pins 37 (SCL) + 39 (SDA).
452 * A fallback to GPIO is provided.
453 */
454 i2cexio4: i2c-14 {
455 compatible = "i2c-demux-pinctrl";
456 i2c-parent = <&i2c4>, <&gpioi2c4>;
457 i2c-bus-name = "i2c-exio4";
458 #address-cells = <1>;
459 #size-cells = <0>;
460 };
Marek Vasutd2def432018-01-07 20:17:39 +0100461};
462
463&du {
464 pinctrl-0 = <&du_pins>;
465 pinctrl-names = "default";
466 status = "okay";
467
Marek Vasut047b1942018-06-06 19:58:17 +0200468 clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>,
Marek Vasutd2def432018-01-07 20:17:39 +0100469 <&x13_clk>, <&x2_clk>;
Marek Vasut047b1942018-06-06 19:58:17 +0200470 clock-names = "du.0", "du.1", "dclkin.0", "dclkin.1";
Marek Vasutd2def432018-01-07 20:17:39 +0100471
472 ports {
473 port@0 {
474 endpoint {
475 remote-endpoint = <&adv7511_in>;
476 };
477 };
Marek Vasut047b1942018-06-06 19:58:17 +0200478 };
479};
480
481&lvds0 {
Marek Vasut047b1942018-06-06 19:58:17 +0200482 ports {
Marek Vasutd2def432018-01-07 20:17:39 +0100483 port@1 {
484 lvds_connector: endpoint {
485 };
486 };
487 };
488};
489
490&extal_clk {
491 clock-frequency = <20000000>;
492};
493
494&pfc {
495 pinctrl-0 = <&scif_clk_pins>;
496 pinctrl-names = "default";
497
498 i2c1_pins: i2c1 {
499 groups = "i2c1";
500 function = "i2c1";
501 };
502
503 i2c2_pins: i2c2 {
504 groups = "i2c2";
505 function = "i2c2";
506 };
507
Marek Vasut047b1942018-06-06 19:58:17 +0200508 i2c4_pins: i2c4 {
509 groups = "i2c4_c";
510 function = "i2c4";
511 };
512
Marek Vasutd2def432018-01-07 20:17:39 +0100513 du_pins: du {
514 groups = "du_rgb888", "du_sync", "du_disp", "du_clk_out_0";
515 function = "du";
516 };
517
518 scif0_pins: scif0 {
519 groups = "scif0_data_d";
520 function = "scif0";
521 };
522
523 scif1_pins: scif1 {
524 groups = "scif1_data_d";
525 function = "scif1";
526 };
527
528 scif_clk_pins: scif_clk {
529 groups = "scif_clk";
530 function = "scif_clk";
531 };
532
533 ether_pins: ether {
534 groups = "eth_link", "eth_mdio", "eth_rmii";
535 function = "eth";
536 };
537
538 phy1_pins: phy1 {
539 groups = "intc_irq0";
540 function = "intc";
541 };
542
Marek Vasutcd82e692020-04-04 15:21:26 +0200543 pmic_irq_pins: pmicirq {
544 groups = "intc_irq2";
545 function = "intc";
546 };
547
Marek Vasutd2def432018-01-07 20:17:39 +0100548 sdhi0_pins: sd0 {
549 groups = "sdhi0_data4", "sdhi0_ctrl";
550 function = "sdhi0";
551 power-source = <3300>;
552 };
553
554 sdhi0_pins_uhs: sd0_uhs {
555 groups = "sdhi0_data4", "sdhi0_ctrl";
556 function = "sdhi0";
557 power-source = <1800>;
558 };
559
560 sdhi1_pins: sd1 {
561 groups = "sdhi1_data4", "sdhi1_ctrl";
562 function = "sdhi1";
563 power-source = <3300>;
564 };
565
566 sdhi1_pins_uhs: sd1_uhs {
567 groups = "sdhi1_data4", "sdhi1_ctrl";
568 function = "sdhi1";
569 power-source = <1800>;
570 };
571
572 sdhi2_pins: sd2 {
573 groups = "sdhi2_data4", "sdhi2_ctrl";
574 function = "sdhi2";
575 power-source = <3300>;
576 };
577
578 sdhi2_pins_uhs: sd2_uhs {
579 groups = "sdhi2_data4", "sdhi2_ctrl";
580 function = "sdhi2";
581 power-source = <1800>;
582 };
583
584 qspi_pins: qspi {
585 groups = "qspi_ctrl", "qspi_data4";
586 function = "qspi";
587 };
588
589 msiof0_pins: msiof0 {
590 groups = "msiof0_clk", "msiof0_sync", "msiof0_rx",
591 "msiof0_tx";
592 function = "msiof0";
593 };
594
595 usb0_pins: usb0 {
596 groups = "usb0";
597 function = "usb0";
598 };
599
600 usb1_pins: usb1 {
601 groups = "usb1";
602 function = "usb1";
603 };
604
605 vin0_pins: vin0 {
606 groups = "vin0_data24", "vin0_sync", "vin0_clkenb", "vin0_clk";
607 function = "vin0";
608 };
609
610 vin1_pins: vin1 {
611 groups = "vin1_data8", "vin1_clk";
612 function = "vin1";
613 };
614
615 sound_pins: sound {
616 groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
617 function = "ssi";
618 };
619
620 sound_clk_pins: sound_clk {
621 groups = "audio_clk_a";
622 function = "audio_clk";
623 };
Marek Vasut2a8450f2023-01-26 21:01:32 +0100624
625 keyboard_pins: keyboard {
626 pins = "GP_5_0", "GP_5_1", "GP_5_2", "GP_5_3";
627 bias-pull-up;
628 };
Marek Vasutd2def432018-01-07 20:17:39 +0100629};
630
631&ether {
Marek Vasut2a8450f2023-01-26 21:01:32 +0100632 pinctrl-0 = <&ether_pins>, <&phy1_pins>;
Marek Vasutd2def432018-01-07 20:17:39 +0100633 pinctrl-names = "default";
634
635 phy-handle = <&phy1>;
636 renesas,ether-link-active-low;
637 status = "okay";
638
639 phy1: ethernet-phy@1 {
Marek Vasut2a8450f2023-01-26 21:01:32 +0100640 compatible = "ethernet-phy-id0022.1537",
641 "ethernet-phy-ieee802.3-c22";
Marek Vasutd2def432018-01-07 20:17:39 +0100642 reg = <1>;
643 interrupt-parent = <&irqc0>;
644 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
645 micrel,led-mode = <1>;
Marek Vasut2a8450f2023-01-26 21:01:32 +0100646 reset-gpios = <&gpio5 22 GPIO_ACTIVE_LOW>;
Marek Vasutd2def432018-01-07 20:17:39 +0100647 };
648};
649
650&cmt0 {
651 status = "okay";
652};
653
Marek Vasutcac46352018-12-03 21:39:48 +0100654&rwdt {
655 timeout-sec = <60>;
656 status = "okay";
657};
658
Marek Vasutd2def432018-01-07 20:17:39 +0100659&sata0 {
660 status = "okay";
661};
662
663&scif0 {
664 pinctrl-0 = <&scif0_pins>;
665 pinctrl-names = "default";
666
667 status = "okay";
668};
669
670&scif1 {
671 pinctrl-0 = <&scif1_pins>;
672 pinctrl-names = "default";
673
674 status = "okay";
675};
676
677&scif_clk {
678 clock-frequency = <14745600>;
679};
680
681&sdhi0 {
682 pinctrl-0 = <&sdhi0_pins>;
683 pinctrl-1 = <&sdhi0_pins_uhs>;
684 pinctrl-names = "default", "state_uhs";
685
686 vmmc-supply = <&vcc_sdhi0>;
687 vqmmc-supply = <&vccq_sdhi0>;
688 cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
689 wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
690 sd-uhs-sdr50;
691 sd-uhs-sdr104;
692 status = "okay";
693};
694
695&sdhi1 {
696 pinctrl-0 = <&sdhi1_pins>;
697 pinctrl-1 = <&sdhi1_pins_uhs>;
698 pinctrl-names = "default", "state_uhs";
699
700 vmmc-supply = <&vcc_sdhi1>;
701 vqmmc-supply = <&vccq_sdhi1>;
702 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
703 wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
704 sd-uhs-sdr50;
705 status = "okay";
706};
707
708&sdhi2 {
709 pinctrl-0 = <&sdhi2_pins>;
710 pinctrl-1 = <&sdhi2_pins_uhs>;
711 pinctrl-names = "default", "state_uhs";
712
713 vmmc-supply = <&vcc_sdhi2>;
714 vqmmc-supply = <&vccq_sdhi2>;
715 cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
716 sd-uhs-sdr50;
717 status = "okay";
718};
719
720&qspi {
721 pinctrl-0 = <&qspi_pins>;
722 pinctrl-names = "default";
723
724 status = "okay";
725
726 flash: flash@0 {
727 compatible = "spansion,s25fl512s", "jedec,spi-nor";
728 reg = <0>;
729 spi-max-frequency = <30000000>;
730 spi-tx-bus-width = <4>;
731 spi-rx-bus-width = <4>;
732 spi-cpha;
733 spi-cpol;
734 m25p,fast-read;
735
736 partitions {
737 compatible = "fixed-partitions";
738 #address-cells = <1>;
739 #size-cells = <1>;
740
741 partition@0 {
742 label = "loader";
743 reg = <0x00000000 0x00080000>;
744 read-only;
745 };
746 partition@80000 {
747 label = "user";
748 reg = <0x00080000 0x00580000>;
749 read-only;
750 };
751 partition@600000 {
752 label = "flash";
753 reg = <0x00600000 0x03a00000>;
754 };
755 };
756 };
757};
758
759&msiof0 {
760 pinctrl-0 = <&msiof0_pins>;
761 pinctrl-names = "default";
762
763 status = "okay";
764
765 pmic: pmic@0 {
766 compatible = "renesas,r2a11302ft";
767 reg = <0>;
768 spi-max-frequency = <6000000>;
769 spi-cpol;
770 spi-cpha;
771 };
772};
773
774&i2c1 {
775 pinctrl-0 = <&i2c1_pins>;
776 pinctrl-names = "i2c-exio1";
777};
778
779&i2c2 {
780 pinctrl-0 = <&i2c2_pins>;
Marek Vasut047b1942018-06-06 19:58:17 +0200781 pinctrl-names = "i2c-hdmi";
Marek Vasutd2def432018-01-07 20:17:39 +0100782
Marek Vasutd2def432018-01-07 20:17:39 +0100783 clock-frequency = <100000>;
Marek Vasut047b1942018-06-06 19:58:17 +0200784};
Marek Vasutd2def432018-01-07 20:17:39 +0100785
Marek Vasut047b1942018-06-06 19:58:17 +0200786&i2c4 {
787 pinctrl-0 = <&i2c4_pins>;
788 pinctrl-names = "i2c-exio4";
Marek Vasutd2def432018-01-07 20:17:39 +0100789};
790
791&i2c6 {
Marek Vasutcd82e692020-04-04 15:21:26 +0200792 pinctrl-names = "default";
793 pinctrl-0 = <&pmic_irq_pins>;
Marek Vasutd2def432018-01-07 20:17:39 +0100794 status = "okay";
795 clock-frequency = <100000>;
796
797 pmic@58 {
798 compatible = "dlg,da9063";
799 reg = <0x58>;
800 interrupt-parent = <&irqc0>;
801 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
802 interrupt-controller;
803
804 rtc {
805 compatible = "dlg,da9063-rtc";
806 };
807
Marek Vasut2a8450f2023-01-26 21:01:32 +0100808 watchdog {
Marek Vasutd2def432018-01-07 20:17:39 +0100809 compatible = "dlg,da9063-watchdog";
810 };
811 };
812
813 vdd_dvfs: regulator@68 {
814 compatible = "dlg,da9210";
815 reg = <0x68>;
816 interrupt-parent = <&irqc0>;
817 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
818
819 regulator-min-microvolt = <1000000>;
820 regulator-max-microvolt = <1000000>;
821 regulator-boot-on;
822 regulator-always-on;
823 };
824};
825
826&pci0 {
827 status = "okay";
828 pinctrl-0 = <&usb0_pins>;
829 pinctrl-names = "default";
830};
831
832&pci1 {
833 status = "okay";
834 pinctrl-0 = <&usb1_pins>;
835 pinctrl-names = "default";
836};
837
838&hsusb {
839 status = "okay";
840 pinctrl-0 = <&usb0_pins>;
841 pinctrl-names = "default";
842 renesas,enable-gpio = <&gpio5 31 GPIO_ACTIVE_HIGH>;
843};
844
845&usbphy {
846 status = "okay";
847};
848
849&pcie_bus_clk {
850 clock-frequency = <100000000>;
851};
852
853&pciec {
854 status = "okay";
855};
856
857&cpu0 {
858 cpu0-supply = <&vdd_dvfs>;
859};
860
861/* HDMI video input */
862&vin0 {
863 status = "okay";
864 pinctrl-0 = <&vin0_pins>;
865 pinctrl-names = "default";
866
867 port {
Marek Vasutd2def432018-01-07 20:17:39 +0100868 vin0ep2: endpoint {
869 remote-endpoint = <&adv7612_out>;
870 bus-width = <24>;
871 hsync-active = <0>;
872 vsync-active = <0>;
873 pclk-sample = <1>;
874 data-active = <1>;
875 };
876 };
877};
878
879/* composite video input */
880&vin1 {
881 status = "okay";
882 pinctrl-0 = <&vin1_pins>;
883 pinctrl-names = "default";
884
885 port {
Marek Vasutd2def432018-01-07 20:17:39 +0100886 vin1ep: endpoint {
887 remote-endpoint = <&adv7180>;
888 bus-width = <8>;
889 };
890 };
891};
892
893&rcar_sound {
Marek Vasut2a8450f2023-01-26 21:01:32 +0100894 pinctrl-0 = <&sound_pins>, <&sound_clk_pins>;
Marek Vasutd2def432018-01-07 20:17:39 +0100895 pinctrl-names = "default";
896
897 /* Single DAI */
898 #sound-dai-cells = <0>;
899
900 status = "okay";
901
902 rcar_sound,dai {
903 dai0 {
Marek Vasut2a8450f2023-01-26 21:01:32 +0100904 playback = <&ssi0>, <&src2>, <&dvc0>;
905 capture = <&ssi1>, <&src3>, <&dvc1>;
Marek Vasutd2def432018-01-07 20:17:39 +0100906 };
907 };
908};
909
910&ssi1 {
911 shared-pin;
912};