2 * Device Tree Source for the Koelsch board
4 * Copyright (C) 2013 Renesas Electronics Corporation
5 * Copyright (C) 2013-2014 Renesas Solutions Corp.
6 * Copyright (C) 2014 Cogent Embedded, Inc.
8 * SPDX-License-Identifier: GPL-2.0
18 * This command is required when Playback/Capture
20 * amixer set "LINEOUT Mixer DACL" on
21 * amixer set "DVC Out" 100%
22 * amixer set "DVC In" 100%
26 * amixer set "DVC Out Mute" on
27 * amixer set "DVC In Mute" on
29 * You can use Volume Ramp
31 * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps"
32 * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps"
33 * amixer set "DVC Out Ramp" on
35 * amixer set "DVC Out" 80% // Volume Down
36 * amixer set "DVC Out" 100% // Volume Up
40 #include "r8a7791.dtsi"
41 #include <dt-bindings/gpio/gpio.h>
42 #include <dt-bindings/input/input.h>
46 compatible = "renesas,koelsch", "renesas,r8a7791";
56 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
57 stdout-path = "serial0:115200n8";
61 device_type = "memory";
62 reg = <0 0x40000000 0 0x40000000>;
66 device_type = "memory";
67 reg = <2 0x00000000 0 0x40000000>;
76 compatible = "gpio-keys";
79 gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
83 debounce-interval = <20>;
86 gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
90 debounce-interval = <20>;
93 gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
97 debounce-interval = <20>;
100 gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
101 linux,code = <KEY_4>;
104 debounce-interval = <20>;
107 gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
108 linux,code = <KEY_A>;
111 debounce-interval = <20>;
114 gpios = <&gpio7 1 GPIO_ACTIVE_LOW>;
115 linux,code = <KEY_B>;
118 debounce-interval = <20>;
121 gpios = <&gpio7 2 GPIO_ACTIVE_LOW>;
122 linux,code = <KEY_C>;
125 debounce-interval = <20>;
128 gpios = <&gpio7 3 GPIO_ACTIVE_LOW>;
129 linux,code = <KEY_D>;
132 debounce-interval = <20>;
135 gpios = <&gpio7 4 GPIO_ACTIVE_LOW>;
136 linux,code = <KEY_E>;
139 debounce-interval = <20>;
142 gpios = <&gpio7 5 GPIO_ACTIVE_LOW>;
143 linux,code = <KEY_F>;
146 debounce-interval = <20>;
149 gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
150 linux,code = <KEY_G>;
153 debounce-interval = <20>;
158 compatible = "gpio-leds";
160 gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
164 gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>;
168 gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
173 vcc_sdhi0: regulator-vcc-sdhi0 {
174 compatible = "regulator-fixed";
176 regulator-name = "SDHI0 Vcc";
177 regulator-min-microvolt = <3300000>;
178 regulator-max-microvolt = <3300000>;
180 gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>;
184 vccq_sdhi0: regulator-vccq-sdhi0 {
185 compatible = "regulator-gpio";
187 regulator-name = "SDHI0 VccQ";
188 regulator-min-microvolt = <1800000>;
189 regulator-max-microvolt = <3300000>;
191 gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
197 vcc_sdhi1: regulator-vcc-sdhi1 {
198 compatible = "regulator-fixed";
200 regulator-name = "SDHI1 Vcc";
201 regulator-min-microvolt = <3300000>;
202 regulator-max-microvolt = <3300000>;
204 gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>;
208 vccq_sdhi1: regulator-vccq-sdhi1 {
209 compatible = "regulator-gpio";
211 regulator-name = "SDHI1 VccQ";
212 regulator-min-microvolt = <1800000>;
213 regulator-max-microvolt = <3300000>;
215 gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
221 vcc_sdhi2: regulator-vcc-sdhi2 {
222 compatible = "regulator-fixed";
224 regulator-name = "SDHI2 Vcc";
225 regulator-min-microvolt = <3300000>;
226 regulator-max-microvolt = <3300000>;
228 gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>;
232 vccq_sdhi2: regulator-vccq-sdhi2 {
233 compatible = "regulator-gpio";
235 regulator-name = "SDHI2 VccQ";
236 regulator-min-microvolt = <1800000>;
237 regulator-max-microvolt = <3300000>;
239 gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
245 audio_clock: audio_clock {
246 compatible = "fixed-clock";
248 clock-frequency = <11289600>;
252 compatible = "simple-audio-card";
254 simple-audio-card,format = "left_j";
255 simple-audio-card,bitclock-master = <&sndcodec>;
256 simple-audio-card,frame-master = <&sndcodec>;
258 sndcpu: simple-audio-card,cpu {
259 sound-dai = <&rcar_sound>;
262 sndcodec: simple-audio-card,codec {
263 sound-dai = <&ak4643>;
264 clocks = <&audio_clock>;
269 compatible = "hdmi-connector";
273 hdmi_con_in: endpoint {
274 remote-endpoint = <&adv7612_in>;
280 compatible = "hdmi-connector";
284 hdmi_con_out: endpoint {
285 remote-endpoint = <&adv7511_out>;
291 compatible = "fixed-clock";
293 clock-frequency = <74250000>;
297 compatible = "fixed-clock";
299 clock-frequency = <148500000>;
303 #address-cells = <1>;
305 compatible = "i2c-gpio";
307 gpios = <&gpio7 16 GPIO_ACTIVE_HIGH /* sda */
308 &gpio7 15 GPIO_ACTIVE_HIGH /* scl */
310 i2c-gpio,delay-us = <5>;
314 * I2C1 is routed to EXIO connector B, pins 64 (SCL) + 66 (SDA).
315 * A fallback to GPIO is provided.
318 compatible = "i2c-demux-pinctrl";
319 i2c-parent = <&i2c1>, <&gpioi2c1>;
320 i2c-bus-name = "i2c-exio1";
321 #address-cells = <1>;
327 pinctrl-0 = <&du_pins>;
328 pinctrl-names = "default";
331 clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>, <&cpg CPG_MOD 726>,
332 <&x13_clk>, <&x2_clk>;
333 clock-names = "du.0", "du.1", "lvds.0",
334 "dclkin.0", "dclkin.1";
339 remote-endpoint = <&adv7511_in>;
343 lvds_connector: endpoint {
350 clock-frequency = <20000000>;
354 pinctrl-0 = <&scif_clk_pins>;
355 pinctrl-names = "default";
368 groups = "du_rgb888", "du_sync", "du_disp", "du_clk_out_0";
373 groups = "scif0_data_d";
378 groups = "scif1_data_d";
382 scif_clk_pins: scif_clk {
384 function = "scif_clk";
388 groups = "eth_link", "eth_mdio", "eth_rmii";
393 groups = "intc_irq0";
398 groups = "sdhi0_data4", "sdhi0_ctrl";
400 power-source = <3300>;
403 sdhi0_pins_uhs: sd0_uhs {
404 groups = "sdhi0_data4", "sdhi0_ctrl";
406 power-source = <1800>;
410 groups = "sdhi1_data4", "sdhi1_ctrl";
412 power-source = <3300>;
415 sdhi1_pins_uhs: sd1_uhs {
416 groups = "sdhi1_data4", "sdhi1_ctrl";
418 power-source = <1800>;
422 groups = "sdhi2_data4", "sdhi2_ctrl";
424 power-source = <3300>;
427 sdhi2_pins_uhs: sd2_uhs {
428 groups = "sdhi2_data4", "sdhi2_ctrl";
430 power-source = <1800>;
434 groups = "qspi_ctrl", "qspi_data4";
438 msiof0_pins: msiof0 {
439 groups = "msiof0_clk", "msiof0_sync", "msiof0_rx",
455 groups = "vin0_data24", "vin0_sync", "vin0_clkenb", "vin0_clk";
460 groups = "vin1_data8", "vin1_clk";
465 groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
469 sound_clk_pins: sound_clk {
470 groups = "audio_clk_a";
471 function = "audio_clk";
476 pinctrl-0 = <ðer_pins &phy1_pins>;
477 pinctrl-names = "default";
479 phy-handle = <&phy1>;
480 renesas,ether-link-active-low;
483 phy1: ethernet-phy@1 {
485 interrupt-parent = <&irqc0>;
486 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
487 micrel,led-mode = <1>;
500 pinctrl-0 = <&scif0_pins>;
501 pinctrl-names = "default";
507 pinctrl-0 = <&scif1_pins>;
508 pinctrl-names = "default";
514 clock-frequency = <14745600>;
518 pinctrl-0 = <&sdhi0_pins>;
519 pinctrl-1 = <&sdhi0_pins_uhs>;
520 pinctrl-names = "default", "state_uhs";
522 vmmc-supply = <&vcc_sdhi0>;
523 vqmmc-supply = <&vccq_sdhi0>;
524 cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
525 wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
532 pinctrl-0 = <&sdhi1_pins>;
533 pinctrl-1 = <&sdhi1_pins_uhs>;
534 pinctrl-names = "default", "state_uhs";
536 vmmc-supply = <&vcc_sdhi1>;
537 vqmmc-supply = <&vccq_sdhi1>;
538 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
539 wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
545 pinctrl-0 = <&sdhi2_pins>;
546 pinctrl-1 = <&sdhi2_pins_uhs>;
547 pinctrl-names = "default", "state_uhs";
549 vmmc-supply = <&vcc_sdhi2>;
550 vqmmc-supply = <&vccq_sdhi2>;
551 cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
557 pinctrl-0 = <&qspi_pins>;
558 pinctrl-names = "default";
563 compatible = "spansion,s25fl512s", "jedec,spi-nor";
565 spi-max-frequency = <30000000>;
566 spi-tx-bus-width = <4>;
567 spi-rx-bus-width = <4>;
573 compatible = "fixed-partitions";
574 #address-cells = <1>;
579 reg = <0x00000000 0x00080000>;
584 reg = <0x00080000 0x00580000>;
589 reg = <0x00600000 0x03a00000>;
596 pinctrl-0 = <&msiof0_pins>;
597 pinctrl-names = "default";
602 compatible = "renesas,r2a11302ft";
604 spi-max-frequency = <6000000>;
611 pinctrl-0 = <&i2c1_pins>;
612 pinctrl-names = "i2c-exio1";
616 pinctrl-0 = <&i2c2_pins>;
617 pinctrl-names = "default";
620 clock-frequency = <100000>;
623 compatible = "asahi-kasei,ak4643";
624 #sound-dai-cells = <0>;
629 compatible = "adi,adv7180";
636 remote-endpoint = <&vin1ep>;
641 cec_clock: cec-clock {
642 compatible = "fixed-clock";
644 clock-frequency = <12000000>;
648 compatible = "adi,adv7511w";
650 interrupt-parent = <&gpio3>;
651 interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
652 clocks = <&cec_clock>;
655 adi,input-depth = <8>;
656 adi,input-colorspace = "rgb";
657 adi,input-clock = "1x";
658 adi,input-style = <1>;
659 adi,input-justification = "evenly";
662 #address-cells = <1>;
667 adv7511_in: endpoint {
668 remote-endpoint = <&du_out_rgb>;
674 adv7511_out: endpoint {
675 remote-endpoint = <&hdmi_con_out>;
682 compatible = "adi,adv7612";
684 interrupt-parent = <&gpio4>;
685 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
689 #address-cells = <1>;
694 adv7612_in: endpoint {
695 remote-endpoint = <&hdmi_con_in>;
701 adv7612_out: endpoint {
702 remote-endpoint = <&vin0ep2>;
709 compatible = "renesas,24c02", "atmel,24c02";
717 clock-frequency = <100000>;
720 compatible = "dlg,da9063";
722 interrupt-parent = <&irqc0>;
723 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
724 interrupt-controller;
727 compatible = "dlg,da9063-rtc";
731 compatible = "dlg,da9063-watchdog";
735 vdd_dvfs: regulator@68 {
736 compatible = "dlg,da9210";
738 interrupt-parent = <&irqc0>;
739 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
741 regulator-min-microvolt = <1000000>;
742 regulator-max-microvolt = <1000000>;
750 pinctrl-0 = <&usb0_pins>;
751 pinctrl-names = "default";
756 pinctrl-0 = <&usb1_pins>;
757 pinctrl-names = "default";
762 pinctrl-0 = <&usb0_pins>;
763 pinctrl-names = "default";
764 renesas,enable-gpio = <&gpio5 31 GPIO_ACTIVE_HIGH>;
772 clock-frequency = <100000000>;
780 cpu0-supply = <&vdd_dvfs>;
783 /* HDMI video input */
786 pinctrl-0 = <&vin0_pins>;
787 pinctrl-names = "default";
790 #address-cells = <1>;
794 remote-endpoint = <&adv7612_out>;
804 /* composite video input */
807 pinctrl-0 = <&vin1_pins>;
808 pinctrl-names = "default";
811 #address-cells = <1>;
815 remote-endpoint = <&adv7180>;
822 pinctrl-0 = <&sound_pins &sound_clk_pins>;
823 pinctrl-names = "default";
826 #sound-dai-cells = <0>;
832 playback = <&ssi0 &src2 &dvc0>;
833 capture = <&ssi1 &src3 &dvc1>;