Linux Audio

Check our new training course

Embedded Linux training

Mar 31-Apr 8, 2025
Register
Loading...
v6.2
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Device Tree Source for the iWave-RZ/G1C single board computer
  4 *
  5 * Copyright (C) 2018 Renesas Electronics Corp.
  6 */
  7
  8/dts-v1/;
  9#include <dt-bindings/gpio/gpio.h>
 10#include "r8a77470.dtsi"
 11/ {
 12	model = "iWave iW-RainboW-G23S single board computer based on RZ/G1C";
 13	compatible = "iwave,g23s", "renesas,r8a77470";
 14
 15	aliases {
 16		ethernet0 = &avb;
 17		serial1 = &scif1;
 18	};
 19
 20	chosen {
 21		bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
 22		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		};
 34	};
 35
 36	memory@40000000 {
 37		device_type = "memory";
 38		reg = <0 0x40000000 0 0x20000000>;
 39	};
 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	};
 70};
 71
 72&avb {
 73	pinctrl-0 = <&avb_pins>;
 74	pinctrl-names = "default";
 75
 76	phy-handle = <&phy3>;
 77	phy-mode = "gmii";
 78	renesas,no-ether-link;
 79	status = "okay";
 80
 81	phy3: ethernet-phy@3 {
 82		compatible = "ethernet-phy-id0022.1622",
 83			     "ethernet-phy-ieee802.3-c22";
 84		reg = <3>;
 85		interrupt-parent = <&gpio5>;
 86		interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
 87		micrel,led-mode = <1>;
 88	};
 89};
 90
 91&cmt0 {
 92	status = "okay";
 93};
 94
 95&du {
 96	pinctrl-0 = <&du0_pins>;
 97	pinctrl-names = "default";
 98
 99	status = "okay";
100
101	ports {
102		port@0 {
103			endpoint {
104				remote-endpoint = <&bridge_in>;
105			};
106		};
107	};
108};
109
110&ehci1 {
111	status = "okay";
112};
113
114&extal_clk {
115	clock-frequency = <20000000>;
116};
117
118&gpio2 {
119	interrupt-fixup-hog {
120		gpio-hog;
121		gpios = <29 GPIO_ACTIVE_HIGH>;
122		line-name = "hdmi-hpd-int";
123		input;
124	};
125};
126
127&hsusb0 {
128	status = "okay";
129};
130
131&i2c3 {
132	pinctrl-0 = <&i2c3_pins>;
133	pinctrl-names = "default";
134
135	status = "okay";
136	clock-frequency = <400000>;
137
138	rtc@51 {
139		compatible = "nxp,pcf85263";
140		reg = <0x51>;
141	};
142};
143
144&i2c4 {
145	pinctrl-0 = <&i2c4_pins>;
146	pinctrl-names = "default";
147
148	status = "okay";
149	clock-frequency = <100000>;
150
151	hdmi@39 {
152		compatible = "sil,sii9022";
153		reg = <0x39>;
154		interrupt-parent = <&gpio2>;
155		interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
156
157		ports {
158			#address-cells = <1>;
159			#size-cells = <0>;
160
161			port@0 {
162				reg = <0>;
163				bridge_in: endpoint {
164					remote-endpoint = <&du_out_rgb0>;
165				};
166			};
167
168			port@1 {
169				reg = <1>;
170				bridge_out: endpoint {
171					remote-endpoint = <&hdmi_con>;
172				};
173			};
174		};
175	};
176};
177
178&ohci1 {
179	status = "okay";
180};
181
182&pfc {
183	avb_pins: avb {
184		groups = "avb_mdio", "avb_gmii_tx_rx";
185		function = "avb";
186	};
187
188	du0_pins: du0 {
189		groups = "du0_rgb888", "du0_sync", "du0_disp", "du0_clk0_out";
190		function = "du0";
191	};
192
193	i2c4_pins: i2c4 {
194		groups = "i2c4_e";
195		function = "i2c4";
196	};
197
198	i2c3_pins: i2c3 {
199		groups = "i2c3_c";
200		function = "i2c3";
201	};
202
203	mmc_pins_uhs: mmc_uhs {
204		groups = "mmc_data8", "mmc_ctrl";
205		function = "mmc";
206		power-source = <1800>;
207	};
208
209	qspi0_pins: qspi0 {
210		groups = "qspi0_ctrl", "qspi0_data2";
211		function = "qspi0";
212	};
213
214	scif1_pins: scif1 {
215		groups = "scif1_data_b";
216		function = "scif1";
217	};
218
219	sdhi2_pins: sd2 {
220		groups = "sdhi2_data4", "sdhi2_ctrl";
221		function = "sdhi2";
222		power-source = <3300>;
223	};
224
225	sdhi2_pins_uhs: sd2_uhs {
226		groups = "sdhi2_data4", "sdhi2_ctrl";
227		function = "sdhi2";
228		power-source = <1800>;
229	};
230
231	usb0_pins: usb0 {
232		groups = "usb0";
233		function = "usb0";
234	};
235
236	usb1_pins: usb1 {
237		groups = "usb1";
238		function = "usb1";
239	};
240};
241
242&qspi0 {
243	pinctrl-0 = <&qspi0_pins>;
244	pinctrl-names = "default";
245
246	status = "okay";
247
248	/* WARNING - This device contains the bootloader. Handle with care. */
249	flash: flash@0 {
250		#address-cells = <1>;
251		#size-cells = <1>;
252		compatible = "issi,is25lp016d", "jedec,spi-nor";
253		reg = <0>;
254		spi-max-frequency = <133000000>;
255		spi-tx-bus-width = <1>;
256		spi-rx-bus-width = <1>;
257		m25p,fast-read;
258		spi-cpol;
259		spi-cpha;
260	};
261};
262
263&rwdt {
264	timeout-sec = <60>;
265	status = "okay";
266};
267
268&scif1 {
269	pinctrl-0 = <&scif1_pins>;
270	pinctrl-names = "default";
271
272	status = "okay";
273};
274
275&sdhi1 {
276	pinctrl-0 = <&mmc_pins_uhs>;
277	pinctrl-names = "state_uhs";
278
279	vmmc-supply = <&reg_3p3v>;
280	vqmmc-supply = <&reg_1p8v>;
281	bus-width = <8>;
282	mmc-hs200-1_8v;
283	non-removable;
284	fixed-emmc-driver-type = <1>;
285	status = "okay";
286};
287
288&sdhi2 {
289	pinctrl-0 = <&sdhi2_pins>;
290	pinctrl-1 = <&sdhi2_pins_uhs>;
291	pinctrl-names = "default", "state_uhs";
292
293	vmmc-supply = <&reg_3p3v>;
294	vqmmc-supply = <&vccq_sdhi2>;
295	bus-width = <4>;
296	cd-gpios = <&gpio4 20 GPIO_ACTIVE_LOW>;
297	sd-uhs-sdr50;
298	status = "okay";
299};
300
301&usb2_phy0 {
302	status = "okay";
303};
304
305&usb2_phy1 {
306	status = "okay";
307};
308
309&usbphy0 {
310	pinctrl-0 = <&usb0_pins>;
311	pinctrl-names = "default";
312
313	status = "okay";
314};
315
316&usbphy1 {
317	pinctrl-0 = <&usb1_pins>;
318	pinctrl-names = "default";
319
320	status = "okay";
321};
v5.4
  1// SPDX-License-Identifier: GPL-2.0
  2/*
  3 * Device Tree Source for the iWave-RZ/G1C single board computer
  4 *
  5 * Copyright (C) 2018 Renesas Electronics Corp.
  6 */
  7
  8/dts-v1/;
  9#include <dt-bindings/gpio/gpio.h>
 10#include "r8a77470.dtsi"
 11/ {
 12	model = "iWave iW-RainboW-G23S single board computer based on RZ/G1C";
 13	compatible = "iwave,g23s", "renesas,r8a77470";
 14
 15	aliases {
 16		ethernet0 = &avb;
 17		serial1 = &scif1;
 18	};
 19
 20	chosen {
 21		bootargs = "ignore_loglevel rw root=/dev/nfs ip=on";
 22		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		};
 34	};
 35
 36	memory@40000000 {
 37		device_type = "memory";
 38		reg = <0 0x40000000 0 0x20000000>;
 39	};
 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
 69			  1800000 0>;
 70	};
 71};
 72
 73&avb {
 74	pinctrl-0 = <&avb_pins>;
 75	pinctrl-names = "default";
 76
 77	phy-handle = <&phy3>;
 78	phy-mode = "gmii";
 79	renesas,no-ether-link;
 80	status = "okay";
 81
 82	phy3: ethernet-phy@3 {
 
 
 83		reg = <3>;
 84		interrupt-parent = <&gpio5>;
 85		interrupts = <16 IRQ_TYPE_LEVEL_LOW>;
 86		micrel,led-mode = <1>;
 87	};
 88};
 89
 90&cmt0 {
 91	status = "okay";
 92};
 93
 94&du {
 95	pinctrl-0 = <&du0_pins>;
 96	pinctrl-names = "default";
 97
 98	status = "okay";
 99
100	ports {
101		port@0 {
102			endpoint {
103				remote-endpoint = <&bridge_in>;
104			};
105		};
106	};
107};
108
109&ehci1 {
110	status = "okay";
111};
112
113&extal_clk {
114	clock-frequency = <20000000>;
115};
116
117&gpio2 {
118	interrupt-fixup {
119		gpio-hog;
120		gpios = <29 GPIO_ACTIVE_HIGH>;
121		line-name = "hdmi-hpd-int";
122		input;
123	};
124};
125
126&hsusb0 {
127	status = "okay";
128};
129
130&i2c3 {
131	pinctrl-0 = <&i2c3_pins>;
132	pinctrl-names = "default";
133
134	status = "okay";
135	clock-frequency = <400000>;
136
137	rtc@51 {
138		compatible = "nxp,pcf85263";
139		reg = <0x51>;
140	};
141};
142
143&i2c4 {
144	pinctrl-0 = <&i2c4_pins>;
145	pinctrl-names = "default";
146
147	status = "okay";
148	clock-frequency = <100000>;
149
150	hdmi@39 {
151		compatible = "sil,sii9022";
152		reg = <0x39>;
153		interrupt-parent = <&gpio2>;
154		interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
155
156		ports {
157			#address-cells = <1>;
158			#size-cells = <0>;
159
160			port@0 {
161				reg = <0>;
162				bridge_in: endpoint {
163					remote-endpoint = <&du_out_rgb0>;
164				};
165			};
166
167			port@1 {
168				reg = <1>;
169				bridge_out: endpoint {
170					remote-endpoint = <&hdmi_con>;
171				};
172			};
173		};
174	};
175};
176
177&ohci1 {
178	status = "okay";
179};
180
181&pfc {
182	avb_pins: avb {
183		groups = "avb_mdio", "avb_gmii_tx_rx";
184		function = "avb";
185	};
186
187	du0_pins: du0 {
188		groups = "du0_rgb888", "du0_sync", "du0_disp", "du0_clk0_out";
189		function = "du0";
190	};
191
192	i2c4_pins: i2c4 {
193		groups = "i2c4_e";
194		function = "i2c4";
195	};
196
197	i2c3_pins: i2c3 {
198		groups = "i2c3_c";
199		function = "i2c3";
200	};
201
202	mmc_pins_uhs: mmc_uhs {
203		groups = "mmc_data8", "mmc_ctrl";
204		function = "mmc";
205		power-source = <1800>;
206	};
207
208	qspi0_pins: qspi0 {
209		groups = "qspi0_ctrl", "qspi0_data2";
210		function = "qspi0";
211	};
212
213	scif1_pins: scif1 {
214		groups = "scif1_data_b";
215		function = "scif1";
216	};
217
218	sdhi2_pins: sd2 {
219		groups = "sdhi2_data4", "sdhi2_ctrl";
220		function = "sdhi2";
221		power-source = <3300>;
222	};
223
224	sdhi2_pins_uhs: sd2_uhs {
225		groups = "sdhi2_data4", "sdhi2_ctrl";
226		function = "sdhi2";
227		power-source = <1800>;
228	};
229
230	usb0_pins: usb0 {
231		groups = "usb0";
232		function = "usb0";
233	};
234
235	usb1_pins: usb1 {
236		groups = "usb1";
237		function = "usb1";
238	};
239};
240
241&qspi0 {
242	pinctrl-0 = <&qspi0_pins>;
243	pinctrl-names = "default";
244
245	status = "okay";
246
247	/* WARNING - This device contains the bootloader. Handle with care. */
248	flash: flash@0 {
249		#address-cells = <1>;
250		#size-cells = <1>;
251		compatible = "issi,is25lp016d", "jedec,spi-nor";
252		reg = <0>;
253		spi-max-frequency = <133000000>;
254		spi-tx-bus-width = <1>;
255		spi-rx-bus-width = <1>;
256		m25p,fast-read;
257		spi-cpol;
258		spi-cpha;
259	};
260};
261
262&rwdt {
263	timeout-sec = <60>;
264	status = "okay";
265};
266
267&scif1 {
268	pinctrl-0 = <&scif1_pins>;
269	pinctrl-names = "default";
270
271	status = "okay";
272};
273
274&sdhi1 {
275	pinctrl-0 = <&mmc_pins_uhs>;
276	pinctrl-names = "state_uhs";
277
278	vmmc-supply = <&reg_3p3v>;
279	vqmmc-supply = <&reg_1p8v>;
280	bus-width = <8>;
281	mmc-hs200-1_8v;
282	non-removable;
283	fixed-emmc-driver-type = <1>;
284	status = "okay";
285};
286
287&sdhi2 {
288	pinctrl-0 = <&sdhi2_pins>;
289	pinctrl-1 = <&sdhi2_pins_uhs>;
290	pinctrl-names = "default", "state_uhs";
291
292	vmmc-supply = <&reg_3p3v>;
293	vqmmc-supply = <&vccq_sdhi2>;
294	bus-width = <4>;
295	cd-gpios = <&gpio4 20 GPIO_ACTIVE_LOW>;
296	sd-uhs-sdr50;
297	status = "okay";
298};
299
300&usb2_phy0 {
301	status = "okay";
302};
303
304&usb2_phy1 {
305	status = "okay";
306};
307
308&usbphy0 {
309	pinctrl-0 = <&usb0_pins>;
310	pinctrl-names = "default";
311
312	status = "okay";
313};
314
315&usbphy1 {
316	pinctrl-0 = <&usb1_pins>;
317	pinctrl-names = "default";
318
319	status = "okay";
320};