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";
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@0 {
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@1 {
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@2 {
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@3 {
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@4 {
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@5 {
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>;
246 compatible = "fixed-clock";
248 clock-frequency = <11289600>;
249 clock-output-names = "audio_clock";
253 compatible = "simple-audio-card";
255 simple-audio-card,format = "left_j";
256 simple-audio-card,bitclock-master = <&sndcodec>;
257 simple-audio-card,frame-master = <&sndcodec>;
259 sndcpu: simple-audio-card,cpu {
260 sound-dai = <&rcar_sound>;
263 sndcodec: simple-audio-card,codec {
264 sound-dai = <&ak4643>;
265 clocks = <&audio_clock>;
270 compatible = "hdmi-connector";
275 remote-endpoint = <&adv7511_out>;
281 compatible = "fixed-clock";
283 clock-frequency = <148500000>;
287 compatible = "fixed-clock";
289 clock-frequency = <148500000>;
294 pinctrl-0 = <&du_pins>;
295 pinctrl-names = "default";
298 clocks = <&mstp7_clks R8A7791_CLK_DU0>,
299 <&mstp7_clks R8A7791_CLK_DU1>,
300 <&mstp7_clks R8A7791_CLK_LVDS0>,
301 <&x13_clk>, <&x2_clk>;
302 clock-names = "du.0", "du.1", "lvds.0",
303 "dclkin.0", "dclkin.1";
308 remote-endpoint = <&adv7511_in>;
312 lvds_connector: endpoint {
319 clock-frequency = <20000000>;
324 renesas,groups = "i2c2";
325 renesas,function = "i2c2";
329 renesas,groups = "du_rgb888", "du_sync", "du_disp", "du_clk_out_0";
330 renesas,function = "du";
333 scif0_pins: serial0 {
334 renesas,groups = "scif0_data_d";
335 renesas,function = "scif0";
338 scif1_pins: serial1 {
339 renesas,groups = "scif1_data_d";
340 renesas,function = "scif1";
344 renesas,groups = "eth_link", "eth_mdio", "eth_rmii";
345 renesas,function = "eth";
349 renesas,groups = "intc_irq0";
350 renesas,function = "intc";
354 renesas,groups = "sdhi0_data4", "sdhi0_ctrl";
355 renesas,function = "sdhi0";
359 renesas,groups = "sdhi1_data4", "sdhi1_ctrl";
360 renesas,function = "sdhi1";
364 renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
365 renesas,function = "sdhi2";
369 renesas,groups = "qspi_ctrl", "qspi_data4";
370 renesas,function = "qspi";
374 renesas,groups = "msiof0_clk", "msiof0_sync", "msiof0_rx",
376 renesas,function = "msiof0";
380 renesas,groups = "usb0";
381 renesas,function = "usb0";
385 renesas,groups = "usb1";
386 renesas,function = "usb1";
390 renesas,groups = "vin1_data8", "vin1_clk";
391 renesas,function = "vin1";
395 renesas,groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
396 renesas,function = "ssi";
399 sound_clk_pins: sound_clk {
400 renesas,groups = "audio_clk_a";
401 renesas,function = "audio_clk";
406 pinctrl-0 = <ðer_pins &phy1_pins>;
407 pinctrl-names = "default";
409 phy-handle = <&phy1>;
410 renesas,ether-link-active-low;
413 phy1: ethernet-phy@1 {
415 interrupt-parent = <&irqc0>;
416 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
417 micrel,led-mode = <1>;
430 pinctrl-0 = <&scif0_pins>;
431 pinctrl-names = "default";
437 pinctrl-0 = <&scif1_pins>;
438 pinctrl-names = "default";
444 pinctrl-0 = <&sdhi0_pins>;
445 pinctrl-names = "default";
447 vmmc-supply = <&vcc_sdhi0>;
448 vqmmc-supply = <&vccq_sdhi0>;
449 cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>;
450 wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>;
455 pinctrl-0 = <&sdhi1_pins>;
456 pinctrl-names = "default";
458 vmmc-supply = <&vcc_sdhi1>;
459 vqmmc-supply = <&vccq_sdhi1>;
460 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
461 wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>;
466 pinctrl-0 = <&sdhi2_pins>;
467 pinctrl-names = "default";
469 vmmc-supply = <&vcc_sdhi2>;
470 vqmmc-supply = <&vccq_sdhi2>;
471 cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>;
476 pinctrl-0 = <&qspi_pins>;
477 pinctrl-names = "default";
482 compatible = "spansion,s25fl512s", "jedec,spi-nor";
484 spi-max-frequency = <30000000>;
485 spi-tx-bus-width = <4>;
486 spi-rx-bus-width = <4>;
492 compatible = "fixed-partitions";
493 #address-cells = <1>;
498 reg = <0x00000000 0x00080000>;
503 reg = <0x00080000 0x00580000>;
508 reg = <0x00600000 0x03a00000>;
515 pinctrl-0 = <&msiof0_pins>;
516 pinctrl-names = "default";
521 compatible = "renesas,r2a11302ft";
523 spi-max-frequency = <6000000>;
530 pinctrl-0 = <&i2c2_pins>;
531 pinctrl-names = "default";
534 clock-frequency = <100000>;
537 compatible = "asahi-kasei,ak4643";
538 #sound-dai-cells = <0>;
543 compatible = "adi,adv7180";
550 remote-endpoint = <&vin1ep>;
556 compatible = "adi,adv7511w";
558 interrupt-parent = <&gpio3>;
559 interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
561 adi,input-depth = <8>;
562 adi,input-colorspace = "rgb";
563 adi,input-clock = "1x";
564 adi,input-style = <1>;
565 adi,input-justification = "evenly";
568 #address-cells = <1>;
573 adv7511_in: endpoint {
574 remote-endpoint = <&du_out_rgb>;
580 adv7511_out: endpoint {
581 remote-endpoint = <&hdmi_con>;
588 compatible = "renesas,24c02";
596 clock-frequency = <100000>;
599 compatible = "dlg,da9063";
601 interrupt-parent = <&irqc0>;
602 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
603 interrupt-controller;
606 compatible = "dlg,da9063-rtc";
610 compatible = "dlg,da9063-watchdog";
614 vdd_dvfs: regulator@68 {
615 compatible = "dlg,da9210";
617 interrupt-parent = <&irqc0>;
618 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
620 regulator-min-microvolt = <1000000>;
621 regulator-max-microvolt = <1000000>;
629 pinctrl-0 = <&usb0_pins>;
630 pinctrl-names = "default";
635 pinctrl-0 = <&usb1_pins>;
636 pinctrl-names = "default";
641 pinctrl-0 = <&usb0_pins>;
642 pinctrl-names = "default";
643 renesas,enable-gpio = <&gpio5 31 GPIO_ACTIVE_HIGH>;
659 cpu0-supply = <&vdd_dvfs>;
662 /* composite video input */
665 pinctrl-0 = <&vin1_pins>;
666 pinctrl-names = "default";
669 #address-cells = <1>;
673 remote-endpoint = <&adv7180>;
680 pinctrl-0 = <&sound_pins &sound_clk_pins>;
681 pinctrl-names = "default";
684 #sound-dai-cells = <0>;
690 playback = <&ssi0 &src2 &dvc0>;
691 capture = <&ssi1 &src3 &dvc1>;