1 // SPDX-License-Identifier: GPL-2.0
3 * Device Tree Source for the Draak board
5 * Copyright (C) 2016-2018 Renesas Electronics Corp.
6 * Copyright (C) 2017 Glider bvba
10 #include "r8a77995.dtsi"
11 #include <dt-bindings/gpio/gpio.h>
14 model = "Renesas Draak board based on r8a77995";
15 compatible = "renesas,draak", "renesas,r8a77995";
22 backlight: backlight {
23 compatible = "pwm-backlight";
24 pwms = <&pwm1 0 50000>;
26 brightness-levels = <512 511 505 494 473 440 392 327 241 133 0>;
27 default-brightness-level = <10>;
29 power-supply = <®_12p0v>;
30 enable-gpios = <&gpio4 0 GPIO_ACTIVE_HIGH>;
34 bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
35 stdout-path = "serial0:115200n8";
39 compatible = "composite-video-connector";
42 composite_con_in: endpoint {
43 remote-endpoint = <&adv7180_in>;
49 compatible = "hdmi-connector";
53 hdmi_con_in: endpoint {
54 remote-endpoint = <&adv7612_in>;
60 compatible = "hdmi-connector";
64 hdmi_con_out: endpoint {
65 remote-endpoint = <&adv7511_out>;
71 compatible = "thine,thc63lvd1024";
72 vcc-supply = <®_3p3v>;
80 thc63lvd1024_in: endpoint {
81 remote-endpoint = <&lvds0_out>;
87 thc63lvd1024_out: endpoint {
88 remote-endpoint = <&adv7511_in>;
95 device_type = "memory";
96 /* first 128MB is reserved for secure area. */
97 reg = <0x0 0x48000000 0x0 0x18000000>;
100 reg_1p8v: regulator-1p8v {
101 compatible = "regulator-fixed";
102 regulator-name = "fixed-1.8V";
103 regulator-min-microvolt = <1800000>;
104 regulator-max-microvolt = <1800000>;
109 reg_3p3v: regulator-3p3v {
110 compatible = "regulator-fixed";
111 regulator-name = "fixed-3.3V";
112 regulator-min-microvolt = <3300000>;
113 regulator-max-microvolt = <3300000>;
118 reg_12p0v: regulator-12p0v {
119 compatible = "regulator-fixed";
120 regulator-name = "D12.0V";
121 regulator-min-microvolt = <12000000>;
122 regulator-max-microvolt = <12000000>;
128 compatible = "vga-connector";
132 remote-endpoint = <&adv7123_out>;
138 compatible = "adi,adv7123";
141 #address-cells = <1>;
146 adv7123_in: endpoint {
147 remote-endpoint = <&du_out_rgb>;
152 adv7123_out: endpoint {
153 remote-endpoint = <&vga_in>;
160 compatible = "fixed-clock";
162 clock-frequency = <74250000>;
167 pinctrl-0 = <&avb0_pins>;
168 pinctrl-names = "default";
169 renesas,no-ether-link;
170 phy-handle = <&phy0>;
173 phy0: ethernet-phy@0 {
174 rxc-skew-ps = <1500>;
176 interrupt-parent = <&gpio5>;
177 interrupts = <19 IRQ_TYPE_LEVEL_LOW>;
179 * TX clock internal delay mode is required for reliable
180 * 1Gbps communication using the KSZ9031RNX phy present on
181 * the Draak board, however, TX clock internal delay mode
182 * isn't supported on r8a77995. Thus, limit speed to
183 * 100Mbps for reliable communication.
190 pinctrl-0 = <&can0_pins>;
191 pinctrl-names = "default";
196 pinctrl-0 = <&can1_pins>;
197 pinctrl-names = "default";
202 pinctrl-0 = <&du_pins>;
203 pinctrl-names = "default";
206 clocks = <&cpg CPG_MOD 724>,
209 clock-names = "du.0", "du.1", "dclkin.0";
214 remote-endpoint = <&adv7123_in>;
226 clock-frequency = <48000000>;
235 pinctrl-0 = <&i2c0_pins>;
236 pinctrl-names = "default";
240 compatible = "adi,adv7180cp";
244 #address-cells = <1>;
249 adv7180_in: endpoint {
250 remote-endpoint = <&composite_con_in>;
258 * The VIN4 video input path is shared between
259 * CVBS and HDMI inputs through SW[49-53]
262 * CVBS is the default selection, link it to
265 adv7180_out: endpoint {
266 remote-endpoint = <&vin4_in>;
274 compatible = "adi,adv7511w";
275 reg = <0x39>, <0x3f>, <0x38>, <0x3c>;
276 reg-names = "main", "edid", "packet", "cec";
277 interrupt-parent = <&gpio1>;
278 interrupts = <28 IRQ_TYPE_LEVEL_LOW>;
280 /* Depends on LVDS */
281 max-clock = <135000000>;
284 adi,input-depth = <8>;
285 adi,input-colorspace = "rgb";
286 adi,input-clock = "1x";
287 adi,input-style = <1>;
288 adi,input-justification = "evenly";
291 #address-cells = <1>;
296 adv7511_in: endpoint {
297 remote-endpoint = <&thc63lvd1024_out>;
303 adv7511_out: endpoint {
304 remote-endpoint = <&hdmi_con_out>;
311 compatible = "adi,adv7612";
316 #address-cells = <1>;
322 adv7612_in: endpoint {
323 remote-endpoint = <&hdmi_con_in>;
331 * The VIN4 video input path is shared between
332 * CVBS and HDMI inputs through SW[49-53]
335 * CVBS is the default selection, leave HDMI
336 * not connected here.
338 adv7612_out: endpoint {
348 compatible = "rohm,br24t01", "atmel,24c01";
355 pinctrl-0 = <&i2c1_pins>;
356 pinctrl-names = "default";
363 clocks = <&cpg CPG_MOD 727>,
366 clock-names = "fck", "dclkin.0", "extal";
370 lvds0_out: endpoint {
371 remote-endpoint = <&thc63lvd1024_in>;
379 * Even though the LVDS1 output is not connected, the encoder must be
380 * enabled to supply a pixel clock to the DU for the DPAD output when
385 clocks = <&cpg CPG_MOD 727>,
388 clock-names = "fck", "dclkin.0", "extal";
399 groups = "avb0_link", "avb0_mdio", "avb0_mii";
405 groups = "can0_data_a";
410 groups = "can1_data_a";
415 groups = "du_rgb888", "du_sync", "du_disp", "du_clk_out_0";
440 groups = "scif2_data";
445 groups = "mmc_data8", "mmc_ctrl";
447 power-source = <1800>;
450 sdhi2_pins_uhs: sd2_uhs {
451 groups = "mmc_data8", "mmc_ctrl";
453 power-source = <1800>;
461 vin4_pins_cvbs: vin4 {
462 groups = "vin4_data8", "vin4_sync", "vin4_clk";
468 pinctrl-0 = <&pwm0_pins>;
469 pinctrl-names = "default";
475 pinctrl-0 = <&pwm1_pins>;
476 pinctrl-names = "default";
487 pinctrl-0 = <&scif2_pins>;
488 pinctrl-names = "default";
494 /* used for on-board eMMC */
495 pinctrl-0 = <&sdhi2_pins>;
496 pinctrl-1 = <&sdhi2_pins_uhs>;
497 pinctrl-names = "default", "state_uhs";
499 vmmc-supply = <®_3p3v>;
500 vqmmc-supply = <®_1p8v>;
508 pinctrl-0 = <&usb0_pins>;
509 pinctrl-names = "default";
516 pinctrl-0 = <&vin4_pins_cvbs>;
517 pinctrl-names = "default";
524 remote-endpoint = <&adv7180_out>;