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 * This file is licensed under the terms of the GNU General Public License
9 * version 2. This program is licensed "as is" without any warranty of any
10 * kind, whether express or implied.
20 * This command is required when Playback/Capture
22 * amixer set "LINEOUT Mixer DACL" on
23 * amixer set "DVC Out" 100%
24 * amixer set "DVC In" 100%
28 * amixer set "DVC Out Mute" on
29 * amixer set "DVC In Mute" on
31 * You can use Volume Ramp
33 * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps"
34 * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps"
35 * amixer set "DVC Out Ramp" on
37 * amixer set "DVC Out" 80% // Volume Down
38 * amixer set "DVC Out" 100% // Volume Up
42 #include "r8a7791.dtsi"
43 #include <dt-bindings/gpio/gpio.h>
44 #include <dt-bindings/input/input.h>
48 compatible = "renesas,koelsch", "renesas,r8a7791";
58 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
59 stdout-path = "serial0:115200n8";
63 device_type = "memory";
64 reg = <0 0x40000000 0 0x40000000>;
68 device_type = "memory";
69 reg = <2 0x00000000 0 0x40000000>;
78 compatible = "gpio-keys";
81 gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
85 debounce-interval = <20>;
88 gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
92 debounce-interval = <20>;
95 gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
99 debounce-interval = <20>;
102 gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
103 linux,code = <KEY_4>;
106 debounce-interval = <20>;
109 gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
110 linux,code = <KEY_A>;
113 debounce-interval = <20>;
116 gpios = <&gpio7 1 GPIO_ACTIVE_LOW>;
117 linux,code = <KEY_B>;
120 debounce-interval = <20>;
123 gpios = <&gpio7 2 GPIO_ACTIVE_LOW>;
124 linux,code = <KEY_C>;
127 debounce-interval = <20>;
130 gpios = <&gpio7 3 GPIO_ACTIVE_LOW>;
131 linux,code = <KEY_D>;
134 debounce-interval = <20>;
137 gpios = <&gpio7 4 GPIO_ACTIVE_LOW>;
138 linux,code = <KEY_E>;
141 debounce-interval = <20>;
144 gpios = <&gpio7 5 GPIO_ACTIVE_LOW>;
145 linux,code = <KEY_F>;
148 debounce-interval = <20>;
151 gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
152 linux,code = <KEY_G>;
155 debounce-interval = <20>;
160 compatible = "gpio-leds";
162 gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
166 gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>;
170 gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
175 vcc_sdhi0: regulator-vcc-sdhi0 {
176 compatible = "regulator-fixed";
178 regulator-name = "SDHI0 Vcc";
179 regulator-min-microvolt = <3300000>;
180 regulator-max-microvolt = <3300000>;
182 gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>;
186 vccq_sdhi0: regulator-vccq-sdhi0 {
187 compatible = "regulator-gpio";
189 regulator-name = "SDHI0 VccQ";
190 regulator-min-microvolt = <1800000>;
191 regulator-max-microvolt = <3300000>;
193 gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
199 vcc_sdhi1: regulator-vcc-sdhi1 {
200 compatible = "regulator-fixed";
202 regulator-name = "SDHI1 Vcc";
203 regulator-min-microvolt = <3300000>;
204 regulator-max-microvolt = <3300000>;
206 gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>;
210 vccq_sdhi1: regulator-vccq-sdhi1 {
211 compatible = "regulator-gpio";
213 regulator-name = "SDHI1 VccQ";
214 regulator-min-microvolt = <1800000>;
215 regulator-max-microvolt = <3300000>;
217 gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
223 vcc_sdhi2: regulator-vcc-sdhi2 {
224 compatible = "regulator-fixed";
226 regulator-name = "SDHI2 Vcc";
227 regulator-min-microvolt = <3300000>;
228 regulator-max-microvolt = <3300000>;
230 gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>;
234 vccq_sdhi2: regulator-vccq-sdhi2 {
235 compatible = "regulator-gpio";
237 regulator-name = "SDHI2 VccQ";
238 regulator-min-microvolt = <1800000>;
239 regulator-max-microvolt = <3300000>;
241 gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
247 audio_clock: audio_clock {
248 compatible = "fixed-clock";
250 clock-frequency = <11289600>;
254 compatible = "simple-audio-card";
256 simple-audio-card,format = "left_j";
257 simple-audio-card,bitclock-master = <&sndcodec>;
258 simple-audio-card,frame-master = <&sndcodec>;
260 sndcpu: simple-audio-card,cpu {
261 sound-dai = <&rcar_sound>;
264 sndcodec: simple-audio-card,codec {
265 sound-dai = <&ak4643>;
266 clocks = <&audio_clock>;
271 compatible = "hdmi-connector";
275 hdmi_con_in: endpoint {
276 remote-endpoint = <&adv7612_in>;
281 cec_clock: cec-clock {
282 compatible = "fixed-clock";
284 clock-frequency = <12000000>;
288 compatible = "hdmi-connector";
292 hdmi_con_out: endpoint {
293 remote-endpoint = <&adv7511_out>;
299 compatible = "fixed-clock";
301 clock-frequency = <74250000>;
305 compatible = "fixed-clock";
307 clock-frequency = <148500000>;
311 #address-cells = <1>;
313 compatible = "i2c-gpio";
315 gpios = <&gpio7 16 GPIO_ACTIVE_HIGH /* sda */
316 &gpio7 15 GPIO_ACTIVE_HIGH /* scl */
318 i2c-gpio,delay-us = <5>;
322 * I2C1 is routed to EXIO connector B, pins 64 (SCL) + 66 (SDA).
323 * A fallback to GPIO is provided.
326 compatible = "i2c-demux-pinctrl";
327 i2c-parent = <&i2c1>, <&gpioi2c1>;
328 i2c-bus-name = "i2c-exio1";
329 #address-cells = <1>;
335 pinctrl-0 = <&du_pins>;
336 pinctrl-names = "default";
339 clocks = <&mstp7_clks R8A7791_CLK_DU0>,
340 <&mstp7_clks R8A7791_CLK_DU1>,
341 <&mstp7_clks R8A7791_CLK_LVDS0>,
342 <&x13_clk>, <&x2_clk>;
343 clock-names = "du.0", "du.1", "lvds.0",
344 "dclkin.0", "dclkin.1";
349 remote-endpoint = <&adv7511_in>;
353 lvds_connector: endpoint {
360 clock-frequency = <20000000>;
364 pinctrl-0 = <&scif_clk_pins>;
365 pinctrl-names = "default";
378 groups = "du_rgb888", "du_sync", "du_disp", "du_clk_out_0";
383 groups = "scif0_data_d";
388 groups = "scif1_data_d";
392 scif_clk_pins: scif_clk {
394 function = "scif_clk";
398 groups = "eth_link", "eth_mdio", "eth_rmii";
403 groups = "intc_irq0";
408 groups = "sdhi0_data4", "sdhi0_ctrl";
410 power-source = <3300>;
413 sdhi0_pins_uhs: sd0_uhs {
414 groups = "sdhi0_data4", "sdhi0_ctrl";
416 power-source = <1800>;
420 groups = "sdhi1_data4", "sdhi1_ctrl";
422 power-source = <3300>;
425 sdhi1_pins_uhs: sd1_uhs {
426 groups = "sdhi1_data4", "sdhi1_ctrl";
428 power-source = <1800>;
432 groups = "sdhi2_data4", "sdhi2_ctrl";
434 power-source = <3300>;
437 sdhi2_pins_uhs: sd2_uhs {
438 groups = "sdhi2_data4", "sdhi2_ctrl";
440 power-source = <1800>;
444 groups = "qspi_ctrl", "qspi_data4";
448 msiof0_pins: msiof0 {
449 groups = "msiof0_clk", "msiof0_sync", "msiof0_rx",
465 groups = "vin0_data24", "vin0_sync", "vin0_clkenb", "vin0_clk";
470 groups = "vin1_data8", "vin1_clk";
475 groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
479 sound_clk_pins: sound_clk {
480 groups = "audio_clk_a";
481 function = "audio_clk";
486 pinctrl-0 = <ðer_pins &phy1_pins>;
487 pinctrl-names = "default";
489 phy-handle = <&phy1>;
490 renesas,ether-link-active-low;
493 phy1: ethernet-phy@1 {
495 interrupt-parent = <&irqc0>;
496 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
497 micrel,led-mode = <1>;
510 pinctrl-0 = <&scif0_pins>;
511 pinctrl-names = "default";
517 pinctrl-0 = <&scif1_pins>;
518 pinctrl-names = "default";
524 clock-frequency = <14745600>;
528 pinctrl-0 = <&sdhi0_pins>;
529 pinctrl-1 = <&sdhi0_pins_uhs>;
530 pinctrl-names = "default", "state_uhs";
532 vmmc-supply = <&vcc_sdhi0>;
533 vqmmc-supply = <&vccq_sdhi0>;
534 cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
535 wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
542 pinctrl-0 = <&sdhi1_pins>;
543 pinctrl-1 = <&sdhi1_pins_uhs>;
544 pinctrl-names = "default", "state_uhs";
546 vmmc-supply = <&vcc_sdhi1>;
547 vqmmc-supply = <&vccq_sdhi1>;
548 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
549 wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
555 pinctrl-0 = <&sdhi2_pins>;
556 pinctrl-1 = <&sdhi2_pins_uhs>;
557 pinctrl-names = "default", "state_uhs";
559 vmmc-supply = <&vcc_sdhi2>;
560 vqmmc-supply = <&vccq_sdhi2>;
561 cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
567 pinctrl-0 = <&qspi_pins>;
568 pinctrl-names = "default";
573 compatible = "spansion,s25fl512s", "jedec,spi-nor";
575 spi-max-frequency = <30000000>;
576 spi-tx-bus-width = <4>;
577 spi-rx-bus-width = <4>;
583 compatible = "fixed-partitions";
584 #address-cells = <1>;
589 reg = <0x00000000 0x00080000>;
594 reg = <0x00080000 0x00580000>;
599 reg = <0x00600000 0x03a00000>;
606 pinctrl-0 = <&msiof0_pins>;
607 pinctrl-names = "default";
612 compatible = "renesas,r2a11302ft";
614 spi-max-frequency = <6000000>;
621 pinctrl-0 = <&i2c1_pins>;
622 pinctrl-names = "i2c-exio1";
626 pinctrl-0 = <&i2c2_pins>;
627 pinctrl-names = "default";
630 clock-frequency = <100000>;
633 compatible = "asahi-kasei,ak4643";
634 #sound-dai-cells = <0>;
639 compatible = "adi,adv7180";
646 remote-endpoint = <&vin1ep>;
652 compatible = "adi,adv7511w";
654 interrupt-parent = <&gpio3>;
655 interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
656 clocks = <&cec_clock>;
659 adi,input-depth = <8>;
660 adi,input-colorspace = "rgb";
661 adi,input-clock = "1x";
662 adi,input-style = <1>;
663 adi,input-justification = "evenly";
666 #address-cells = <1>;
671 adv7511_in: endpoint {
672 remote-endpoint = <&du_out_rgb>;
678 adv7511_out: endpoint {
679 remote-endpoint = <&hdmi_con_out>;
686 compatible = "adi,adv7612";
688 interrupt-parent = <&gpio4>;
689 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
693 #address-cells = <1>;
698 adv7612_in: endpoint {
699 remote-endpoint = <&hdmi_con_in>;
705 adv7612_out: endpoint {
706 remote-endpoint = <&vin0ep2>;
713 compatible = "renesas,24c02", "atmel,24c02";
721 clock-frequency = <100000>;
724 compatible = "dlg,da9063";
726 interrupt-parent = <&irqc0>;
727 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
728 interrupt-controller;
731 compatible = "dlg,da9063-rtc";
735 compatible = "dlg,da9063-watchdog";
739 vdd_dvfs: regulator@68 {
740 compatible = "dlg,da9210";
742 interrupt-parent = <&irqc0>;
743 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
745 regulator-min-microvolt = <1000000>;
746 regulator-max-microvolt = <1000000>;
754 pinctrl-0 = <&usb0_pins>;
755 pinctrl-names = "default";
760 pinctrl-0 = <&usb1_pins>;
761 pinctrl-names = "default";
766 pinctrl-0 = <&usb0_pins>;
767 pinctrl-names = "default";
768 renesas,enable-gpio = <&gpio5 31 GPIO_ACTIVE_HIGH>;
776 clock-frequency = <100000000>;
784 cpu0-supply = <&vdd_dvfs>;
787 /* HDMI video input */
790 pinctrl-0 = <&vin0_pins>;
791 pinctrl-names = "default";
794 #address-cells = <1>;
798 remote-endpoint = <&adv7612_out>;
808 /* composite video input */
811 pinctrl-0 = <&vin1_pins>;
812 pinctrl-names = "default";
815 #address-cells = <1>;
819 remote-endpoint = <&adv7180>;
826 pinctrl-0 = <&sound_pins &sound_clk_pins>;
827 pinctrl-names = "default";
830 #sound-dai-cells = <0>;
836 playback = <&ssi0 &src2 &dvc0>;
837 capture = <&ssi1 &src3 &dvc1>;