1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Device Tree Source for the HiHope RZ/G2[MN] main board common parts
4 *
5 * Copyright (C) 2019 Renesas Electronics Corp.
6 */
7
8#include <dt-bindings/gpio/gpio.h>
9
10/ {
11	aliases {
12		serial0 = &scif2;
13	};
14
15	chosen {
16		bootargs = "ignore_loglevel";
17		stdout-path = "serial0:115200n8";
18	};
19
20	leds {
21		compatible = "gpio-leds";
22
23		led0 {
24			gpios = <&gpio6 11 GPIO_ACTIVE_HIGH>;
25			label = "LED0";
26		};
27
28		led1 {
29			gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>;
30			label = "LED1";
31		};
32
33		led2 {
34			gpios = <&gpio6 13 GPIO_ACTIVE_HIGH>;
35			label = "LED2";
36		};
37
38		led3 {
39			gpios = <&gpio0  0 GPIO_ACTIVE_HIGH>;
40			label = "LED3";
41		};
42	};
43
44	reg_1p8v: regulator0 {
45		compatible = "regulator-fixed";
46		regulator-name = "fixed-1.8V";
47		regulator-min-microvolt = <1800000>;
48		regulator-max-microvolt = <1800000>;
49		regulator-boot-on;
50		regulator-always-on;
51	};
52
53	reg_3p3v: regulator1 {
54		compatible = "regulator-fixed";
55		regulator-name = "fixed-3.3V";
56		regulator-min-microvolt = <3300000>;
57		regulator-max-microvolt = <3300000>;
58		regulator-boot-on;
59		regulator-always-on;
60	};
61
62	vbus0_usb2: regulator-vbus0-usb2 {
63		compatible = "regulator-fixed";
64
65		regulator-name = "USB20_VBUS0";
66		regulator-min-microvolt = <5000000>;
67		regulator-max-microvolt = <5000000>;
68
69		gpio = <&gpio6 16 GPIO_ACTIVE_HIGH>;
70		enable-active-high;
71	};
72
73	vccq_sdhi0: regulator-vccq-sdhi0 {
74		compatible = "regulator-gpio";
75
76		regulator-name = "SDHI0 VccQ";
77		regulator-min-microvolt = <1800000>;
78		regulator-max-microvolt = <3300000>;
79
80		gpios = <&gpio6 30 GPIO_ACTIVE_HIGH>;
81		gpios-states = <1>;
82		states = <3300000 1
83			  1800000 0>;
84	};
85};
86
87&ehci0 {
88	status = "okay";
89};
90
91&ehci1 {
92	status = "okay";
93};
94
95&extal_clk {
96	clock-frequency = <16666666>;
97};
98
99&extalr_clk {
100	clock-frequency = <32768>;
101};
102
103&gpio6 {
104	usb1-reset {
105		gpio-hog;
106		gpios = <10 GPIO_ACTIVE_LOW>;
107		output-low;
108		line-name = "usb1-reset";
109	};
110};
111
112&hsusb {
113	dr_mode = "otg";
114	status = "okay";
115};
116
117&ohci0 {
118	status = "okay";
119};
120
121&ohci1 {
122	status = "okay";
123};
124
125&pcie_bus_clk {
126	clock-frequency = <100000000>;
127};
128
129&pfc {
130	pinctrl-0 = <&scif_clk_pins>;
131	pinctrl-names = "default";
132
133	scif2_pins: scif2 {
134		groups = "scif2_data_a";
135		function = "scif2";
136	};
137
138	scif_clk_pins: scif_clk {
139		groups = "scif_clk_a";
140		function = "scif_clk";
141	};
142
143	sdhi0_pins: sd0 {
144		groups = "sdhi0_data4", "sdhi0_ctrl";
145		function = "sdhi0";
146		power-source = <3300>;
147	};
148
149	sdhi0_pins_uhs: sd0_uhs {
150		groups = "sdhi0_data4", "sdhi0_ctrl";
151		function = "sdhi0";
152		power-source = <1800>;
153	};
154
155	sdhi3_pins: sd3 {
156		groups = "sdhi3_data8", "sdhi3_ctrl", "sdhi3_ds";
157		function = "sdhi3";
158		power-source = <1800>;
159	};
160
161	usb0_pins: usb0 {
162		groups = "usb0";
163		function = "usb0";
164	};
165
166	usb1_pins: usb1 {
167		mux {
168			groups = "usb1";
169			function = "usb1";
170		};
171
172		ovc {
173			pins = "GP_6_27";
174			bias-pull-up;
175		};
176	};
177
178	usb30_pins: usb30 {
179		groups = "usb30";
180		function = "usb30";
181	};
182};
183
184&rwdt {
185	timeout-sec = <60>;
186	status = "okay";
187};
188
189&scif2 {
190	pinctrl-0 = <&scif2_pins>;
191	pinctrl-names = "default";
192
193	status = "okay";
194};
195
196&scif_clk {
197	clock-frequency = <14745600>;
198};
199
200&sdhi0 {
201	pinctrl-0 = <&sdhi0_pins>;
202	pinctrl-1 = <&sdhi0_pins_uhs>;
203	pinctrl-names = "default", "state_uhs";
204
205	vmmc-supply = <&reg_3p3v>;
206	vqmmc-supply = <&vccq_sdhi0>;
207	cd-gpios = <&gpio3 12 GPIO_ACTIVE_LOW>;
208	bus-width = <4>;
209	sd-uhs-sdr50;
210	sd-uhs-sdr104;
211	status = "okay";
212};
213
214&sdhi3 {
215	pinctrl-0 = <&sdhi3_pins>;
216	pinctrl-1 = <&sdhi3_pins>;
217	pinctrl-names = "default", "state_uhs";
218
219	vmmc-supply = <&reg_3p3v>;
220	vqmmc-supply = <&reg_1p8v>;
221	bus-width = <8>;
222	mmc-hs200-1_8v;
223	non-removable;
224	fixed-emmc-driver-type = <1>;
225};
226
227&usb_extal_clk {
228	clock-frequency = <50000000>;
229};
230
231&usb2_phy0 {
232	pinctrl-0 = <&usb0_pins>;
233	pinctrl-names = "default";
234
235	vbus-supply = <&vbus0_usb2>;
236	status = "okay";
237};
238
239&usb2_phy1 {
240	pinctrl-0 = <&usb1_pins>;
241	pinctrl-names = "default";
242
243	status = "okay";
244};
245
246&usb3_peri0 {
247	phys = <&usb3_phy0>;
248	phy-names = "usb";
249
250	companion = <&xhci0>;
251
252	status = "okay";
253};
254
255&usb3_phy0 {
256	status = "okay";
257};
258
259&usb3s0_clk {
260	clock-frequency = <100000000>;
261};
262
263&xhci0 {
264	pinctrl-0 = <&usb30_pins>;
265	pinctrl-names = "default";
266
267	status = "okay";
268};
269