xref: /linux/arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts (revision 306bee64b73c92f43df46db7e92621f3309fd28b)
1// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2/*
3 * Device Tree Source for the R-Car V4M Gray Hawk Single board
4 *
5 * Copyright (C) 2023 Renesas Electronics Corp.
6 * Copyright (C) 2024 Glider bv
7 */
8
9/dts-v1/;
10
11#include <dt-bindings/gpio/gpio.h>
12
13#include "r8a779h0.dtsi"
14
15/ {
16	model = "Renesas Gray Hawk Single board based on r8a779h0";
17	compatible = "renesas,gray-hawk-single", "renesas,r8a779h0";
18
19	aliases {
20		serial0 = &hscif0;
21		ethernet0 = &avb0;
22	};
23
24	chosen {
25		bootargs = "ignore_loglevel";
26		stdout-path = "serial0:921600n8";
27	};
28
29	memory@48000000 {
30		device_type = "memory";
31		/* first 128MB is reserved for secure area. */
32		reg = <0x0 0x48000000 0x0 0x78000000>;
33	};
34
35	memory@480000000 {
36		device_type = "memory";
37		reg = <0x4 0x80000000 0x1 0x80000000>;
38	};
39
40	reg_1p8v: regulator-1p8v {
41			compatible = "regulator-fixed";
42			regulator-name = "fixed-1.8V";
43			regulator-min-microvolt = <1800000>;
44			regulator-max-microvolt = <1800000>;
45			regulator-boot-on;
46			regulator-always-on;
47	};
48
49	reg_3p3v: regulator-3p3v {
50			compatible = "regulator-fixed";
51			regulator-name = "fixed-3.3V";
52			regulator-min-microvolt = <3300000>;
53			regulator-max-microvolt = <3300000>;
54			regulator-boot-on;
55			regulator-always-on;
56	};
57};
58
59&avb0 {
60	pinctrl-0 = <&avb0_pins>;
61	pinctrl-names = "default";
62	phy-handle = <&phy0>;
63	tx-internal-delay-ps = <2000>;
64	status = "okay";
65
66	phy0: ethernet-phy@0 {
67		compatible = "ethernet-phy-id0022.1622",
68			     "ethernet-phy-ieee802.3-c22";
69		rxc-skew-ps = <1500>;
70		reg = <0>;
71		interrupt-parent = <&gpio7>;
72		interrupts = <5 IRQ_TYPE_LEVEL_LOW>;
73		reset-gpios = <&gpio7 10 GPIO_ACTIVE_LOW>;
74	};
75};
76
77&extal_clk {
78	clock-frequency = <16666666>;
79};
80
81&extalr_clk {
82	clock-frequency = <32768>;
83};
84
85&hscif0 {
86	pinctrl-0 = <&hscif0_pins>;
87	pinctrl-names = "default";
88
89	uart-has-rtscts;
90	status = "okay";
91};
92
93&i2c0 {
94	pinctrl-0 = <&i2c0_pins>;
95	pinctrl-names = "default";
96
97	status = "okay";
98	clock-frequency = <400000>;
99
100	eeprom@50 {
101		compatible = "rohm,br24g01", "atmel,24c01";
102		label = "cpu-board";
103		reg = <0x50>;
104		pagesize = <8>;
105	};
106
107	eeprom@51 {
108		compatible = "rohm,br24g01", "atmel,24c01";
109		label = "breakout-board";
110		reg = <0x51>;
111		pagesize = <8>;
112	};
113
114	eeprom@52 {
115		compatible = "rohm,br24g01", "atmel,24c01";
116		label = "csi-dsi-sub-board-id";
117		reg = <0x52>;
118		pagesize = <8>;
119	};
120
121	eeprom@53 {
122		compatible = "rohm,br24g01", "atmel,24c01";
123		label = "ethernet-sub-board-id";
124		reg = <0x53>;
125		pagesize = <8>;
126	};
127};
128
129&mmc0 {
130	pinctrl-0 = <&mmc_pins>;
131	pinctrl-1 = <&mmc_pins>;
132	pinctrl-names = "default", "state_uhs";
133
134	vmmc-supply = <&reg_3p3v>;
135	vqmmc-supply = <&reg_1p8v>;
136	mmc-hs200-1_8v;
137	mmc-hs400-1_8v;
138	bus-width = <8>;
139	no-sd;
140	no-sdio;
141	non-removable;
142	full-pwr-cycle-in-suspend;
143	status = "okay";
144};
145
146&pfc {
147	pinctrl-0 = <&scif_clk_pins>;
148	pinctrl-names = "default";
149
150	avb0_pins: avb0 {
151		mux {
152			groups = "avb0_link", "avb0_mdio", "avb0_rgmii",
153				 "avb0_txcrefclk";
154			function = "avb0";
155		};
156
157		pins_mdio {
158			groups = "avb0_mdio";
159			drive-strength = <21>;
160		};
161
162		pins_mii {
163			groups = "avb0_rgmii";
164			drive-strength = <21>;
165		};
166	};
167
168	hscif0_pins: hscif0 {
169		groups = "hscif0_data", "hscif0_ctrl";
170		function = "hscif0";
171	};
172
173	i2c0_pins: i2c0 {
174		groups = "i2c0";
175		function = "i2c0";
176	};
177
178	mmc_pins: mmc {
179		groups = "mmc_data8", "mmc_ctrl", "mmc_ds";
180		function = "mmc";
181		power-source = <1800>;
182	};
183
184	qspi0_pins: qspi0 {
185		groups = "qspi0_ctrl", "qspi0_data4";
186		function = "qspi0";
187	};
188
189	scif_clk_pins: scif-clk {
190		groups = "scif_clk";
191		function = "scif_clk";
192	};
193};
194
195&rpc {
196	pinctrl-0 = <&qspi0_pins>;
197	pinctrl-names = "default";
198
199	status = "okay";
200
201	flash@0 {
202		compatible = "spansion,s25fs512s", "jedec,spi-nor";
203		reg = <0>;
204		spi-max-frequency = <40000000>;
205		spi-rx-bus-width = <4>;
206
207		partitions {
208			compatible = "fixed-partitions";
209			#address-cells = <1>;
210			#size-cells = <1>;
211
212			boot@0 {
213				reg = <0x0 0x1200000>;
214				read-only;
215			};
216			user@1200000 {
217				reg = <0x1200000 0x2e00000>;
218			};
219		};
220	};
221};
222
223&rwdt {
224	timeout-sec = <60>;
225	status = "okay";
226};
227
228&scif_clk {
229	clock-frequency = <24000000>;
230};
231