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";
62 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
63 stdout-path = "serial0:115200n8";
67 device_type = "memory";
68 reg = <0 0x40000000 0 0x40000000>;
72 device_type = "memory";
73 reg = <2 0x00000000 0 0x40000000>;
82 compatible = "gpio-keys";
85 gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
89 debounce-interval = <20>;
92 gpios = <&gpio5 1 GPIO_ACTIVE_LOW>;
96 debounce-interval = <20>;
99 gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
100 linux,code = <KEY_3>;
103 debounce-interval = <20>;
106 gpios = <&gpio5 3 GPIO_ACTIVE_LOW>;
107 linux,code = <KEY_4>;
110 debounce-interval = <20>;
113 gpios = <&gpio7 0 GPIO_ACTIVE_LOW>;
114 linux,code = <KEY_A>;
117 debounce-interval = <20>;
120 gpios = <&gpio7 1 GPIO_ACTIVE_LOW>;
121 linux,code = <KEY_B>;
124 debounce-interval = <20>;
127 gpios = <&gpio7 2 GPIO_ACTIVE_LOW>;
128 linux,code = <KEY_C>;
131 debounce-interval = <20>;
134 gpios = <&gpio7 3 GPIO_ACTIVE_LOW>;
135 linux,code = <KEY_D>;
138 debounce-interval = <20>;
141 gpios = <&gpio7 4 GPIO_ACTIVE_LOW>;
142 linux,code = <KEY_E>;
145 debounce-interval = <20>;
148 gpios = <&gpio7 5 GPIO_ACTIVE_LOW>;
149 linux,code = <KEY_F>;
152 debounce-interval = <20>;
155 gpios = <&gpio7 6 GPIO_ACTIVE_LOW>;
156 linux,code = <KEY_G>;
159 debounce-interval = <20>;
164 compatible = "gpio-leds";
166 gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>;
170 gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>;
174 gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
179 vcc_sdhi0: regulator-vcc-sdhi0 {
180 compatible = "regulator-fixed";
182 regulator-name = "SDHI0 Vcc";
183 regulator-min-microvolt = <3300000>;
184 regulator-max-microvolt = <3300000>;
186 gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>;
190 vccq_sdhi0: regulator-vccq-sdhi0 {
191 compatible = "regulator-gpio";
193 regulator-name = "SDHI0 VccQ";
194 regulator-min-microvolt = <1800000>;
195 regulator-max-microvolt = <3300000>;
197 gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>;
203 vcc_sdhi1: regulator-vcc-sdhi1 {
204 compatible = "regulator-fixed";
206 regulator-name = "SDHI1 Vcc";
207 regulator-min-microvolt = <3300000>;
208 regulator-max-microvolt = <3300000>;
210 gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>;
214 vccq_sdhi1: regulator-vccq-sdhi1 {
215 compatible = "regulator-gpio";
217 regulator-name = "SDHI1 VccQ";
218 regulator-min-microvolt = <1800000>;
219 regulator-max-microvolt = <3300000>;
221 gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>;
227 vcc_sdhi2: regulator-vcc-sdhi2 {
228 compatible = "regulator-fixed";
230 regulator-name = "SDHI2 Vcc";
231 regulator-min-microvolt = <3300000>;
232 regulator-max-microvolt = <3300000>;
234 gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>;
238 vccq_sdhi2: regulator-vccq-sdhi2 {
239 compatible = "regulator-gpio";
241 regulator-name = "SDHI2 VccQ";
242 regulator-min-microvolt = <1800000>;
243 regulator-max-microvolt = <3300000>;
245 gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>;
251 audio_clock: audio_clock {
252 compatible = "fixed-clock";
254 clock-frequency = <11289600>;
258 compatible = "simple-audio-card";
260 simple-audio-card,format = "left_j";
261 simple-audio-card,bitclock-master = <&sndcodec>;
262 simple-audio-card,frame-master = <&sndcodec>;
264 sndcpu: simple-audio-card,cpu {
265 sound-dai = <&rcar_sound>;
268 sndcodec: simple-audio-card,codec {
269 sound-dai = <&ak4643>;
270 clocks = <&audio_clock>;
275 compatible = "hdmi-connector";
279 hdmi_con_in: endpoint {
280 remote-endpoint = <&adv7612_in>;
285 cec_clock: cec-clock {
286 compatible = "fixed-clock";
288 clock-frequency = <12000000>;
292 compatible = "hdmi-connector";
296 hdmi_con_out: endpoint {
297 remote-endpoint = <&adv7511_out>;
303 compatible = "fixed-clock";
305 clock-frequency = <74250000>;
309 compatible = "fixed-clock";
311 clock-frequency = <148500000>;
315 #address-cells = <1>;
317 compatible = "i2c-gpio";
319 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>;
325 #address-cells = <1>;
327 compatible = "i2c-gpio";
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>;
335 #address-cells = <1>;
337 compatible = "i2c-gpio";
339 scl-gpios = <&gpio7 13 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
340 sda-gpios = <&gpio7 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
341 i2c-gpio,delay-us = <5>;
345 * I2C1 is routed to EXIO connector B, pins 64 (SCL) + 66 (SDA).
346 * A fallback to GPIO is provided.
349 compatible = "i2c-demux-pinctrl";
350 i2c-parent = <&i2c1>, <&gpioi2c1>;
351 i2c-bus-name = "i2c-exio1";
352 #address-cells = <1>;
357 * A fallback to GPIO is provided for I2C2.
360 compatible = "i2c-demux-pinctrl";
361 i2c-parent = <&i2c2>, <&gpioi2c2>;
362 i2c-bus-name = "i2c-hdmi";
363 #address-cells = <1>;
367 compatible = "asahi-kasei,ak4643";
368 #sound-dai-cells = <0>;
373 compatible = "adi,adv7180";
380 remote-endpoint = <&vin1ep>;
386 compatible = "adi,adv7511w";
388 interrupt-parent = <&gpio3>;
389 interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
390 clocks = <&cec_clock>;
393 adi,input-depth = <8>;
394 adi,input-colorspace = "rgb";
395 adi,input-clock = "1x";
396 adi,input-style = <1>;
397 adi,input-justification = "evenly";
400 #address-cells = <1>;
405 adv7511_in: endpoint {
406 remote-endpoint = <&du_out_rgb>;
412 adv7511_out: endpoint {
413 remote-endpoint = <&hdmi_con_out>;
420 compatible = "adi,adv7612";
422 interrupt-parent = <&gpio4>;
423 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
427 #address-cells = <1>;
432 adv7612_in: endpoint {
433 remote-endpoint = <&hdmi_con_in>;
439 adv7612_out: endpoint {
440 remote-endpoint = <&vin0ep2>;
447 compatible = "renesas,r1ex24002", "atmel,24c02";
454 * I2C4 is routed to EXIO connector E, pins 37 (SCL) + 39 (SDA).
455 * A fallback to GPIO is provided.
458 compatible = "i2c-demux-pinctrl";
459 i2c-parent = <&i2c4>, <&gpioi2c4>;
460 i2c-bus-name = "i2c-exio4";
461 #address-cells = <1>;
467 pinctrl-0 = <&du_pins>;
468 pinctrl-names = "default";
471 clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>, <&cpg CPG_MOD 726>,
472 <&x13_clk>, <&x2_clk>;
473 clock-names = "du.0", "du.1", "lvds.0",
474 "dclkin.0", "dclkin.1";
479 remote-endpoint = <&adv7511_in>;
483 lvds_connector: endpoint {
490 clock-frequency = <20000000>;
494 pinctrl-0 = <&scif_clk_pins>;
495 pinctrl-names = "default";
513 groups = "du_rgb888", "du_sync", "du_disp", "du_clk_out_0";
518 groups = "scif0_data_d";
523 groups = "scif1_data_d";
527 scif_clk_pins: scif_clk {
529 function = "scif_clk";
533 groups = "eth_link", "eth_mdio", "eth_rmii";
538 groups = "intc_irq0";
543 groups = "sdhi0_data4", "sdhi0_ctrl";
545 power-source = <3300>;
548 sdhi0_pins_uhs: sd0_uhs {
549 groups = "sdhi0_data4", "sdhi0_ctrl";
551 power-source = <1800>;
555 groups = "sdhi1_data4", "sdhi1_ctrl";
557 power-source = <3300>;
560 sdhi1_pins_uhs: sd1_uhs {
561 groups = "sdhi1_data4", "sdhi1_ctrl";
563 power-source = <1800>;
567 groups = "sdhi2_data4", "sdhi2_ctrl";
569 power-source = <3300>;
572 sdhi2_pins_uhs: sd2_uhs {
573 groups = "sdhi2_data4", "sdhi2_ctrl";
575 power-source = <1800>;
579 groups = "qspi_ctrl", "qspi_data4";
583 msiof0_pins: msiof0 {
584 groups = "msiof0_clk", "msiof0_sync", "msiof0_rx",
600 groups = "vin0_data24", "vin0_sync", "vin0_clkenb", "vin0_clk";
605 groups = "vin1_data8", "vin1_clk";
610 groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
614 sound_clk_pins: sound_clk {
615 groups = "audio_clk_a";
616 function = "audio_clk";
621 pinctrl-0 = <ðer_pins &phy1_pins>;
622 pinctrl-names = "default";
624 phy-handle = <&phy1>;
625 renesas,ether-link-active-low;
628 phy1: ethernet-phy@1 {
630 interrupt-parent = <&irqc0>;
631 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
632 micrel,led-mode = <1>;
645 pinctrl-0 = <&scif0_pins>;
646 pinctrl-names = "default";
652 pinctrl-0 = <&scif1_pins>;
653 pinctrl-names = "default";
659 clock-frequency = <14745600>;
663 pinctrl-0 = <&sdhi0_pins>;
664 pinctrl-1 = <&sdhi0_pins_uhs>;
665 pinctrl-names = "default", "state_uhs";
667 vmmc-supply = <&vcc_sdhi0>;
668 vqmmc-supply = <&vccq_sdhi0>;
669 cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
670 wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
677 pinctrl-0 = <&sdhi1_pins>;
678 pinctrl-1 = <&sdhi1_pins_uhs>;
679 pinctrl-names = "default", "state_uhs";
681 vmmc-supply = <&vcc_sdhi1>;
682 vqmmc-supply = <&vccq_sdhi1>;
683 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
684 wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
690 pinctrl-0 = <&sdhi2_pins>;
691 pinctrl-1 = <&sdhi2_pins_uhs>;
692 pinctrl-names = "default", "state_uhs";
694 vmmc-supply = <&vcc_sdhi2>;
695 vqmmc-supply = <&vccq_sdhi2>;
696 cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
702 pinctrl-0 = <&qspi_pins>;
703 pinctrl-names = "default";
708 compatible = "spansion,s25fl512s", "jedec,spi-nor";
710 spi-max-frequency = <30000000>;
711 spi-tx-bus-width = <4>;
712 spi-rx-bus-width = <4>;
718 compatible = "fixed-partitions";
719 #address-cells = <1>;
724 reg = <0x00000000 0x00080000>;
729 reg = <0x00080000 0x00580000>;
734 reg = <0x00600000 0x03a00000>;
741 pinctrl-0 = <&msiof0_pins>;
742 pinctrl-names = "default";
747 compatible = "renesas,r2a11302ft";
749 spi-max-frequency = <6000000>;
756 pinctrl-0 = <&i2c1_pins>;
757 pinctrl-names = "i2c-exio1";
761 pinctrl-0 = <&i2c2_pins>;
762 pinctrl-names = "i2c-hdmi";
764 clock-frequency = <100000>;
768 pinctrl-0 = <&i2c4_pins>;
769 pinctrl-names = "i2c-exio4";
774 clock-frequency = <100000>;
777 compatible = "dlg,da9063";
779 interrupt-parent = <&irqc0>;
780 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
781 interrupt-controller;
784 compatible = "dlg,da9063-rtc";
788 compatible = "dlg,da9063-watchdog";
792 vdd_dvfs: regulator@68 {
793 compatible = "dlg,da9210";
795 interrupt-parent = <&irqc0>;
796 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
798 regulator-min-microvolt = <1000000>;
799 regulator-max-microvolt = <1000000>;
807 pinctrl-0 = <&usb0_pins>;
808 pinctrl-names = "default";
813 pinctrl-0 = <&usb1_pins>;
814 pinctrl-names = "default";
819 pinctrl-0 = <&usb0_pins>;
820 pinctrl-names = "default";
821 renesas,enable-gpio = <&gpio5 31 GPIO_ACTIVE_HIGH>;
829 clock-frequency = <100000000>;
837 cpu0-supply = <&vdd_dvfs>;
840 /* HDMI video input */
843 pinctrl-0 = <&vin0_pins>;
844 pinctrl-names = "default";
847 #address-cells = <1>;
851 remote-endpoint = <&adv7612_out>;
861 /* composite video input */
864 pinctrl-0 = <&vin1_pins>;
865 pinctrl-names = "default";
868 #address-cells = <1>;
872 remote-endpoint = <&adv7180>;
879 pinctrl-0 = <&sound_pins &sound_clk_pins>;
880 pinctrl-names = "default";
883 #sound-dai-cells = <0>;
889 playback = <&ssi0 &src2 &dvc0>;
890 capture = <&ssi1 &src3 &dvc1>;