xref: /openbmc/linux/arch/arm64/boot/dts/renesas/r8a77970-v3msk.dts (revision c62d3cd0ddd629606a3830aa22e9dcc6c2a0d3bf)
1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Device Tree Source for the V3M Starter Kit board
4 *
5 * Copyright (C) 2017 Renesas Electronics Corp.
6 * Copyright (C) 2017 Cogent Embedded, Inc.
7 */
8
9/dts-v1/;
10#include "r8a77970.dtsi"
11
12/ {
13	model = "Renesas V3M Starter Kit board";
14	compatible = "renesas,v3msk", "renesas,r8a77970";
15
16	aliases {
17		serial0 = &scif0;
18	};
19
20	chosen {
21		stdout-path = "serial0:115200n8";
22	};
23
24	memory@48000000 {
25		device_type = "memory";
26		/* first 128MB is reserved for secure area. */
27		reg = <0x0 0x48000000 0x0 0x38000000>;
28	};
29
30	osc5_clk: osc5-clock {
31		compatible = "fixed-clock";
32		#clock-cells = <0>;
33		clock-frequency = <148500000>;
34	};
35
36	vcc_d1_8v: regulator-0 {
37		compatible = "regulator-fixed";
38		regulator-name = "VCC_D1.8V";
39		regulator-min-microvolt = <1800000>;
40		regulator-max-microvolt = <1800000>;
41		regulator-boot-on;
42		regulator-always-on;
43	};
44
45	vcc_d3_3v: regulator-1 {
46		compatible = "regulator-fixed";
47		regulator-name = "VCC_D3.3V";
48		regulator-min-microvolt = <3300000>;
49		regulator-max-microvolt = <3300000>;
50		regulator-boot-on;
51		regulator-always-on;
52	};
53
54	lvds-decoder {
55		compatible = "thine,thc63lvd1024";
56		vcc-supply = <&vcc_d3_3v>;
57
58		ports {
59			#address-cells = <1>;
60			#size-cells = <0>;
61
62			port@0 {
63				reg = <0>;
64				thc63lvd1024_in: endpoint {
65					remote-endpoint = <&lvds0_out>;
66				};
67			};
68
69			port@2 {
70				reg = <2>;
71				thc63lvd1024_out: endpoint {
72					remote-endpoint = <&adv7511_in>;
73				};
74			};
75		};
76	};
77
78	hdmi-out {
79		compatible = "hdmi-connector";
80		type = "a";
81
82		port {
83			hdmi_con: endpoint {
84				remote-endpoint = <&adv7511_out>;
85			};
86		};
87	};
88};
89
90&avb {
91	pinctrl-0 = <&avb_pins>;
92	pinctrl-names = "default";
93
94	renesas,no-ether-link;
95	phy-handle = <&phy0>;
96	phy-mode = "rgmii-id";
97	status = "okay";
98
99	phy0: ethernet-phy@0 {
100		rxc-skew-ps = <1500>;
101		reg = <0>;
102	};
103};
104
105&du {
106	clocks = <&cpg CPG_MOD 724>,
107		 <&osc5_clk>;
108	clock-names = "du.0", "dclkin.0";
109	status = "okay";
110};
111
112&extal_clk {
113	clock-frequency = <16666666>;
114};
115
116&extalr_clk {
117	clock-frequency = <32768>;
118};
119
120&pfc {
121	avb_pins: avb0 {
122		groups = "avb0_mdio", "avb0_rgmii", "avb0_txcrefclk";
123		function = "avb0";
124	};
125
126	i2c0_pins: i2c0 {
127		groups = "i2c0";
128		function = "i2c0";
129	};
130
131	scif0_pins: scif0 {
132		groups = "scif0_data";
133		function = "scif0";
134	};
135};
136
137&i2c0 {
138	pinctrl-0 = <&i2c0_pins>;
139	pinctrl-names = "default";
140
141	status = "okay";
142	clock-frequency = <400000>;
143
144	hdmi@39{
145		compatible = "adi,adv7511w";
146		#sound-dai-cells = <0>;
147		reg = <0x39>;
148		interrupt-parent = <&gpio1>;
149		interrupts = <20 IRQ_TYPE_LEVEL_LOW>;
150		avdd-supply = <&vcc_d1_8v>;
151		dvdd-supply = <&vcc_d1_8v>;
152		pvdd-supply = <&vcc_d1_8v>;
153		bgvdd-supply = <&vcc_d1_8v>;
154		dvdd-3v-supply = <&vcc_d3_3v>;
155
156		adi,input-depth = <8>;
157		adi,input-colorspace = "rgb";
158		adi,input-clock = "1x";
159		adi,input-style = <1>;
160		adi,input-justification = "evenly";
161
162		ports {
163			#address-cells = <1>;
164			#size-cells = <0>;
165
166			port@0 {
167				reg = <0>;
168				adv7511_in: endpoint {
169					remote-endpoint = <&thc63lvd1024_out>;
170				};
171			};
172
173			port@1 {
174				reg = <1>;
175				adv7511_out: endpoint {
176					remote-endpoint = <&hdmi_con>;
177				};
178			};
179		};
180	};
181};
182
183&lvds0 {
184	status = "okay";
185
186	ports {
187		port@1 {
188			lvds0_out: endpoint {
189				remote-endpoint = <&thc63lvd1024_in>;
190			};
191		};
192	};
193};
194
195&scif0 {
196	pinctrl-0 = <&scif0_pins>;
197	pinctrl-names = "default";
198
199	status = "okay";
200};
201