1 // SPDX-License-Identifier: GPL-2.0
3 * Device Tree Source for the Koelsch board
5 * Copyright (C) 2013 Renesas Electronics Corporation
6 * Copyright (C) 2013-2014 Renesas Solutions Corp.
7 * Copyright (C) 2014 Cogent Embedded, Inc.
17 * This command is required when Playback/Capture
19 * amixer set "LINEOUT Mixer DACL" on
20 * amixer set "DVC Out" 100%
21 * amixer set "DVC In" 100%
25 * amixer set "DVC Out Mute" on
26 * amixer set "DVC In Mute" on
28 * You can use Volume Ramp
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
34 * amixer set "DVC Out" 80% // Volume Down
35 * amixer set "DVC Out" 100% // Volume Up
39 #include "r8a7791.dtsi"
40 #include <dt-bindings/gpio/gpio.h>
41 #include <dt-bindings/input/input.h>
45 compatible = "renesas,koelsch", "renesas,r8a7791";
55 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
56 stdout-path = "serial0:115200n8";
60 device_type = "memory";
61 reg = <0 0x40000000 0 0x40000000>;
65 device_type = "memory";
66 reg = <2 0x00000000 0 0x40000000>;
75 compatible = "gpio-keys";
78 gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
82 debounce-interval = <20>;
85 gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
89 debounce-interval = <20>;
92 gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
96 debounce-interval = <20>;
99 gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
100 linux,code = <KEY_4>;
103 debounce-interval = <20>;
106 gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
107 linux,code = <KEY_A>;
110 debounce-interval = <20>;
113 gpios = <&gpio7 1 GPIO_ACTIVE_LOW>;
114 linux,code = <KEY_B>;
117 debounce-interval = <20>;
120 gpios = <&gpio7 2 GPIO_ACTIVE_LOW>;
121 linux,code = <KEY_C>;
124 debounce-interval = <20>;
127 gpios = <&gpio7 3 GPIO_ACTIVE_LOW>;
128 linux,code = <KEY_D>;
131 debounce-interval = <20>;
134 gpios = <&gpio7 4 GPIO_ACTIVE_LOW>;
135 linux,code = <KEY_E>;
138 debounce-interval = <20>;
141 gpios = <&gpio7 5 GPIO_ACTIVE_LOW>;
142 linux,code = <KEY_F>;
145 debounce-interval = <20>;
148 gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
149 linux,code = <KEY_G>;
152 debounce-interval = <20>;
157 compatible = "gpio-leds";
159 gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
163 gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>;
167 gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
172 vcc_sdhi0: regulator-vcc-sdhi0 {
173 compatible = "regulator-fixed";
175 regulator-name = "SDHI0 Vcc";
176 regulator-min-microvolt = <3300000>;
177 regulator-max-microvolt = <3300000>;
179 gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>;
183 vccq_sdhi0: regulator-vccq-sdhi0 {
184 compatible = "regulator-gpio";
186 regulator-name = "SDHI0 VccQ";
187 regulator-min-microvolt = <1800000>;
188 regulator-max-microvolt = <3300000>;
190 gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
196 vcc_sdhi1: regulator-vcc-sdhi1 {
197 compatible = "regulator-fixed";
199 regulator-name = "SDHI1 Vcc";
200 regulator-min-microvolt = <3300000>;
201 regulator-max-microvolt = <3300000>;
203 gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>;
207 vccq_sdhi1: regulator-vccq-sdhi1 {
208 compatible = "regulator-gpio";
210 regulator-name = "SDHI1 VccQ";
211 regulator-min-microvolt = <1800000>;
212 regulator-max-microvolt = <3300000>;
214 gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
220 vcc_sdhi2: regulator-vcc-sdhi2 {
221 compatible = "regulator-fixed";
223 regulator-name = "SDHI2 Vcc";
224 regulator-min-microvolt = <3300000>;
225 regulator-max-microvolt = <3300000>;
227 gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>;
231 vccq_sdhi2: regulator-vccq-sdhi2 {
232 compatible = "regulator-gpio";
234 regulator-name = "SDHI2 VccQ";
235 regulator-min-microvolt = <1800000>;
236 regulator-max-microvolt = <3300000>;
238 gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
244 audio_clock: audio_clock {
245 compatible = "fixed-clock";
247 clock-frequency = <11289600>;
251 compatible = "simple-audio-card";
253 simple-audio-card,format = "left_j";
254 simple-audio-card,bitclock-master = <&sndcodec>;
255 simple-audio-card,frame-master = <&sndcodec>;
257 sndcpu: simple-audio-card,cpu {
258 sound-dai = <&rcar_sound>;
261 sndcodec: simple-audio-card,codec {
262 sound-dai = <&ak4643>;
263 clocks = <&audio_clock>;
268 compatible = "hdmi-connector";
272 hdmi_con_in: endpoint {
273 remote-endpoint = <&adv7612_in>;
279 compatible = "hdmi-connector";
283 hdmi_con_out: endpoint {
284 remote-endpoint = <&adv7511_out>;
290 compatible = "fixed-clock";
292 clock-frequency = <74250000>;
296 compatible = "fixed-clock";
298 clock-frequency = <148500000>;
302 #address-cells = <1>;
304 compatible = "i2c-gpio";
306 gpios = <&gpio7 16 GPIO_ACTIVE_HIGH /* sda */
307 &gpio7 15 GPIO_ACTIVE_HIGH /* scl */
309 i2c-gpio,delay-us = <5>;
313 * I2C1 is routed to EXIO connector B, pins 64 (SCL) + 66 (SDA).
314 * A fallback to GPIO is provided.
317 compatible = "i2c-demux-pinctrl";
318 i2c-parent = <&i2c1>, <&gpioi2c1>;
319 i2c-bus-name = "i2c-exio1";
320 #address-cells = <1>;
326 pinctrl-0 = <&du_pins>;
327 pinctrl-names = "default";
330 clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>, <&cpg CPG_MOD 726>,
331 <&x13_clk>, <&x2_clk>;
332 clock-names = "du.0", "du.1", "lvds.0",
333 "dclkin.0", "dclkin.1";
338 remote-endpoint = <&adv7511_in>;
342 lvds_connector: endpoint {
349 clock-frequency = <20000000>;
353 pinctrl-0 = <&scif_clk_pins>;
354 pinctrl-names = "default";
367 groups = "du_rgb888", "du_sync", "du_disp", "du_clk_out_0";
372 groups = "scif0_data_d";
377 groups = "scif1_data_d";
381 scif_clk_pins: scif_clk {
383 function = "scif_clk";
387 groups = "eth_link", "eth_mdio", "eth_rmii";
392 groups = "intc_irq0";
397 groups = "sdhi0_data4", "sdhi0_ctrl";
399 power-source = <3300>;
402 sdhi0_pins_uhs: sd0_uhs {
403 groups = "sdhi0_data4", "sdhi0_ctrl";
405 power-source = <1800>;
409 groups = "sdhi1_data4", "sdhi1_ctrl";
411 power-source = <3300>;
414 sdhi1_pins_uhs: sd1_uhs {
415 groups = "sdhi1_data4", "sdhi1_ctrl";
417 power-source = <1800>;
421 groups = "sdhi2_data4", "sdhi2_ctrl";
423 power-source = <3300>;
426 sdhi2_pins_uhs: sd2_uhs {
427 groups = "sdhi2_data4", "sdhi2_ctrl";
429 power-source = <1800>;
433 groups = "qspi_ctrl", "qspi_data4";
437 msiof0_pins: msiof0 {
438 groups = "msiof0_clk", "msiof0_sync", "msiof0_rx",
454 groups = "vin0_data24", "vin0_sync", "vin0_clkenb", "vin0_clk";
459 groups = "vin1_data8", "vin1_clk";
464 groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
468 sound_clk_pins: sound_clk {
469 groups = "audio_clk_a";
470 function = "audio_clk";
475 pinctrl-0 = <ðer_pins &phy1_pins>;
476 pinctrl-names = "default";
478 phy-handle = <&phy1>;
479 renesas,ether-link-active-low;
482 phy1: ethernet-phy@1 {
484 interrupt-parent = <&irqc0>;
485 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
486 micrel,led-mode = <1>;
499 pinctrl-0 = <&scif0_pins>;
500 pinctrl-names = "default";
506 pinctrl-0 = <&scif1_pins>;
507 pinctrl-names = "default";
513 clock-frequency = <14745600>;
517 pinctrl-0 = <&sdhi0_pins>;
518 pinctrl-1 = <&sdhi0_pins_uhs>;
519 pinctrl-names = "default", "state_uhs";
521 vmmc-supply = <&vcc_sdhi0>;
522 vqmmc-supply = <&vccq_sdhi0>;
523 cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
524 wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
531 pinctrl-0 = <&sdhi1_pins>;
532 pinctrl-1 = <&sdhi1_pins_uhs>;
533 pinctrl-names = "default", "state_uhs";
535 vmmc-supply = <&vcc_sdhi1>;
536 vqmmc-supply = <&vccq_sdhi1>;
537 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
538 wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
544 pinctrl-0 = <&sdhi2_pins>;
545 pinctrl-1 = <&sdhi2_pins_uhs>;
546 pinctrl-names = "default", "state_uhs";
548 vmmc-supply = <&vcc_sdhi2>;
549 vqmmc-supply = <&vccq_sdhi2>;
550 cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
556 pinctrl-0 = <&qspi_pins>;
557 pinctrl-names = "default";
562 compatible = "spansion,s25fl512s", "jedec,spi-nor";
564 spi-max-frequency = <30000000>;
565 spi-tx-bus-width = <4>;
566 spi-rx-bus-width = <4>;
572 compatible = "fixed-partitions";
573 #address-cells = <1>;
578 reg = <0x00000000 0x00080000>;
583 reg = <0x00080000 0x00580000>;
588 reg = <0x00600000 0x03a00000>;
595 pinctrl-0 = <&msiof0_pins>;
596 pinctrl-names = "default";
601 compatible = "renesas,r2a11302ft";
603 spi-max-frequency = <6000000>;
610 pinctrl-0 = <&i2c1_pins>;
611 pinctrl-names = "i2c-exio1";
615 pinctrl-0 = <&i2c2_pins>;
616 pinctrl-names = "default";
619 clock-frequency = <100000>;
622 compatible = "asahi-kasei,ak4643";
623 #sound-dai-cells = <0>;
628 compatible = "adi,adv7180";
635 remote-endpoint = <&vin1ep>;
640 cec_clock: cec-clock {
641 compatible = "fixed-clock";
643 clock-frequency = <12000000>;
647 compatible = "adi,adv7511w";
649 interrupt-parent = <&gpio3>;
650 interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
651 clocks = <&cec_clock>;
654 adi,input-depth = <8>;
655 adi,input-colorspace = "rgb";
656 adi,input-clock = "1x";
657 adi,input-style = <1>;
658 adi,input-justification = "evenly";
661 #address-cells = <1>;
666 adv7511_in: endpoint {
667 remote-endpoint = <&du_out_rgb>;
673 adv7511_out: endpoint {
674 remote-endpoint = <&hdmi_con_out>;
681 compatible = "adi,adv7612";
683 interrupt-parent = <&gpio4>;
684 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
688 #address-cells = <1>;
693 adv7612_in: endpoint {
694 remote-endpoint = <&hdmi_con_in>;
700 adv7612_out: endpoint {
701 remote-endpoint = <&vin0ep2>;
708 compatible = "renesas,24c02", "atmel,24c02";
716 clock-frequency = <100000>;
719 compatible = "dlg,da9063";
721 interrupt-parent = <&irqc0>;
722 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
723 interrupt-controller;
726 compatible = "dlg,da9063-rtc";
730 compatible = "dlg,da9063-watchdog";
734 vdd_dvfs: regulator@68 {
735 compatible = "dlg,da9210";
737 interrupt-parent = <&irqc0>;
738 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
740 regulator-min-microvolt = <1000000>;
741 regulator-max-microvolt = <1000000>;
749 pinctrl-0 = <&usb0_pins>;
750 pinctrl-names = "default";
755 pinctrl-0 = <&usb1_pins>;
756 pinctrl-names = "default";
761 pinctrl-0 = <&usb0_pins>;
762 pinctrl-names = "default";
763 renesas,enable-gpio = <&gpio5 31 GPIO_ACTIVE_HIGH>;
771 clock-frequency = <100000000>;
779 cpu0-supply = <&vdd_dvfs>;
782 /* HDMI video input */
785 pinctrl-0 = <&vin0_pins>;
786 pinctrl-names = "default";
789 #address-cells = <1>;
793 remote-endpoint = <&adv7612_out>;
803 /* composite video input */
806 pinctrl-0 = <&vin1_pins>;
807 pinctrl-names = "default";
810 #address-cells = <1>;
814 remote-endpoint = <&adv7180>;
821 pinctrl-0 = <&sound_pins &sound_clk_pins>;
822 pinctrl-names = "default";
825 #sound-dai-cells = <0>;
831 playback = <&ssi0 &src2 &dvc0>;
832 capture = <&ssi1 &src3 &dvc1>;