xref: /OK3568_Linux_fs/u-boot/arch/arm/dts/rk3588-u-boot.dtsi (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun/*
2*4882a593Smuzhiyun * (C) Copyright 2021 Rockchip Electronics Co., Ltd
3*4882a593Smuzhiyun *
4*4882a593Smuzhiyun * SPDX-License-Identifier:     GPL-2.0+
5*4882a593Smuzhiyun */
6*4882a593Smuzhiyun
7*4882a593Smuzhiyun#include <dt-bindings/gpio/gpio.h>
8*4882a593Smuzhiyun
9*4882a593Smuzhiyun/ {
10*4882a593Smuzhiyun	aliases {
11*4882a593Smuzhiyun		mmc0 = &sdhci;
12*4882a593Smuzhiyun		mmc1 = &sdmmc;
13*4882a593Smuzhiyun	};
14*4882a593Smuzhiyun
15*4882a593Smuzhiyun	chosen {
16*4882a593Smuzhiyun		stdout-path = &uart2;
17*4882a593Smuzhiyun		u-boot,spl-boot-order = &sdmmc, &sdhci, &spi_nand, &spi_nor;
18*4882a593Smuzhiyun	};
19*4882a593Smuzhiyun
20*4882a593Smuzhiyun	secure-otp@fe3a0000 {
21*4882a593Smuzhiyun		u-boot,dm-spl;
22*4882a593Smuzhiyun		compatible = "rockchip,rk3588-secure-otp";
23*4882a593Smuzhiyun		reg = <0x0 0xfe3a0000 0x0 0x4000>;
24*4882a593Smuzhiyun	};
25*4882a593Smuzhiyun};
26*4882a593Smuzhiyun
27*4882a593Smuzhiyun&firmware {
28*4882a593Smuzhiyun	u-boot,dm-spl;
29*4882a593Smuzhiyun};
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun&gpio0 {
32*4882a593Smuzhiyun	u-boot,dm-spl;
33*4882a593Smuzhiyun	status = "okay";
34*4882a593Smuzhiyun};
35*4882a593Smuzhiyun&gpio1 {
36*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
37*4882a593Smuzhiyun	status = "okay";
38*4882a593Smuzhiyun};
39*4882a593Smuzhiyun
40*4882a593Smuzhiyun&gpio2 {
41*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
42*4882a593Smuzhiyun	status = "okay";
43*4882a593Smuzhiyun};
44*4882a593Smuzhiyun&gpio3 {
45*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
46*4882a593Smuzhiyun	status = "okay";
47*4882a593Smuzhiyun};
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun&gpio4 {
50*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
51*4882a593Smuzhiyun	status = "okay";
52*4882a593Smuzhiyun};
53*4882a593Smuzhiyun
54*4882a593Smuzhiyun&scmi {
55*4882a593Smuzhiyun	u-boot,dm-spl;
56*4882a593Smuzhiyun};
57*4882a593Smuzhiyun
58*4882a593Smuzhiyun&scmi_clk {
59*4882a593Smuzhiyun	u-boot,dm-spl;
60*4882a593Smuzhiyun};
61*4882a593Smuzhiyun
62*4882a593Smuzhiyun&sram {
63*4882a593Smuzhiyun	u-boot,dm-spl;
64*4882a593Smuzhiyun};
65*4882a593Smuzhiyun
66*4882a593Smuzhiyun&scmi_shmem {
67*4882a593Smuzhiyun	u-boot,dm-spl;
68*4882a593Smuzhiyun};
69*4882a593Smuzhiyun
70*4882a593Smuzhiyun&xin24m {
71*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
72*4882a593Smuzhiyun	status = "okay";
73*4882a593Smuzhiyun};
74*4882a593Smuzhiyun
75*4882a593Smuzhiyun&cru {
76*4882a593Smuzhiyun	u-boot,dm-spl;
77*4882a593Smuzhiyun	status = "okay";
78*4882a593Smuzhiyun};
79*4882a593Smuzhiyun
80*4882a593Smuzhiyun&psci {
81*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
82*4882a593Smuzhiyun	status = "okay";
83*4882a593Smuzhiyun};
84*4882a593Smuzhiyun
85*4882a593Smuzhiyun&crypto {
86*4882a593Smuzhiyun	u-boot,dm-spl;
87*4882a593Smuzhiyun	status = "okay";
88*4882a593Smuzhiyun};
89*4882a593Smuzhiyun
90*4882a593Smuzhiyun&sys_grf {
91*4882a593Smuzhiyun	u-boot,dm-spl;
92*4882a593Smuzhiyun	status = "okay";
93*4882a593Smuzhiyun};
94*4882a593Smuzhiyun
95*4882a593Smuzhiyun&pcie30_phy_grf {
96*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
97*4882a593Smuzhiyun	status = "okay";
98*4882a593Smuzhiyun};
99*4882a593Smuzhiyun
100*4882a593Smuzhiyun&php_grf {
101*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
102*4882a593Smuzhiyun	status = "okay";
103*4882a593Smuzhiyun};
104*4882a593Smuzhiyun
105*4882a593Smuzhiyun&pipe_phy0_grf {
106*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
107*4882a593Smuzhiyun	status = "okay";
108*4882a593Smuzhiyun};
109*4882a593Smuzhiyun
110*4882a593Smuzhiyun&pipe_phy1_grf {
111*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
112*4882a593Smuzhiyun	status = "okay";
113*4882a593Smuzhiyun};
114*4882a593Smuzhiyun
115*4882a593Smuzhiyun&pipe_phy2_grf {
116*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
117*4882a593Smuzhiyun	status = "okay";
118*4882a593Smuzhiyun};
119*4882a593Smuzhiyun
120*4882a593Smuzhiyun&uart2 {
121*4882a593Smuzhiyun	u-boot,dm-spl;
122*4882a593Smuzhiyun	status = "okay";
123*4882a593Smuzhiyun};
124*4882a593Smuzhiyun
125*4882a593Smuzhiyun&hw_decompress {
126*4882a593Smuzhiyun	u-boot,dm-spl;
127*4882a593Smuzhiyun	status = "okay";
128*4882a593Smuzhiyun};
129*4882a593Smuzhiyun
130*4882a593Smuzhiyun&rng {
131*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
132*4882a593Smuzhiyun	status = "okay";
133*4882a593Smuzhiyun};
134*4882a593Smuzhiyun
135*4882a593Smuzhiyun&sfc {
136*4882a593Smuzhiyun	u-boot,dm-spl;
137*4882a593Smuzhiyun	status = "okay";
138*4882a593Smuzhiyun
139*4882a593Smuzhiyun	#address-cells = <1>;
140*4882a593Smuzhiyun	#size-cells = <0>;
141*4882a593Smuzhiyun	spi_nand: flash@0 {
142*4882a593Smuzhiyun		u-boot,dm-spl;
143*4882a593Smuzhiyun		compatible = "spi-nand";
144*4882a593Smuzhiyun		reg = <0>;
145*4882a593Smuzhiyun		spi-tx-bus-width = <1>;
146*4882a593Smuzhiyun		spi-rx-bus-width = <4>;
147*4882a593Smuzhiyun		spi-max-frequency = <80000000>;
148*4882a593Smuzhiyun	};
149*4882a593Smuzhiyun
150*4882a593Smuzhiyun	spi_nor: flash@1 {
151*4882a593Smuzhiyun		u-boot,dm-spl;
152*4882a593Smuzhiyun		compatible = "jedec,spi-nor";
153*4882a593Smuzhiyun		label = "sfc_nor";
154*4882a593Smuzhiyun		reg = <0>;
155*4882a593Smuzhiyun		spi-tx-bus-width = <1>;
156*4882a593Smuzhiyun		spi-rx-bus-width = <4>;
157*4882a593Smuzhiyun		spi-max-frequency = <80000000>;
158*4882a593Smuzhiyun	};
159*4882a593Smuzhiyun};
160*4882a593Smuzhiyun
161*4882a593Smuzhiyun&saradc {
162*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
163*4882a593Smuzhiyun	status = "okay";
164*4882a593Smuzhiyun};
165*4882a593Smuzhiyun
166*4882a593Smuzhiyun&sdmmc {
167*4882a593Smuzhiyun	bus-width = <4>;
168*4882a593Smuzhiyun	u-boot,dm-spl;
169*4882a593Smuzhiyun	cd-gpios = <&gpio0 RK_PA4 GPIO_ACTIVE_HIGH>;
170*4882a593Smuzhiyun	status = "okay";
171*4882a593Smuzhiyun};
172*4882a593Smuzhiyun
173*4882a593Smuzhiyun&sdhci {
174*4882a593Smuzhiyun	bus-width = <8>;
175*4882a593Smuzhiyun	u-boot,dm-spl;
176*4882a593Smuzhiyun	mmc-hs400-1_8v;
177*4882a593Smuzhiyun	mmc-hs400-enhanced-strobe;
178*4882a593Smuzhiyun	non-removable;
179*4882a593Smuzhiyun	status = "okay";
180*4882a593Smuzhiyun};
181*4882a593Smuzhiyun
182*4882a593Smuzhiyun&usb2phy0_grf {
183*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
184*4882a593Smuzhiyun};
185*4882a593Smuzhiyun
186*4882a593Smuzhiyun&u2phy0 {
187*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
188*4882a593Smuzhiyun	status = "okay";
189*4882a593Smuzhiyun};
190*4882a593Smuzhiyun
191*4882a593Smuzhiyun&u2phy0_otg {
192*4882a593Smuzhiyun	u-boot,dm-pre-reloc;
193*4882a593Smuzhiyun	status = "okay";
194*4882a593Smuzhiyun};
195*4882a593Smuzhiyun
196*4882a593Smuzhiyun/* Support SPL-PINCTRL:
197*4882a593Smuzhiyun * 1. ioc
198*4882a593Smuzhiyun * 2. pinctrl(sdmmc)
199*4882a593Smuzhiyun * 3. gpio if need
200*4882a593Smuzhiyun */
201*4882a593Smuzhiyun&ioc {
202*4882a593Smuzhiyun	u-boot,dm-spl;
203*4882a593Smuzhiyun};
204*4882a593Smuzhiyun
205*4882a593Smuzhiyun&pinctrl {
206*4882a593Smuzhiyun	u-boot,dm-spl;
207*4882a593Smuzhiyun	/delete-node/ sdmmc;
208*4882a593Smuzhiyun	sdmmc {
209*4882a593Smuzhiyun		u-boot,dm-spl;
210*4882a593Smuzhiyun		sdmmc_bus4: sdmmc-bus4 {
211*4882a593Smuzhiyun			u-boot,dm-spl;
212*4882a593Smuzhiyun			rockchip,pins =
213*4882a593Smuzhiyun				/* sdmmc_d0 */
214*4882a593Smuzhiyun				<4 RK_PD0 1 &pcfg_pull_up_drv_level_2>,
215*4882a593Smuzhiyun				/* sdmmc_d1 */
216*4882a593Smuzhiyun				<4 RK_PD1 1 &pcfg_pull_up_drv_level_2>,
217*4882a593Smuzhiyun				/* sdmmc_d2 */
218*4882a593Smuzhiyun				<4 RK_PD2 1 &pcfg_pull_up_drv_level_2>,
219*4882a593Smuzhiyun				/* sdmmc_d3 */
220*4882a593Smuzhiyun				<4 RK_PD3 1 &pcfg_pull_up_drv_level_2>;
221*4882a593Smuzhiyun		};
222*4882a593Smuzhiyun
223*4882a593Smuzhiyun		sdmmc_clk: sdmmc-clk {
224*4882a593Smuzhiyun			u-boot,dm-spl;
225*4882a593Smuzhiyun			rockchip,pins =
226*4882a593Smuzhiyun				/* sdmmc_clk */
227*4882a593Smuzhiyun				<4 RK_PD5 1 &pcfg_pull_up_drv_level_2>;
228*4882a593Smuzhiyun		};
229*4882a593Smuzhiyun
230*4882a593Smuzhiyun		sdmmc_cmd: sdmmc-cmd {
231*4882a593Smuzhiyun			u-boot,dm-spl;
232*4882a593Smuzhiyun			rockchip,pins =
233*4882a593Smuzhiyun				/* sdmmc_cmd */
234*4882a593Smuzhiyun				<4 RK_PD4 1 &pcfg_pull_up_drv_level_2>;
235*4882a593Smuzhiyun		};
236*4882a593Smuzhiyun
237*4882a593Smuzhiyun		sdmmc_det: sdmmc-det {
238*4882a593Smuzhiyun			u-boot,dm-spl;
239*4882a593Smuzhiyun			rockchip,pins =
240*4882a593Smuzhiyun				/* sdmmc_det */
241*4882a593Smuzhiyun				<0 RK_PA4 1 &pcfg_pull_up>;
242*4882a593Smuzhiyun		};
243*4882a593Smuzhiyun
244*4882a593Smuzhiyun		sdmmc_pwren: sdmmc-pwren {
245*4882a593Smuzhiyun			u-boot,dm-spl;
246*4882a593Smuzhiyun			rockchip,pins =
247*4882a593Smuzhiyun				/* sdmmc_pwren */
248*4882a593Smuzhiyun				<0 RK_PA5 2 &pcfg_pull_none>;
249*4882a593Smuzhiyun		};
250*4882a593Smuzhiyun	};
251*4882a593Smuzhiyun};
252*4882a593Smuzhiyun
253*4882a593Smuzhiyun&pcfg_pull_up_drv_level_2 {
254*4882a593Smuzhiyun	u-boot,dm-spl;
255*4882a593Smuzhiyun};
256*4882a593Smuzhiyun
257*4882a593Smuzhiyun&pcfg_pull_up {
258*4882a593Smuzhiyun	u-boot,dm-spl;
259*4882a593Smuzhiyun};
260*4882a593Smuzhiyun
261*4882a593Smuzhiyun&pcfg_pull_none
262*4882a593Smuzhiyun{
263*4882a593Smuzhiyun	u-boot,dm-spl;
264*4882a593Smuzhiyun};
265