forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-01-31 f9004dbfff8a3fbbd7e2a88c8a4327c7f2f8e5b2
kernel/arch/arm/boot/dts/r8a77470-iwg23s-sbc.dts
....@@ -6,6 +6,7 @@
66 */
77
88 /dts-v1/;
9
+#include <dt-bindings/gpio/gpio.h>
910 #include "r8a77470.dtsi"
1011 / {
1112 model = "iWave iW-RainboW-G23S single board computer based on RZ/G1C";
....@@ -17,17 +18,61 @@
1718 };
1819
1920 chosen {
20
- bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp";
21
+ bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
2122 stdout-path = "serial1:115200n8";
23
+ };
24
+
25
+ hdmi-out {
26
+ compatible = "hdmi-connector";
27
+ type = "a";
28
+
29
+ port {
30
+ hdmi_con: endpoint {
31
+ remote-endpoint = <&bridge_out>;
32
+ };
33
+ };
2234 };
2335
2436 memory@40000000 {
2537 device_type = "memory";
2638 reg = <0 0x40000000 0 0x20000000>;
2739 };
40
+
41
+ reg_1p8v: reg-1p8v {
42
+ compatible = "regulator-fixed";
43
+ regulator-name = "fixed-1.8V";
44
+ regulator-min-microvolt = <1800000>;
45
+ regulator-max-microvolt = <1800000>;
46
+ regulator-boot-on;
47
+ regulator-always-on;
48
+ };
49
+
50
+ reg_3p3v: reg-3p3v {
51
+ compatible = "regulator-fixed";
52
+ regulator-name = "fixed-3.3V";
53
+ regulator-min-microvolt = <3300000>;
54
+ regulator-max-microvolt = <3300000>;
55
+ regulator-boot-on;
56
+ regulator-always-on;
57
+ };
58
+
59
+ vccq_sdhi2: regulator-vccq-sdhi2 {
60
+ compatible = "regulator-gpio";
61
+
62
+ regulator-name = "SDHI2 VccQ";
63
+ regulator-min-microvolt = <1800000>;
64
+ regulator-max-microvolt = <3300000>;
65
+
66
+ gpios = <&gpio2 24 GPIO_ACTIVE_HIGH>;
67
+ gpios-states = <1>;
68
+ states = <3300000 1>, <1800000 0>;
69
+ };
2870 };
2971
3072 &avb {
73
+ pinctrl-0 = <&avb_pins>;
74
+ pinctrl-names = "default";
75
+
3176 phy-handle = <&phy3>;
3277 phy-mode = "gmii";
3378 renesas,no-ether-link;
....@@ -35,14 +80,240 @@
3580
3681 phy3: ethernet-phy@3 {
3782 reg = <3>;
83
+ interrupt-parent = <&gpio5>;
84
+ interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
3885 micrel,led-mode = <1>;
3986 };
87
+};
88
+
89
+&cmt0 {
90
+ status = "okay";
91
+};
92
+
93
+&du {
94
+ pinctrl-0 = <&du0_pins>;
95
+ pinctrl-names = "default";
96
+
97
+ status = "okay";
98
+
99
+ ports {
100
+ port@0 {
101
+ endpoint {
102
+ remote-endpoint = <&bridge_in>;
103
+ };
104
+ };
105
+ };
106
+};
107
+
108
+&ehci1 {
109
+ status = "okay";
40110 };
41111
42112 &extal_clk {
43113 clock-frequency = <20000000>;
44114 };
45115
116
+&gpio2 {
117
+ interrupt-fixup {
118
+ gpio-hog;
119
+ gpios = <29 GPIO_ACTIVE_HIGH>;
120
+ line-name = "hdmi-hpd-int";
121
+ input;
122
+ };
123
+};
124
+
125
+&hsusb0 {
126
+ status = "okay";
127
+};
128
+
129
+&i2c3 {
130
+ pinctrl-0 = <&i2c3_pins>;
131
+ pinctrl-names = "default";
132
+
133
+ status = "okay";
134
+ clock-frequency = <400000>;
135
+
136
+ rtc@51 {
137
+ compatible = "nxp,pcf85263";
138
+ reg = <0x51>;
139
+ };
140
+};
141
+
142
+&i2c4 {
143
+ pinctrl-0 = <&i2c4_pins>;
144
+ pinctrl-names = "default";
145
+
146
+ status = "okay";
147
+ clock-frequency = <100000>;
148
+
149
+ hdmi@39 {
150
+ compatible = "sil,sii9022";
151
+ reg = <0x39>;
152
+ interrupt-parent = <&gpio2>;
153
+ interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
154
+
155
+ ports {
156
+ #address-cells = <1>;
157
+ #size-cells = <0>;
158
+
159
+ port@0 {
160
+ reg = <0>;
161
+ bridge_in: endpoint {
162
+ remote-endpoint = <&du_out_rgb0>;
163
+ };
164
+ };
165
+
166
+ port@1 {
167
+ reg = <1>;
168
+ bridge_out: endpoint {
169
+ remote-endpoint = <&hdmi_con>;
170
+ };
171
+ };
172
+ };
173
+ };
174
+};
175
+
176
+&ohci1 {
177
+ status = "okay";
178
+};
179
+
180
+&pfc {
181
+ avb_pins: avb {
182
+ groups = "avb_mdio", "avb_gmii_tx_rx";
183
+ function = "avb";
184
+ };
185
+
186
+ du0_pins: du0 {
187
+ groups = "du0_rgb888", "du0_sync", "du0_disp", "du0_clk0_out";
188
+ function = "du0";
189
+ };
190
+
191
+ i2c4_pins: i2c4 {
192
+ groups = "i2c4_e";
193
+ function = "i2c4";
194
+ };
195
+
196
+ i2c3_pins: i2c3 {
197
+ groups = "i2c3_c";
198
+ function = "i2c3";
199
+ };
200
+
201
+ mmc_pins_uhs: mmc_uhs {
202
+ groups = "mmc_data8", "mmc_ctrl";
203
+ function = "mmc";
204
+ power-source = <1800>;
205
+ };
206
+
207
+ qspi0_pins: qspi0 {
208
+ groups = "qspi0_ctrl", "qspi0_data2";
209
+ function = "qspi0";
210
+ };
211
+
212
+ scif1_pins: scif1 {
213
+ groups = "scif1_data_b";
214
+ function = "scif1";
215
+ };
216
+
217
+ sdhi2_pins: sd2 {
218
+ groups = "sdhi2_data4", "sdhi2_ctrl";
219
+ function = "sdhi2";
220
+ power-source = <3300>;
221
+ };
222
+
223
+ sdhi2_pins_uhs: sd2_uhs {
224
+ groups = "sdhi2_data4", "sdhi2_ctrl";
225
+ function = "sdhi2";
226
+ power-source = <1800>;
227
+ };
228
+
229
+ usb0_pins: usb0 {
230
+ groups = "usb0";
231
+ function = "usb0";
232
+ };
233
+
234
+ usb1_pins: usb1 {
235
+ groups = "usb1";
236
+ function = "usb1";
237
+ };
238
+};
239
+
240
+&qspi0 {
241
+ pinctrl-0 = <&qspi0_pins>;
242
+ pinctrl-names = "default";
243
+
244
+ status = "okay";
245
+
246
+ /* WARNING - This device contains the bootloader. Handle with care. */
247
+ flash: flash@0 {
248
+ #address-cells = <1>;
249
+ #size-cells = <1>;
250
+ compatible = "issi,is25lp016d", "jedec,spi-nor";
251
+ reg = <0>;
252
+ spi-max-frequency = <133000000>;
253
+ spi-tx-bus-width = <1>;
254
+ spi-rx-bus-width = <1>;
255
+ m25p,fast-read;
256
+ spi-cpol;
257
+ spi-cpha;
258
+ };
259
+};
260
+
261
+&rwdt {
262
+ timeout-sec = <60>;
263
+ status = "okay";
264
+};
265
+
46266 &scif1 {
267
+ pinctrl-0 = <&scif1_pins>;
268
+ pinctrl-names = "default";
269
+
270
+ status = "okay";
271
+};
272
+
273
+&sdhi1 {
274
+ pinctrl-0 = <&mmc_pins_uhs>;
275
+ pinctrl-names = "state_uhs";
276
+
277
+ vmmc-supply = <&reg_3p3v>;
278
+ vqmmc-supply = <&reg_1p8v>;
279
+ bus-width = <8>;
280
+ mmc-hs200-1_8v;
281
+ non-removable;
282
+ fixed-emmc-driver-type = <1>;
283
+ status = "okay";
284
+};
285
+
286
+&sdhi2 {
287
+ pinctrl-0 = <&sdhi2_pins>;
288
+ pinctrl-1 = <&sdhi2_pins_uhs>;
289
+ pinctrl-names = "default", "state_uhs";
290
+
291
+ vmmc-supply = <&reg_3p3v>;
292
+ vqmmc-supply = <&vccq_sdhi2>;
293
+ bus-width = <4>;
294
+ cd-gpios = <&gpio4 20 GPIO_ACTIVE_LOW>;
295
+ sd-uhs-sdr50;
296
+ status = "okay";
297
+};
298
+
299
+&usb2_phy0 {
300
+ status = "okay";
301
+};
302
+
303
+&usb2_phy1 {
304
+ status = "okay";
305
+};
306
+
307
+&usbphy0 {
308
+ pinctrl-0 = <&usb0_pins>;
309
+ pinctrl-names = "default";
310
+
311
+ status = "okay";
312
+};
313
+
314
+&usbphy1 {
315
+ pinctrl-0 = <&usb1_pins>;
316
+ pinctrl-names = "default";
317
+
47318 status = "okay";
48319 };