2 * Device Tree Source for the Lager board
4 * Copyright (C) 2013-2014 Renesas Solutions Corp.
5 * Copyright (C) 2014 Cogent Embedded, Inc.
6 * Copyright (C) 2015-2016 Renesas Electronics Corporation
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 "r8a7790.dtsi"
43 #include <dt-bindings/gpio/gpio.h>
44 #include <dt-bindings/input/input.h>
48 compatible = "renesas,lager", "renesas,r8a7790";
57 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
58 stdout-path = "serial0:115200n8";
62 device_type = "memory";
63 reg = <0 0x40000000 0 0x40000000>;
67 device_type = "memory";
68 reg = <1 0x40000000 0 0xc0000000>;
77 compatible = "gpio-keys";
83 debounce-interval = <20>;
84 gpios = <&gpio1 14 GPIO_ACTIVE_LOW>;
90 debounce-interval = <20>;
91 gpios = <&gpio1 24 GPIO_ACTIVE_LOW>;
97 debounce-interval = <20>;
98 gpios = <&gpio1 26 GPIO_ACTIVE_LOW>;
101 linux,code = <KEY_4>;
104 debounce-interval = <20>;
105 gpios = <&gpio1 28 GPIO_ACTIVE_LOW>;
110 compatible = "gpio-leds";
112 gpios = <&gpio4 22 GPIO_ACTIVE_HIGH>;
115 gpios = <&gpio4 23 GPIO_ACTIVE_HIGH>;
118 gpios = <&gpio5 17 GPIO_ACTIVE_HIGH>;
122 fixedregulator3v3: fixedregulator@0 {
123 compatible = "regulator-fixed";
124 regulator-name = "fixed-3.3V";
125 regulator-min-microvolt = <3300000>;
126 regulator-max-microvolt = <3300000>;
131 vcc_sdhi0: regulator@1 {
132 compatible = "regulator-fixed";
134 regulator-name = "SDHI0 Vcc";
135 regulator-min-microvolt = <3300000>;
136 regulator-max-microvolt = <3300000>;
138 gpio = <&gpio5 24 GPIO_ACTIVE_HIGH>;
142 vccq_sdhi0: regulator@2 {
143 compatible = "regulator-gpio";
145 regulator-name = "SDHI0 VccQ";
146 regulator-min-microvolt = <1800000>;
147 regulator-max-microvolt = <3300000>;
149 gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>;
155 vcc_sdhi2: regulator@3 {
156 compatible = "regulator-fixed";
158 regulator-name = "SDHI2 Vcc";
159 regulator-min-microvolt = <3300000>;
160 regulator-max-microvolt = <3300000>;
162 gpio = <&gpio5 25 GPIO_ACTIVE_HIGH>;
166 vccq_sdhi2: regulator@4 {
167 compatible = "regulator-gpio";
169 regulator-name = "SDHI2 VccQ";
170 regulator-min-microvolt = <1800000>;
171 regulator-max-microvolt = <3300000>;
173 gpios = <&gpio5 30 GPIO_ACTIVE_HIGH>;
180 compatible = "fixed-clock";
182 clock-frequency = <11289600>;
183 clock-output-names = "audio_clock";
187 compatible = "simple-audio-card";
189 simple-audio-card,format = "left_j";
190 simple-audio-card,bitclock-master = <&sndcodec>;
191 simple-audio-card,frame-master = <&sndcodec>;
193 sndcpu: simple-audio-card,cpu {
194 sound-dai = <&rcar_sound>;
197 sndcodec: simple-audio-card,codec {
198 sound-dai = <&ak4643>;
199 clocks = <&audio_clock>;
204 compatible = "adi,adv7123";
207 #address-cells = <1>;
212 adv7123_in: endpoint {
213 remote-endpoint = <&du_out_rgb>;
218 adv7123_out: endpoint {
219 remote-endpoint = <&vga_in>;
226 compatible = "vga-connector";
230 remote-endpoint = <&adv7123_out>;
236 compatible = "hdmi-connector";
241 remote-endpoint = <&adv7511_out>;
247 compatible = "fixed-clock";
249 clock-frequency = <148500000>;
253 compatible = "fixed-clock";
255 clock-frequency = <148500000>;
259 * IIC0/I2C0 is routed to EXIO connector A, pins 114 (SCL) + 116 (SDA) only.
260 * We use the I2C demuxer, so the desired IP core can be selected at runtime
261 * depending on the use case (e.g. DMA with IIC0 or slave support with I2C0).
262 * Note: For testing the I2C slave feature, it is convenient to connect this
263 * bus with IIC3 on pins 110 (SCL) + 112 (SDA), select I2C0 at runtime, and
264 * instantiate the slave device at runtime according to the documentation.
265 * You can then communicate with the slave via IIC3.
268 compatible = "i2c-demux-pinctrl";
269 i2c-parent = <&iic0>, <&i2c0>;
270 i2c-bus-name = "i2c-exio";
271 #address-cells = <1>;
277 pinctrl-0 = <&du_pins>;
278 pinctrl-names = "default";
281 clocks = <&mstp7_clks R8A7790_CLK_DU0>,
282 <&mstp7_clks R8A7790_CLK_DU1>,
283 <&mstp7_clks R8A7790_CLK_DU2>,
284 <&mstp7_clks R8A7790_CLK_LVDS0>,
285 <&mstp7_clks R8A7790_CLK_LVDS1>,
286 <&x13_clk>, <&x2_clk>;
287 clock-names = "du.0", "du.1", "du.2", "lvds.0", "lvds.1",
288 "dclkin.0", "dclkin.1";
293 remote-endpoint = <&adv7123_in>;
298 remote-endpoint = <&adv7511_in>;
302 lvds_connector: endpoint {
309 clock-frequency = <20000000>;
313 pinctrl-0 = <&scif_clk_pins>;
314 pinctrl-names = "default";
317 renesas,groups = "du_rgb666", "du_sync_1", "du_clk_out_0";
318 renesas,function = "du";
321 scif0_pins: serial0 {
322 renesas,groups = "scif0_data";
323 renesas,function = "scif0";
326 scif_clk_pins: scif_clk {
327 renesas,groups = "scif_clk";
328 renesas,function = "scif_clk";
332 renesas,groups = "eth_link", "eth_mdio", "eth_rmii";
333 renesas,function = "eth";
337 renesas,groups = "intc_irq0";
338 renesas,function = "intc";
341 scifa1_pins: serial1 {
342 renesas,groups = "scifa1_data";
343 renesas,function = "scifa1";
347 renesas,groups = "sdhi0_data4", "sdhi0_ctrl";
348 renesas,function = "sdhi0";
352 renesas,groups = "sdhi2_data4", "sdhi2_ctrl";
353 renesas,function = "sdhi2";
357 renesas,groups = "mmc1_data8", "mmc1_ctrl";
358 renesas,function = "mmc1";
362 renesas,groups = "qspi_ctrl", "qspi_data4";
363 renesas,function = "qspi";
367 renesas,groups = "msiof1_clk", "msiof1_sync", "msiof1_rx",
369 renesas,function = "msiof1";
373 renesas,groups = "i2c0";
374 renesas,function = "i2c0";
378 renesas,groups = "iic0";
379 renesas,function = "iic0";
383 renesas,groups = "iic1";
384 renesas,function = "iic1";
388 renesas,groups = "iic2";
389 renesas,function = "iic2";
393 renesas,groups = "iic3";
394 renesas,function = "iic3";
398 renesas,groups = "usb0_ovc_vbus";
399 renesas,function = "usb0";
403 renesas,groups = "usb0";
404 renesas,function = "usb0";
408 renesas,groups = "usb1";
409 renesas,function = "usb1";
413 renesas,groups = "usb2";
414 renesas,function = "usb2";
418 renesas,groups = "vin1_data8", "vin1_clk";
419 renesas,function = "vin1";
423 renesas,groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data";
424 renesas,function = "ssi";
427 sound_clk_pins: sound_clk {
428 renesas,groups = "audio_clk_a";
429 renesas,function = "audio_clk";
434 pinctrl-0 = <ðer_pins &phy1_pins>;
435 pinctrl-names = "default";
437 phy-handle = <&phy1>;
438 renesas,ether-link-active-low;
441 phy1: ethernet-phy@1 {
443 interrupt-parent = <&irqc0>;
444 interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
445 micrel,led-mode = <1>;
454 pinctrl-0 = <&mmc1_pins>;
455 pinctrl-names = "default";
457 vmmc-supply = <&fixedregulator3v3>;
468 pinctrl-0 = <&qspi_pins>;
469 pinctrl-names = "default";
474 compatible = "spansion,s25fl512s", "jedec,spi-nor";
476 spi-max-frequency = <30000000>;
477 spi-tx-bus-width = <4>;
478 spi-rx-bus-width = <4>;
484 compatible = "fixed-partitions";
485 #address-cells = <1>;
490 reg = <0x00000000 0x00040000>;
495 reg = <0x00040000 0x00400000>;
500 reg = <0x00440000 0x03bc0000>;
507 pinctrl-0 = <&scif0_pins>;
508 pinctrl-names = "default";
514 pinctrl-0 = <&scifa1_pins>;
515 pinctrl-names = "default";
521 clock-frequency = <14745600>;
526 pinctrl-0 = <&msiof1_pins>;
527 pinctrl-names = "default";
532 compatible = "renesas,r2a11302ft";
534 spi-max-frequency = <6000000>;
541 pinctrl-0 = <&sdhi0_pins>;
542 pinctrl-names = "default";
544 vmmc-supply = <&vcc_sdhi0>;
545 vqmmc-supply = <&vccq_sdhi0>;
546 cd-gpios = <&gpio3 6 GPIO_ACTIVE_LOW>;
551 pinctrl-0 = <&sdhi2_pins>;
552 pinctrl-names = "default";
554 vmmc-supply = <&vcc_sdhi2>;
555 vqmmc-supply = <&vccq_sdhi2>;
556 cd-gpios = <&gpio3 22 GPIO_ACTIVE_LOW>;
561 cpu0-supply = <&vdd_dvfs>;
565 pinctrl-0 = <&i2c0_pins>;
566 pinctrl-names = "i2c-exio";
570 pinctrl-0 = <&iic0_pins>;
571 pinctrl-names = "i2c-exio";
576 pinctrl-0 = <&iic1_pins>;
577 pinctrl-names = "default";
582 pinctrl-0 = <&iic2_pins>;
583 pinctrl-names = "default";
585 clock-frequency = <100000>;
588 compatible = "asahi-kasei,ak4643";
589 #sound-dai-cells = <0>;
594 compatible = "adi,adv7180";
601 remote-endpoint = <&vin1ep0>;
607 compatible = "adi,adv7511w";
609 interrupt-parent = <&gpio1>;
610 interrupts = <15 IRQ_TYPE_LEVEL_LOW>;
612 adi,input-depth = <8>;
613 adi,input-colorspace = "rgb";
614 adi,input-clock = "1x";
615 adi,input-style = <1>;
616 adi,input-justification = "evenly";
619 #address-cells = <1>;
624 adv7511_in: endpoint {
625 remote-endpoint = <&du_out_lvds0>;
631 adv7511_out: endpoint {
632 remote-endpoint = <&hdmi_con>;
640 pinctrl-names = "default";
641 pinctrl-0 = <&iic3_pins>;
645 compatible = "dlg,da9063";
647 interrupt-parent = <&irqc0>;
648 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
649 interrupt-controller;
652 compatible = "dlg,da9063-rtc";
656 compatible = "dlg,da9063-watchdog";
660 vdd_dvfs: regulator@68 {
661 compatible = "dlg,da9210";
663 interrupt-parent = <&irqc0>;
664 interrupts = <2 IRQ_TYPE_LEVEL_LOW>;
666 regulator-min-microvolt = <1000000>;
667 regulator-max-microvolt = <1000000>;
675 pinctrl-0 = <&usb0_pins>;
676 pinctrl-names = "default";
681 pinctrl-0 = <&usb1_pins>;
682 pinctrl-names = "default";
687 pinctrl-0 = <&usb2_pins>;
688 pinctrl-names = "default";
693 pinctrl-0 = <&usb2_pins>;
694 pinctrl-names = "default";
699 pinctrl-0 = <&hsusb_pins>;
700 pinctrl-names = "default";
701 renesas,enable-gpio = <&gpio5 18 GPIO_ACTIVE_HIGH>;
708 /* composite video input */
710 pinctrl-0 = <&vin1_pins>;
711 pinctrl-names = "default";
716 #address-cells = <1>;
720 remote-endpoint = <&adv7180>;
727 pinctrl-0 = <&sound_pins &sound_clk_pins>;
728 pinctrl-names = "default";
731 #sound-dai-cells = <0>;
737 playback = <&ssi0 &src2 &dvc0>;
738 capture = <&ssi1 &src3 &dvc1>;