xref: /freebsd/sys/contrib/device-tree/src/arm64/renesas/rzg3e-smarc-som.dtsi (revision 833e5d42ab135b0238e61c5b3c19b8619677cbfa)
12846c905SEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
22846c905SEmmanuel Vadot/*
32846c905SEmmanuel Vadot * Device Tree Source for the R9A09G047E57 SMARC SoM board.
42846c905SEmmanuel Vadot *
52846c905SEmmanuel Vadot * Copyright (C) 2024 Renesas Electronics Corp.
62846c905SEmmanuel Vadot */
72846c905SEmmanuel Vadot
8ae5de77eSEmmanuel Vadot/*
9ae5de77eSEmmanuel Vadot * Please set the below switch position on the SoM and the corresponding macro
10ae5de77eSEmmanuel Vadot * on the board DTS:
11ae5de77eSEmmanuel Vadot *
12ae5de77eSEmmanuel Vadot * Switch position SYS.1, Macro SW_SD0_DEV_SEL:
13ae5de77eSEmmanuel Vadot *      0 - SD0 is connected to eMMC (default)
14ae5de77eSEmmanuel Vadot *      1 - SD0 is connected to uSD0 card
15ae5de77eSEmmanuel Vadot *
16ae5de77eSEmmanuel Vadot * Switch position SYS.5, Macro SW_LCD_EN:
17ae5de77eSEmmanuel Vadot *      0 - Select Misc. Signals routing
18ae5de77eSEmmanuel Vadot *      1 - Select LCD
19ae5de77eSEmmanuel Vadot *
20ae5de77eSEmmanuel Vadot * Switch position BOOT.6, Macro SW_PDM_EN:
21ae5de77eSEmmanuel Vadot *      0 - Select CAN routing
22ae5de77eSEmmanuel Vadot *      1 - Select PDM
23ae5de77eSEmmanuel Vadot */
24ae5de77eSEmmanuel Vadot
252846c905SEmmanuel Vadot/ {
262846c905SEmmanuel Vadot	compatible = "renesas,rzg3e-smarcm", "renesas,r9a09g047e57", "renesas,r9a09g047";
272846c905SEmmanuel Vadot
28ae5de77eSEmmanuel Vadot	aliases {
29*833e5d42SEmmanuel Vadot		ethernet0 = &eth0;
30*833e5d42SEmmanuel Vadot		ethernet1 = &eth1;
31ae5de77eSEmmanuel Vadot		i2c2 = &i2c2;
32ae5de77eSEmmanuel Vadot		mmc0 = &sdhi0;
33ae5de77eSEmmanuel Vadot		mmc2 = &sdhi2;
34ae5de77eSEmmanuel Vadot	};
35ae5de77eSEmmanuel Vadot
362846c905SEmmanuel Vadot	memory@48000000 {
372846c905SEmmanuel Vadot		device_type = "memory";
382846c905SEmmanuel Vadot		/* First 128MB is reserved for secure area. */
392846c905SEmmanuel Vadot		reg = <0x0 0x48000000 0x0 0xf8000000>;
402846c905SEmmanuel Vadot	};
41ae5de77eSEmmanuel Vadot
42ae5de77eSEmmanuel Vadot	reg_1p8v: regulator-1p8v {
43ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
44ae5de77eSEmmanuel Vadot		regulator-name = "fixed-1.8V";
45ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <1800000>;
46ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <1800000>;
47ae5de77eSEmmanuel Vadot		regulator-boot-on;
48ae5de77eSEmmanuel Vadot		regulator-always-on;
49ae5de77eSEmmanuel Vadot	};
50ae5de77eSEmmanuel Vadot
51ae5de77eSEmmanuel Vadot	reg_3p3v: regulator-3p3v {
52ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
53ae5de77eSEmmanuel Vadot		regulator-name = "fixed-3.3V";
54ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
55ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
56ae5de77eSEmmanuel Vadot		regulator-boot-on;
57ae5de77eSEmmanuel Vadot		regulator-always-on;
58ae5de77eSEmmanuel Vadot	};
59ae5de77eSEmmanuel Vadot
60ae5de77eSEmmanuel Vadot	reg_vdd0p8v_others: regulator-vdd0p8v-others {
61ae5de77eSEmmanuel Vadot		compatible = "regulator-fixed";
62ae5de77eSEmmanuel Vadot
63ae5de77eSEmmanuel Vadot		regulator-name = "fixed-0.8V";
64ae5de77eSEmmanuel Vadot		regulator-min-microvolt = <800000>;
65ae5de77eSEmmanuel Vadot		regulator-max-microvolt = <800000>;
66ae5de77eSEmmanuel Vadot		regulator-boot-on;
67ae5de77eSEmmanuel Vadot		regulator-always-on;
68ae5de77eSEmmanuel Vadot	};
69ae5de77eSEmmanuel Vadot
70ae5de77eSEmmanuel Vadot	/* 32.768kHz crystal */
71ae5de77eSEmmanuel Vadot	x3: x3-clock {
72ae5de77eSEmmanuel Vadot		compatible = "fixed-clock";
73ae5de77eSEmmanuel Vadot		#clock-cells = <0>;
74ae5de77eSEmmanuel Vadot		clock-frequency = <32768>;
75ae5de77eSEmmanuel Vadot	};
762846c905SEmmanuel Vadot};
772846c905SEmmanuel Vadot
782846c905SEmmanuel Vadot&audio_extal_clk {
792846c905SEmmanuel Vadot	clock-frequency = <48000000>;
802846c905SEmmanuel Vadot};
812846c905SEmmanuel Vadot
82*833e5d42SEmmanuel Vadot&eth0 {
83*833e5d42SEmmanuel Vadot	phy-handle = <&phy0>;
84*833e5d42SEmmanuel Vadot	phy-mode = "rgmii-id";
85*833e5d42SEmmanuel Vadot
86*833e5d42SEmmanuel Vadot	pinctrl-0 = <&eth0_pins>;
87*833e5d42SEmmanuel Vadot	pinctrl-names = "default";
88*833e5d42SEmmanuel Vadot	status = "okay";
89*833e5d42SEmmanuel Vadot};
90*833e5d42SEmmanuel Vadot
91*833e5d42SEmmanuel Vadot&eth1 {
92*833e5d42SEmmanuel Vadot	phy-handle = <&phy1>;
93*833e5d42SEmmanuel Vadot	phy-mode = "rgmii-id";
94*833e5d42SEmmanuel Vadot
95*833e5d42SEmmanuel Vadot	pinctrl-0 = <&eth1_pins>;
96*833e5d42SEmmanuel Vadot	pinctrl-names = "default";
97*833e5d42SEmmanuel Vadot	status = "okay";
98*833e5d42SEmmanuel Vadot};
99*833e5d42SEmmanuel Vadot
100ae5de77eSEmmanuel Vadot&gpu {
101ae5de77eSEmmanuel Vadot	status = "okay";
102ae5de77eSEmmanuel Vadot	mali-supply = <&reg_vdd0p8v_others>;
103ae5de77eSEmmanuel Vadot};
104ae5de77eSEmmanuel Vadot
105ae5de77eSEmmanuel Vadot&i2c2 {
106ae5de77eSEmmanuel Vadot	pinctrl-0 = <&i2c2_pins>;
107ae5de77eSEmmanuel Vadot	pinctrl-names = "default";
108ae5de77eSEmmanuel Vadot	clock-frequency = <400000>;
109ae5de77eSEmmanuel Vadot	status = "okay";
110ae5de77eSEmmanuel Vadot
111ae5de77eSEmmanuel Vadot	raa215300: pmic@12 {
112ae5de77eSEmmanuel Vadot		compatible = "renesas,raa215300";
113ae5de77eSEmmanuel Vadot		reg = <0x12>, <0x6f>;
114ae5de77eSEmmanuel Vadot		reg-names = "main", "rtc";
115ae5de77eSEmmanuel Vadot		clocks = <&x3>;
116ae5de77eSEmmanuel Vadot		clock-names = "xin";
117ae5de77eSEmmanuel Vadot
118ae5de77eSEmmanuel Vadot		pinctrl-0 = <&rtc_irq_pin>;
119ae5de77eSEmmanuel Vadot		pinctrl-names = "default";
120ae5de77eSEmmanuel Vadot
121ae5de77eSEmmanuel Vadot		interrupts-extended = <&pinctrl RZG3E_GPIO(S, 1) IRQ_TYPE_EDGE_FALLING>;
122ae5de77eSEmmanuel Vadot	};
123ae5de77eSEmmanuel Vadot};
124ae5de77eSEmmanuel Vadot
125*833e5d42SEmmanuel Vadot&mdio0 {
126*833e5d42SEmmanuel Vadot	phy0: ethernet-phy@7 {
127*833e5d42SEmmanuel Vadot		compatible = "ethernet-phy-id0022.1640",
128*833e5d42SEmmanuel Vadot			     "ethernet-phy-ieee802.3-c22";
129*833e5d42SEmmanuel Vadot		reg = <7>;
130*833e5d42SEmmanuel Vadot		interrupts-extended = <&icu 3 IRQ_TYPE_LEVEL_LOW>;
131*833e5d42SEmmanuel Vadot		rxc-skew-psec = <1400>;
132*833e5d42SEmmanuel Vadot		txc-skew-psec = <1400>;
133*833e5d42SEmmanuel Vadot		rxdv-skew-psec = <0>;
134*833e5d42SEmmanuel Vadot		txdv-skew-psec = <0>;
135*833e5d42SEmmanuel Vadot		rxd0-skew-psec = <0>;
136*833e5d42SEmmanuel Vadot		rxd1-skew-psec = <0>;
137*833e5d42SEmmanuel Vadot		rxd2-skew-psec = <0>;
138*833e5d42SEmmanuel Vadot		rxd3-skew-psec = <0>;
139*833e5d42SEmmanuel Vadot		txd0-skew-psec = <0>;
140*833e5d42SEmmanuel Vadot		txd1-skew-psec = <0>;
141*833e5d42SEmmanuel Vadot		txd2-skew-psec = <0>;
142*833e5d42SEmmanuel Vadot		txd3-skew-psec = <0>;
143*833e5d42SEmmanuel Vadot	};
144*833e5d42SEmmanuel Vadot};
145*833e5d42SEmmanuel Vadot
146*833e5d42SEmmanuel Vadot&mdio1 {
147*833e5d42SEmmanuel Vadot	phy1: ethernet-phy@7 {
148*833e5d42SEmmanuel Vadot		compatible = "ethernet-phy-id0022.1640",
149*833e5d42SEmmanuel Vadot			     "ethernet-phy-ieee802.3-c22";
150*833e5d42SEmmanuel Vadot		reg = <7>;
151*833e5d42SEmmanuel Vadot		interrupts-extended = <&icu 16 IRQ_TYPE_LEVEL_LOW>;
152*833e5d42SEmmanuel Vadot		rxc-skew-psec = <1400>;
153*833e5d42SEmmanuel Vadot		txc-skew-psec = <1400>;
154*833e5d42SEmmanuel Vadot		rxdv-skew-psec = <0>;
155*833e5d42SEmmanuel Vadot		txdv-skew-psec = <0>;
156*833e5d42SEmmanuel Vadot		rxd0-skew-psec = <0>;
157*833e5d42SEmmanuel Vadot		rxd1-skew-psec = <0>;
158*833e5d42SEmmanuel Vadot		rxd2-skew-psec = <0>;
159*833e5d42SEmmanuel Vadot		rxd3-skew-psec = <0>;
160*833e5d42SEmmanuel Vadot		txd0-skew-psec = <0>;
161*833e5d42SEmmanuel Vadot		txd1-skew-psec = <0>;
162*833e5d42SEmmanuel Vadot		txd2-skew-psec = <0>;
163*833e5d42SEmmanuel Vadot		txd3-skew-psec = <0>;
164*833e5d42SEmmanuel Vadot	};
165*833e5d42SEmmanuel Vadot};
166*833e5d42SEmmanuel Vadot
167ae5de77eSEmmanuel Vadot&pinctrl {
168*833e5d42SEmmanuel Vadot	eth0_pins: eth0 {
169*833e5d42SEmmanuel Vadot		clk {
170*833e5d42SEmmanuel Vadot			pinmux = <RZG3E_PORT_PINMUX(B, 1, 1)>; /* TXC */
171*833e5d42SEmmanuel Vadot			output-enable;
172*833e5d42SEmmanuel Vadot		};
173*833e5d42SEmmanuel Vadot
174*833e5d42SEmmanuel Vadot		ctrl {
175*833e5d42SEmmanuel Vadot			pinmux = <RZG3E_PORT_PINMUX(A, 1, 1)>, /* MDC */
176*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(A, 0, 1)>, /* MDIO */
177*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(C, 2, 15)>, /* PHY_INTR (IRQ2) */
178*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(C, 1, 1)>, /* RXD3 */
179*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(C, 0, 1)>, /* RXD2 */
180*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(B, 7, 1)>, /* RXD1 */
181*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(B, 6, 1)>, /* RXD0 */
182*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(B, 0, 1)>, /* RXC */
183*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(A, 2, 1)>, /* RX_CTL */
184*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(B, 5, 1)>, /* TXD3 */
185*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(B, 4, 1)>, /* TXD2 */
186*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(B, 3, 1)>, /* TXD1 */
187*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(B, 2, 1)>, /* TXD0 */
188*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(A, 3, 1)>; /* TX_CTL */
189*833e5d42SEmmanuel Vadot		};
190*833e5d42SEmmanuel Vadot	};
191*833e5d42SEmmanuel Vadot
192*833e5d42SEmmanuel Vadot	eth1_pins: eth1 {
193*833e5d42SEmmanuel Vadot		clk {
194*833e5d42SEmmanuel Vadot			pinmux = <RZG3E_PORT_PINMUX(E, 1, 1)>; /* TXC */
195*833e5d42SEmmanuel Vadot			output-enable;
196*833e5d42SEmmanuel Vadot		};
197*833e5d42SEmmanuel Vadot
198*833e5d42SEmmanuel Vadot		ctrl {
199*833e5d42SEmmanuel Vadot
200*833e5d42SEmmanuel Vadot			pinmux = <RZG3E_PORT_PINMUX(D, 1, 1)>, /* MDC */
201*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(D, 0, 1)>, /* MDIO */
202*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(F, 2, 15)>, /* PHY_INTR (IRQ15) */
203*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(F, 1, 1)>, /* RXD3 */
204*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(F, 0, 1)>, /* RXD2 */
205*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(E, 7, 1)>, /* RXD1 */
206*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(E, 6, 1)>, /* RXD0 */
207*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(E, 0, 1)>, /* RXC */
208*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(D, 2, 1)>, /* RX_CTL */
209*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(E, 5, 1)>, /* TXD3 */
210*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(E, 4, 1)>, /* TXD2 */
211*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(E, 3, 1)>, /* TXD1 */
212*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(E, 2, 1)>, /* TXD0 */
213*833e5d42SEmmanuel Vadot				 <RZG3E_PORT_PINMUX(D, 3, 1)>; /* TX_CTL */
214*833e5d42SEmmanuel Vadot		};
215*833e5d42SEmmanuel Vadot	};
216*833e5d42SEmmanuel Vadot
217ae5de77eSEmmanuel Vadot	i2c2_pins: i2c {
218ae5de77eSEmmanuel Vadot		pinmux = <RZG3E_PORT_PINMUX(3, 4, 1)>, /* SCL2 */
219ae5de77eSEmmanuel Vadot			 <RZG3E_PORT_PINMUX(3, 5, 1)>; /* SDA2 */
220ae5de77eSEmmanuel Vadot	};
221ae5de77eSEmmanuel Vadot
222ae5de77eSEmmanuel Vadot	rtc_irq_pin: rtc-irq {
223ae5de77eSEmmanuel Vadot		pins = "PS1";
224ae5de77eSEmmanuel Vadot		bias-pull-up;
225ae5de77eSEmmanuel Vadot	};
226ae5de77eSEmmanuel Vadot
227ae5de77eSEmmanuel Vadot	sdhi0_emmc_pins: sd0-emmc {
228ae5de77eSEmmanuel Vadot		sd0-ctrl {
229ae5de77eSEmmanuel Vadot			pins = "SD0CLK", "SD0CMD";
230ae5de77eSEmmanuel Vadot			renesas,output-impedance = <3>;
231ae5de77eSEmmanuel Vadot		};
232ae5de77eSEmmanuel Vadot
233ae5de77eSEmmanuel Vadot		sd0-data {
234ae5de77eSEmmanuel Vadot			pins = "SD0DAT0", "SD0DAT1", "SD0DAT2", "SD0DAT3",
235ae5de77eSEmmanuel Vadot			       "SD0DAT4", "SD0DAT5", "SD0DAT6", "SD0DAT7";
236ae5de77eSEmmanuel Vadot			renesas,output-impedance = <3>;
237ae5de77eSEmmanuel Vadot		};
238ae5de77eSEmmanuel Vadot
239ae5de77eSEmmanuel Vadot		sd0-rst {
240ae5de77eSEmmanuel Vadot			pins = "SD0RSTN";
241ae5de77eSEmmanuel Vadot			renesas,output-impedance = <3>;
242ae5de77eSEmmanuel Vadot		};
243ae5de77eSEmmanuel Vadot	};
244ae5de77eSEmmanuel Vadot
245ae5de77eSEmmanuel Vadot	sdhi0_usd_pins: sd0-usd {
246ae5de77eSEmmanuel Vadot		sd0-cd {
247ae5de77eSEmmanuel Vadot			pinmux = <RZG3E_PORT_PINMUX(5, 0, 8)>;
248ae5de77eSEmmanuel Vadot		};
249ae5de77eSEmmanuel Vadot
250ae5de77eSEmmanuel Vadot		sd0-ctrl {
251ae5de77eSEmmanuel Vadot			pins = "SD0CLK", "SD0CMD";
252ae5de77eSEmmanuel Vadot			renesas,output-impedance = <3>;
253ae5de77eSEmmanuel Vadot		};
254ae5de77eSEmmanuel Vadot
255ae5de77eSEmmanuel Vadot		sd0-data {
256ae5de77eSEmmanuel Vadot			pins = "SD0DAT0", "SD0DAT1", "SD0DAT2", "SD0DAT3";
257ae5de77eSEmmanuel Vadot			renesas,output-impedance = <3>;
258ae5de77eSEmmanuel Vadot		};
259ae5de77eSEmmanuel Vadot
260ae5de77eSEmmanuel Vadot		sd0-iovs {
261ae5de77eSEmmanuel Vadot			pins = "SD0IOVS";
262ae5de77eSEmmanuel Vadot			renesas,output-impedance = <3>;
263ae5de77eSEmmanuel Vadot		};
264ae5de77eSEmmanuel Vadot
265ae5de77eSEmmanuel Vadot		sd0-pwen {
266ae5de77eSEmmanuel Vadot			pins = "SD0PWEN";
267ae5de77eSEmmanuel Vadot			renesas,output-impedance = <3>;
268ae5de77eSEmmanuel Vadot		};
269ae5de77eSEmmanuel Vadot	};
270ae5de77eSEmmanuel Vadot
271ae5de77eSEmmanuel Vadot	sdhi2_pins: sd2 {
272ae5de77eSEmmanuel Vadot		sd2-cd {
273ae5de77eSEmmanuel Vadot			pinmux = <RZG3E_PORT_PINMUX(K, 0, 1)>; /* SD2CD */
274ae5de77eSEmmanuel Vadot		};
275ae5de77eSEmmanuel Vadot
276ae5de77eSEmmanuel Vadot		sd2-ctrl {
277ae5de77eSEmmanuel Vadot			pinmux = <RZG3E_PORT_PINMUX(H, 0, 1)>, /* SD2CLK */
278ae5de77eSEmmanuel Vadot				 <RZG3E_PORT_PINMUX(H, 1, 1)>; /* SD2CMD */
279ae5de77eSEmmanuel Vadot		};
280ae5de77eSEmmanuel Vadot
281ae5de77eSEmmanuel Vadot		sd2-data {
282ae5de77eSEmmanuel Vadot			pinmux = <RZG3E_PORT_PINMUX(H, 2, 1)>, /* SD2DAT0 */
283ae5de77eSEmmanuel Vadot				 <RZG3E_PORT_PINMUX(H, 3, 1)>, /* SD2DAT1 */
284ae5de77eSEmmanuel Vadot				 <RZG3E_PORT_PINMUX(H, 4, 1)>, /* SD2DAT2 */
285ae5de77eSEmmanuel Vadot				 <RZG3E_PORT_PINMUX(H, 5, 1)>; /* SD2DAT3 */
286ae5de77eSEmmanuel Vadot		};
287ae5de77eSEmmanuel Vadot
288ae5de77eSEmmanuel Vadot		sd2-iovs {
289ae5de77eSEmmanuel Vadot			pinmux = <RZG3E_PORT_PINMUX(K, 1, 1)>; /* SD2IOVS */
290ae5de77eSEmmanuel Vadot		};
291ae5de77eSEmmanuel Vadot
292ae5de77eSEmmanuel Vadot		sd2-pwen {
293ae5de77eSEmmanuel Vadot			pinmux = <RZG3E_PORT_PINMUX(K, 2, 1)>; /* SD2PWEN */
294ae5de77eSEmmanuel Vadot		};
295ae5de77eSEmmanuel Vadot	};
296*833e5d42SEmmanuel Vadot
297*833e5d42SEmmanuel Vadot	xspi_pins: xspi0 {
298*833e5d42SEmmanuel Vadot		pinmux = <RZG3E_PORT_PINMUX(M, 0, 0)>, /* XSPI0_IO0 */
299*833e5d42SEmmanuel Vadot			 <RZG3E_PORT_PINMUX(M, 1, 0)>, /* XSPI0_IO1 */
300*833e5d42SEmmanuel Vadot			 <RZG3E_PORT_PINMUX(M, 2, 0)>, /* XSPI0_IO2 */
301*833e5d42SEmmanuel Vadot			 <RZG3E_PORT_PINMUX(M, 3, 0)>, /* XSPI0_IO3 */
302*833e5d42SEmmanuel Vadot			 <RZG3E_PORT_PINMUX(L, 0, 0)>, /* XSPI0_CKP */
303*833e5d42SEmmanuel Vadot			 <RZG3E_PORT_PINMUX(L, 1, 0)>; /* XSPI0_CS0 */
304*833e5d42SEmmanuel Vadot	};
305ae5de77eSEmmanuel Vadot};
306ae5de77eSEmmanuel Vadot
3072846c905SEmmanuel Vadot&qextal_clk {
3082846c905SEmmanuel Vadot	clock-frequency = <24000000>;
3092846c905SEmmanuel Vadot};
3102846c905SEmmanuel Vadot
3112846c905SEmmanuel Vadot&rtxin_clk {
3122846c905SEmmanuel Vadot	clock-frequency = <32768>;
3132846c905SEmmanuel Vadot};
3148ccc0d23SEmmanuel Vadot
315ae5de77eSEmmanuel Vadot#if (SW_SD0_DEV_SEL)
316ae5de77eSEmmanuel Vadot&sdhi0 {
317ae5de77eSEmmanuel Vadot	pinctrl-0 = <&sdhi0_usd_pins>;
318ae5de77eSEmmanuel Vadot	pinctrl-1 = <&sdhi0_usd_pins>;
319ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
320ae5de77eSEmmanuel Vadot
321ae5de77eSEmmanuel Vadot	vmmc-supply = <&reg_3p3v>;
322ae5de77eSEmmanuel Vadot	vqmmc-supply = <&sdhi0_vqmmc>;
323ae5de77eSEmmanuel Vadot	bus-width = <4>;
324ae5de77eSEmmanuel Vadot	sd-uhs-sdr50;
325ae5de77eSEmmanuel Vadot	sd-uhs-sdr104;
326ae5de77eSEmmanuel Vadot	status = "okay";
327ae5de77eSEmmanuel Vadot};
328ae5de77eSEmmanuel Vadot
329ae5de77eSEmmanuel Vadot&sdhi0_vqmmc {
330ae5de77eSEmmanuel Vadot	status = "okay";
331ae5de77eSEmmanuel Vadot};
332ae5de77eSEmmanuel Vadot#else
333ae5de77eSEmmanuel Vadot&sdhi0 {
334ae5de77eSEmmanuel Vadot	pinctrl-0 = <&sdhi0_emmc_pins>;
335ae5de77eSEmmanuel Vadot	pinctrl-1 = <&sdhi0_emmc_pins>;
336ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
337ae5de77eSEmmanuel Vadot
338ae5de77eSEmmanuel Vadot	vmmc-supply = <&reg_3p3v>;
339ae5de77eSEmmanuel Vadot	vqmmc-supply = <&reg_1p8v>;
340ae5de77eSEmmanuel Vadot	bus-width = <8>;
341ae5de77eSEmmanuel Vadot	mmc-hs200-1_8v;
342ae5de77eSEmmanuel Vadot	non-removable;
343ae5de77eSEmmanuel Vadot	fixed-emmc-driver-type = <1>;
344ae5de77eSEmmanuel Vadot	status = "okay";
345ae5de77eSEmmanuel Vadot};
346ae5de77eSEmmanuel Vadot#endif
347ae5de77eSEmmanuel Vadot
348ae5de77eSEmmanuel Vadot&sdhi2 {
349ae5de77eSEmmanuel Vadot	pinctrl-0 = <&sdhi2_pins>;
350ae5de77eSEmmanuel Vadot	pinctrl-1 = <&sdhi2_pins>;
351ae5de77eSEmmanuel Vadot	pinctrl-names = "default", "state_uhs";
352ae5de77eSEmmanuel Vadot
353ae5de77eSEmmanuel Vadot	vmmc-supply = <&reg_3p3v>;
354ae5de77eSEmmanuel Vadot	vqmmc-supply = <&sdhi2_vqmmc>;
355ae5de77eSEmmanuel Vadot	bus-width = <4>;
356ae5de77eSEmmanuel Vadot	sd-uhs-sdr50;
357ae5de77eSEmmanuel Vadot	sd-uhs-sdr104;
358ae5de77eSEmmanuel Vadot	status = "okay";
359ae5de77eSEmmanuel Vadot};
360ae5de77eSEmmanuel Vadot
361ae5de77eSEmmanuel Vadot&sdhi2_vqmmc {
362ae5de77eSEmmanuel Vadot	status = "okay";
363ae5de77eSEmmanuel Vadot};
364ae5de77eSEmmanuel Vadot
3658ccc0d23SEmmanuel Vadot&wdt1 {
3668ccc0d23SEmmanuel Vadot	status = "okay";
3678ccc0d23SEmmanuel Vadot};
368*833e5d42SEmmanuel Vadot
369*833e5d42SEmmanuel Vadot&xspi {
370*833e5d42SEmmanuel Vadot	pinctrl-0 = <&xspi_pins>;
371*833e5d42SEmmanuel Vadot	pinctrl-names = "default";
372*833e5d42SEmmanuel Vadot	status = "okay";
373*833e5d42SEmmanuel Vadot
374*833e5d42SEmmanuel Vadot	flash@0 {
375*833e5d42SEmmanuel Vadot		compatible = "jedec,spi-nor";
376*833e5d42SEmmanuel Vadot		reg = <0>;
377*833e5d42SEmmanuel Vadot		vcc-supply = <&reg_1p8v>;
378*833e5d42SEmmanuel Vadot		m25p,fast-read;
379*833e5d42SEmmanuel Vadot		spi-max-frequency = <50000000>;
380*833e5d42SEmmanuel Vadot		spi-tx-bus-width = <4>;
381*833e5d42SEmmanuel Vadot		spi-rx-bus-width = <4>;
382*833e5d42SEmmanuel Vadot
383*833e5d42SEmmanuel Vadot		partitions {
384*833e5d42SEmmanuel Vadot			compatible = "fixed-partitions";
385*833e5d42SEmmanuel Vadot			#address-cells = <1>;
386*833e5d42SEmmanuel Vadot			#size-cells = <1>;
387*833e5d42SEmmanuel Vadot
388*833e5d42SEmmanuel Vadot			partition@0 {
389*833e5d42SEmmanuel Vadot				label = "bl2";
390*833e5d42SEmmanuel Vadot				reg = <0x00000000 0x00060000>;
391*833e5d42SEmmanuel Vadot			};
392*833e5d42SEmmanuel Vadot
393*833e5d42SEmmanuel Vadot			partition@60000 {
394*833e5d42SEmmanuel Vadot				label = "fip";
395*833e5d42SEmmanuel Vadot				reg = <0x00060000 0x007a0000>;
396*833e5d42SEmmanuel Vadot			};
397*833e5d42SEmmanuel Vadot
398*833e5d42SEmmanuel Vadot			partition@800000 {
399*833e5d42SEmmanuel Vadot				label = "user";
400*833e5d42SEmmanuel Vadot				reg = <0x800000 0x800000>;
401*833e5d42SEmmanuel Vadot			};
402*833e5d42SEmmanuel Vadot		};
403*833e5d42SEmmanuel Vadot	};
404*833e5d42SEmmanuel Vadot};
405