blob: abfda5c6ca16922ed74c3286c8a94244407d5113 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001// SPDX-License-Identifier: (GPL-2.0 OR MIT)
2/*
3 * Device Tree Source for the R-Car S4 Starter Kit board
4 *
5 * Copyright (C) 2023 Renesas Electronics Corp.
6 */
7
8/dts-v1/;
9#include <dt-bindings/gpio/gpio.h>
10#include "r8a779f4.dtsi"
11
12/ {
13 model = "R-Car S4 Starter Kit board";
14 compatible = "renesas,s4sk", "renesas,r8a779f4", "renesas,r8a779f0";
15
16 aliases {
17 serial0 = &hscif0;
18 serial1 = &hscif1;
19 eth0 = &rswitch;
20 };
21
22 chosen {
23 bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
24 stdout-path = "serial0:921600n8";
25 };
26
27 memory@48000000 {
28 device_type = "memory";
29 /* first 128MB is reserved for secure area. */
30 /* The last 512MB is reserved for CR. */
31 reg = <0x0 0x48000000 0x0 0x58000000>;
32 };
33
34 memory@480000000 {
35 device_type = "memory";
36 reg = <0x4 0x80000000 0x0 0x80000000>;
37 };
38
39 vcc_sdhi: regulator-vcc-sdhi {
40 compatible = "regulator-fixed";
41 regulator-name = "SDHI Vcc";
42 regulator-min-microvolt = <3300000>;
43 regulator-max-microvolt = <3300000>;
44 gpio = <&gpio1 24 GPIO_ACTIVE_HIGH>;
45 enable-active-high;
46 };
47};
48
49&eth_serdes {
50 status = "okay";
51};
52
53&extal_clk {
54 clock-frequency = <20000000>;
55};
56
57&extalr_clk {
58 clock-frequency = <32768>;
59};
60
61&hscif0 {
62 pinctrl-0 = <&hscif0_pins>;
63 pinctrl-names = "default";
64
65 uart-has-rtscts;
66 status = "okay";
67};
68
69&hscif1 {
70 pinctrl-0 = <&hscif1_pins>;
71 pinctrl-names = "default";
72
73 uart-has-rtscts;
74 status = "okay";
75};
76
77&i2c2 {
78 pinctrl-0 = <&i2c2_pins>;
79 pinctrl-names = "default";
80
81 status = "okay";
82 clock-frequency = <400000>;
83};
84
85&i2c4 {
86 pinctrl-0 = <&i2c4_pins>;
87 pinctrl-names = "default";
88
89 status = "okay";
90 clock-frequency = <400000>;
91};
92
93&i2c5 {
94 pinctrl-0 = <&i2c5_pins>;
95 pinctrl-names = "default";
96
97 status = "okay";
98 clock-frequency = <400000>;
99
100 eeprom@50 {
101 compatible = "st,24c16", "atmel,24c16";
102 reg = <0x50>;
103 pagesize = <16>;
104 };
105};
106
107&mmc0 {
108 pinctrl-0 = <&sd_pins>;
109 pinctrl-names = "default";
110
111 vmmc-supply = <&vcc_sdhi>;
112 cd-gpios = <&gpio1 23 GPIO_ACTIVE_LOW>;
113 bus-width = <4>;
114 status = "okay";
115};
116
117&pfc {
118 pinctrl-0 = <&scif_clk_pins>;
119 pinctrl-names = "default";
120
121 hscif0_pins: hscif0 {
122 groups = "hscif0_data", "hscif0_ctrl";
123 function = "hscif0";
124 };
125
126 hscif1_pins: hscif1 {
127 groups = "hscif1_data", "hscif1_ctrl";
128 function = "hscif1";
129 };
130
131 i2c2_pins: i2c2 {
132 groups = "i2c2";
133 function = "i2c2";
134 };
135
136 i2c4_pins: i2c4 {
137 groups = "i2c4";
138 function = "i2c4";
139 };
140
141 i2c5_pins: i2c5 {
142 groups = "i2c5";
143 function = "i2c5";
144 };
145
146 scif_clk_pins: scif_clk {
147 groups = "scif_clk";
148 function = "scif_clk";
149 };
150
151 sd_pins: sd {
152 groups = "mmc_data4", "mmc_ctrl";
153 function = "mmc";
154 power-source = <3300>;
155 };
156
157 tsn0_pins: tsn0 {
158 groups = "tsn0_mdio_b", "tsn0_link_b";
159 function = "tsn0";
160 drive-strength = <18>;
161 power-source = <3300>;
162 };
163
164 tsn1_pins: tsn1 {
165 groups = "tsn1_mdio_b", "tsn1_link_b";
166 function = "tsn1";
167 drive-strength = <18>;
168 power-source = <3300>;
169 };
170};
171
172&rswitch {
173 pinctrl-0 = <&tsn0_pins>, <&tsn1_pins>;
174 pinctrl-names = "default";
175 status = "okay";
176
177 ethernet-ports {
178 #address-cells = <1>;
179 #size-cells = <0>;
180
181 port@0 {
182 reg = <0>;
183 phy-handle = <&ic99>;
184 phy-mode = "sgmii";
185 phys = <&eth_serdes 0>;
186
187 mdio {
188 #address-cells = <1>;
189 #size-cells = <0>;
190
191 ic99: ethernet-phy@1 {
192 reg = <1>;
193 compatible = "ethernet-phy-ieee802.3-c45";
194 interrupt-parent = <&gpio3>;
195 interrupts = <10 IRQ_TYPE_LEVEL_LOW>;
196 };
197 };
198 };
199
200 port@1 {
201 reg = <1>;
202 phy-handle = <&ic102>;
203 phy-mode = "sgmii";
204 phys = <&eth_serdes 1>;
205
206 mdio {
207 #address-cells = <1>;
208 #size-cells = <0>;
209
210 ic102: ethernet-phy@2 {
211 reg = <2>;
212 compatible = "ethernet-phy-ieee802.3-c45";
213 interrupt-parent = <&gpio3>;
214 interrupts = <11 IRQ_TYPE_LEVEL_LOW>;
215 };
216 };
217 };
218
219 port@2 {
220 status = "disabled";
221 };
222 };
223};
224
225&rwdt {
226 timeout-sec = <60>;
227 status = "okay";
228};
229
230&scif_clk {
231 clock-frequency = <24000000>;
232};
233
234&ufs {
235 status = "okay";
236};
237
238&ufs30_clk {
239 clock-frequency = <38400000>;
240};