blob: af3f5d32f9d9e7dbac7bb3d031ed85775af3ec26 [file] [log] [blame]
Jit Loon Lim977071e2024-03-12 22:01:03 +08001// SPDX-License-Identifier: GPL-2.0+
2/*
3 * U-Boot additions
4 *
5 * Copyright (C) 2024 Intel Corporation <www.intel.com>
Tien Fong Chee60af21b2025-02-18 16:34:54 +08006 * Copyright (C) 2025 Altera Corporation <www.altera.com>
Jit Loon Lim977071e2024-03-12 22:01:03 +08007 */
8
9#include "socfpga_soc64_fit-u-boot.dtsi"
10
11/{
12 memory {
13 #address-cells = <2>;
14 #size-cells = <2>;
15 bootph-all;
16 };
Tien Fong Chee60af21b2025-02-18 16:34:54 +080017
18 soc {
19 bootph-all;
20
21 socfpga_ccu_config: socfpga-ccu-config {
22 compatible = "intel,socfpga-dtreg";
23 #address-cells = <1>;
24 #size-cells = <1>;
25 bootph-all;
26
27 /* DSU */
28 i_ccu_caiu0@1c000000 {
29 reg = <0x1c000000 0x00001000>;
30 intel,offset-settings =
31 /* CAIUMIFSR */
32 <0x000003c4 0x00000000 0x07070777>,
33 /* DII1_MPFEREGS */
34 <0x00000414 0x00018000 0xffffffff>,
35 <0x00000418 0x00000000 0x000000ff>,
36 <0x00000410 0xc0e00200 0xc1f03e1f>,
37 /* DII2_GICREGS */
38 <0x00000424 0x0001d000 0xffffffff>,
39 <0x00000428 0x00000000 0x000000ff>,
40 <0x00000420 0xc0800400 0xc1f03e1f>,
41 /* NCAIU0_LWSOC2FPGA */
42 <0x00000444 0x00020000 0xffffffff>,
43 <0x00000448 0x00000000 0x000000ff>,
44 <0x00000440 0xc1100006 0xc1f03e1f>,
45 /* NCAIU0_SOC2FPGA_1G */
46 <0x00000454 0x00040000 0xffffffff>,
47 <0x00000458 0x00000000 0x000000ff>,
48 <0x00000450 0xc1200006 0xc1f03e1f>,
49 /* DMI_SDRAM_2G */
50 <0x00000464 0x00080000 0xffffffff>,
51 <0x00000468 0x00000000 0x000000ff>,
52 /* NCAIU0_SOC2FPGA_16G */
53 <0x00000474 0x00400000 0xffffffff>,
54 <0x00000478 0x00000000 0x000000ff>,
55 <0x00000470 0xc1600006 0xc1f03e1f>,
56 /* DMI_SDRAM_30G */
57 <0x00000484 0x00800000 0xffffffff>,
58 <0x00000488 0x00000000 0x000000ff>,
59 /* NCAIU0_SOC2FPGA_256G */
60 <0x00000494 0x04000000 0xffffffff>,
61 <0x00000498 0x00000000 0x000000ff>,
62 <0x00000490 0xc1a00006 0xc1f03e1f>,
63 /* DMI_SDRAM_480G */
64 <0x000004a4 0x08000000 0xffffffff>,
65 <0x000004a8 0x00000000 0x000000ff>;
66 bootph-all;
67 };
68
69 /* FPGA2SOC */
70 i_ccu_ncaiu0@1c001000 {
71 reg = <0x1c001000 0x00001000>;
72 intel,offset-settings =
73 /* NCAIU0MIFSR */
74 <0x000003c4 0x00000000 0x07070777>,
75 /* PSS */
76 <0x00000404 0x00010000 0xffffffff>,
77 <0x00000408 0x00000000 0x000000ff>,
78 <0x00000400 0xC0F00000 0xc1f03e1f>,
79 /* DII1_MPFEREGS */
80 <0x00000414 0x00018000 0xffffffff>,
81 <0x00000418 0x00000000 0x000000ff>,
82 <0x00000410 0xc0e00200 0xc1f03e1f>,
83 /* NCAIU0_LWSOC2FPGA */
84 <0x00000444 0x00020000 0xffffffff>,
85 <0x00000448 0x00000000 0x000000ff>,
86 <0x00000440 0xc1100006 0xc1f03e1f>,
87 /* NCAIU0_SOC2FPGA_1G */
88 <0x00000454 0x00040000 0xffffffff>,
89 <0x00000458 0x00000000 0x000000ff>,
90 <0x00000450 0xc1200006 0xc1f03e1f>,
91 /* DMI_SDRAM_2G */
92 <0x00000464 0x00080000 0xffffffff>,
93 <0x00000468 0x00000000 0x000000ff>,
94 /* NCAIU0_SOC2FPGA_16G */
95 <0x00000474 0x00400000 0xffffffff>,
96 <0x00000478 0x00000000 0x000000ff>,
97 <0x00000470 0xc1600006 0xc1f03e1f>,
98 /* DMI_SDRAM_30G */
99 <0x00000484 0x00800000 0xffffffff>,
100 <0x00000488 0x00000000 0x000000ff>,
101 /* NCAIU0_SOC2FPGA_256G */
102 <0x00000494 0x04000000 0xffffffff>,
103 <0x00000498 0x00000000 0x000000ff>,
104 <0x00000490 0xc1a00006 0xc1f03e1f>,
105 /* DMI_SDRAM_480G */
106 <0x000004a4 0x08000000 0xffffffff>,
107 <0x000004a8 0x00000000 0x000000ff>;
108 bootph-all;
109 };
110
111 /* GIC_M */
112 i_ccu_ncaiu1@1c002000 {
113 reg = <0x1c002000 0x00001000>;
114 intel,offset-settings =
115 /* NCAIU1MIFSR */
116 <0x000003c4 0x00000000 0x07070777>,
117 /* DMI_SDRAM_2G */
118 <0x00000464 0x00080000 0xffffffff>,
119 <0x00000468 0x00000000 0x000000ff>,
120 /* DMI_SDRAM_30G */
121 <0x00000484 0x00800000 0xffffffff>,
122 <0x00000488 0x00000000 0x000000ff>,
123 /* DMI_SDRAM_480G */
124 <0x000004a4 0x08000000 0xffffffff>,
125 <0x000004a8 0x00000000 0x000000ff>;
126 bootph-all;
127 };
128
129 /* SMMU */
130 i_ccu_ncaiu2@1c003000 {
131 reg = <0x1c003000 0x00001000>;
132 intel,offset-settings =
133 /* NCAIU2MIFSR */
134 <0x000003c4 0x00000000 0x07070777>,
135 /* DMI_SDRAM_2G */
136 <0x00000464 0x00080000 0xffffffff>,
137 <0x00000468 0x00000000 0x000000ff>,
138 /* DMI_SDRAM_30G */
139 <0x00000484 0x00800000 0xffffffff>,
140 <0x00000488 0x00000000 0x000000ff>,
141 /* DMI_SDRAM_480G */
142 <0x000004a4 0x08000000 0xffffffff>,
143 <0x000004a8 0x00000000 0x000000ff>;
144 bootph-all;
145 };
146
147 /* PSS NOC */
148 i_ccu_ncaiu3@1c004000 {
149 reg = <0x1c004000 0x00001000>;
150 intel,offset-settings =
151 /* NCAIU3MIFSR */
152 <0x000003c4 0x00000000 0x07070777>,
153 /* DII1_MPFEREGS */
154 <0x00000414 0x00018000 0xffffffff>,
155 <0x00000418 0x00000000 0x000000ff>,
156 <0x00000410 0xc0e00200 0xc1f03e1f>,
157 /* DMI_SDRAM_2G */
158 <0x00000464 0x00080000 0xffffffff>,
159 <0x00000468 0x00000000 0x000000ff>,
160 /* DMI_SDRAM_30G */
161 <0x00000484 0x00800000 0xffffffff>,
162 <0x00000488 0x00000000 0x000000ff>,
163 /* DMI_SDRAM_480G */
164 <0x000004a4 0x08000000 0xffffffff>,
165 <0x000004a8 0x00000000 0x000000ff>;
166 bootph-all;
167 };
168
169 /* DCE0 */
170 i_ccu_dce0@1c005000 {
171 reg = <0x1c005000 0x00001000>;
172 intel,offset-settings =
173 /* DCEUMIFSR0 */
174 <0x000003c4 0x00000000 0x07070777>,
175 /* DMI_SDRAM_2G */
176 <0x00000464 0x00080000 0xffffffff>,
177 <0x00000468 0x00000000 0x000000ff>,
178 /* DMI_SDRAM_30G */
179 <0x00000484 0x00800000 0xffffffff>,
180 <0x00000488 0x00000000 0x000000ff>,
181 /* DMI_SDRAM_480G */
182 <0x000004a4 0x08000000 0xffffffff>,
183 <0x000004a8 0x00000000 0x000000ff>;
184 bootph-all;
185 };
186
187 /* DCE1 */
188 i_ccu_dce1@1c006000 {
189 reg = <0x1c006000 0x00001000>;
190 intel,offset-settings =
191 /* DCEUMIFSR1 */
192 <0x000003c4 0x00000000 0x07070777>,
193 /* DMI_SDRAM_2G */
194 <0x00000464 0x00080000 0xffffffff>,
195 <0x00000468 0x00000000 0x000000ff>,
196 /* DMI_SDRAM_30G */
197 <0x00000484 0x00800000 0xffffffff>,
198 <0x00000488 0x00000000 0x000000ff>,
199 /* DMI_SDRAM_480G */
200 <0x000004a4 0x08000000 0xffffffff>,
201 <0x000004a8 0x00000000 0x000000ff>;
202 bootph-all;
203 };
204
205 /* DMI0 */
206 i_ccu_dmi0@1c007000 {
207 reg = <0x1c007000 0x00001000>;
208 intel,offset-settings =
209 /* DMIUSMCTCR */
210 <0x00000300 0x00000001 0x00000003>,
211 <0x00000300 0x00000003 0x00000003>;
212 bootph-all;
213 };
214
215 /* DMI1 */
216 i_ccu_dmi0@1c008000 {
217 reg = <0x1c008000 0x00001000>;
218 intel,offset-settings =
219 /* DMIUSMCTCR */
220 <0x00000300 0x00000001 0x00000003>,
221 <0x00000300 0x00000003 0x00000003>;
222 bootph-all;
223 };
224 };
Tien Fong Chee39de0b82025-02-18 16:34:55 +0800225
226 socfpga_firewall_config: socfpga-firewall-config {
227 compatible = "intel,socfpga-dtreg";
228 #address-cells = <1>;
229 #size-cells = <1>;
230 bootph-all;
231
232 /* L4 peripherals firewall */
233 noc_fw_l4_per@10d21000 {
234 reg = <0x10d21000 0x0000008c>;
235 intel,offset-settings =
236 /* NAND */
237 <0x00000000 0x01010001 0x01010001>,
238 /* USB0 */
239 <0x0000000c 0x01010001 0x01010001>,
240 /* USB1 */
241 <0x00000010 0x01010001 0x01010001>,
242 /* SPI_MAIN0 */
243 <0x0000001c 0x01010301 0x01010301>,
244 /* SPI_MAIN1 */
245 <0x00000020 0x01010301 0x01010301>,
246 /* SPI_SECONDARY0 */
247 <0x00000024 0x01010301 0x01010301>,
248 /* SPI_SECONDARY1 */
249 <0x00000028 0x01010301 0x01010301>,
250 /* EMAC0 */
251 <0x0000002c 0x01010001 0x01010001>,
252 /* EMAC1 */
253 <0x00000030 0x01010001 0x01010001>,
254 /* EMAC2 */
255 <0x00000034 0x01010001 0x01010001>,
256 /* SDMMC */
257 <0x00000040 0x01010001 0x01010001>,
258 /* GPIO0 */
259 <0x00000044 0x01010301 0x01010301>,
260 /* GPIO1 */
261 <0x00000048 0x01010301 0x01010301>,
262 /* I2C0 */
263 <0x00000050 0x01010301 0x01010301>,
264 /* I2C1 */
265 <0x00000054 0x01010301 0x01010301>,
266 /* I2C2 */
267 <0x00000058 0x01010301 0x01010301>,
268 /* I2C3 */
269 <0x0000005c 0x01010301 0x01010301>,
270 /* I2C4 */
271 <0x00000060 0x01010301 0x01010301>,
272 /* SP_TIMER0 */
273 <0x00000064 0x01010301 0x01010301>,
274 /* SP_TIMER1 */
275 <0x00000068 0x01010301 0x01010301>,
276 /* UART0 */
277 <0x0000006c 0x01010301 0x01010301>,
278 /* UART1 */
279 <0x00000070 0x01010301 0x01010301>,
280 /* I3C0 */
281 <0x00000074 0x01010301 0x01010301>,
282 /* I3C1 */
283 <0x00000078 0x01010301 0x01010301>,
284 /* DMA0 */
285 <0x0000007c 0x01010001 0x01010001>,
286 /* DMA1 */
287 <0x00000080 0x01010001 0x01010001>,
288 /* COMBO_PHY */
289 <0x00000084 0x01010001 0x01010001>,
290 /* NAND_SDMA */
291 <0x00000088 0x01010301 0x01010301>;
292 bootph-all;
293 };
294
295 /* L4 system firewall */
296 noc_fw_l4_sys@10d21100 {
297 reg = <0x10d21100 0x00000098>;
298 intel,offset-settings =
299 /* DMA_ECC */
300 <0x00000008 0x01010001 0x01010001>,
301 /* EMAC0RX_ECC */
302 <0x0000000c 0x01010001 0x01010001>,
303 /* EMAC0TX_ECC */
304 <0x00000010 0x01010001 0x01010001>,
305 /* EMAC1RX_ECC */
306 <0x00000014 0x01010001 0x01010001>,
307 /* EMAC1TX_ECC */
308 <0x00000018 0x01010001 0x01010001>,
309 /* EMAC2RX_ECC */
310 <0x0000001c 0x01010001 0x01010001>,
311 /* EMAC2TX_ECC */
312 <0x00000020 0x01010001 0x01010001>,
313 /* NAND_ECC */
314 <0x0000002c 0x01010001 0x01010001>,
315 /* NAND_READ_ECC */
316 <0x00000030 0x01010001 0x01010001>,
317 /* NAND_WRITE_ECC */
318 <0x00000034 0x01010001 0x01010001>,
319 /* OCRAM_ECC */
320 <0x00000038 0x01010001 0x01010001>,
321 /* SDMMC_ECC */
322 <0x00000040 0x01010001 0x01010001>,
323 /* USB0_ECC */
324 <0x00000044 0x01010001 0x01010001>,
325 /* USB1_CACHEECC */
326 <0x00000048 0x01010001 0x01010001>,
327 /* CLOCK_MANAGER */
328 <0x0000004c 0x01010001 0x01010001>,
329 /* IO_MANAGER */
330 <0x00000054 0x01010001 0x01010001>,
331 /* RESET_MANAGER */
332 <0x00000058 0x01010001 0x01010001>,
333 /* SYSTEM_MANAGER */
334 <0x0000005c 0x01010001 0x01010001>,
335 /* OSC0_TIMER */
336 <0x00000060 0x01010301 0x01010301>,
337 /* OSC1_TIMER0*/
338 <0x00000064 0x01010301 0x01010301>,
339 /* WATCHDOG0 */
340 <0x00000068 0x01010301 0x01010301>,
341 /* WATCHDOG1 */
342 <0x0000006c 0x01010301 0x01010301>,
343 /* WATCHDOG2 */
344 <0x00000070 0x01010301 0x01010301>,
345 /* WATCHDOG3 */
346 <0x00000074 0x01010301 0x01010301>,
347 /* DAP */
348 <0x00000078 0x03010001 0x03010001>,
349 /* WATCHDOG4 */
350 <0x0000007c 0x01010301 0x01010301>,
351 /* POWER_MANAGER */
352 <0x00000080 0x01010001 0x01010001>,
353 /* USB1_RXECC */
354 <0x00000084 0x01010001 0x01010001>,
355 /* USB1_TXECC */
356 <0x00000088 0x01010001 0x01010001>,
357 /* L4_NOC_PROBES */
358 <0x00000090 0x01010001 0x01010001>,
359 /* L4_NOC_QOS */
360 <0x00000094 0x01010001 0x01010001>;
361 bootph-all;
362 };
363
364 /* Light weight SoC2FPGA */
365 noc_fw_lwsoc2fpga@10d21300 {
366 reg = <0x10d21300 0x0000004>;
367 intel,offset-settings =
368 /* LWSOC2FPGA_CSR */
369 <0x00000000 0x0ffe0301 0x0ffe0301>;
370 bootph-all;
371 };
372
373 /* SoC2FPGA */
374 noc_fw_soc2fpga@10d21200 {
375 reg = <0x10d21200 0x0000004>;
376 intel,offset-settings =
377 /* SOC2FPGA_CSR */
378 <0x00000000 0x0ffe0301 0x0ffe0301>;
379 bootph-all;
380 };
381
382 /* TCU */
383 noc_fw_tcu@10d21400 {
384 reg = <0x10d21400 0x0000004>;
385 intel,offset-settings =
386 /* TCU_CSR */
387 <0x00000000 0x01010001 0x01010001>;
388 bootph-all;
389 };
390 };
Tien Fong Chee43975a12025-02-18 16:34:59 +0800391
392 socfpga_smmu_secure_config: socfpga-smmu-secure-config {
393 compatible = "intel,socfpga-dtreg";
394 #address-cells = <1>;
395 #size-cells = <1>;
396 bootph-all;
397
398 /* System manager */
399 i_sys_mgt_sysmgr_csr@10d12000 {
400 reg = <0x10d12000 0x00000500>;
401 intel,offset-settings =
402 /* dma_tbu_stream_ctrl_reg_0_dma0 */
403 <0x0000017c 0x00000000 0x0000003f>,
404 /* dma_tbu_stream_ctrl_reg_0_dma1 */
405 <0x00000180 0x00000000 0x0000003f>,
406 /* sdm_tbu_stream_ctrl_reg_1_sdm */
407 <0x00000184 0x00000000 0x0000003f>,
408 /* io_tbu_stream_ctrl_reg_2_usb2 */
409 <0x00000188 0x00000000 0x0000003f>,
410 /* io_tbu_stream_ctrl_reg_2_sdmmc */
411 <0x00000190 0x00000000 0x0000003f>,
412 /* io_tbu_stream_ctrl_reg_2_nand */
413 <0x00000194 0x00000000 0x0000003f>,
414 /* io_tbu_stream_ctrl_reg_2_etr */
415 <0x00000198 0x00000000 0x0000003f>,
416 /* tsn_tbu_stream_ctrl_reg_3_tsn0 */
417 <0x0000019c 0x00000000 0x0000003f>,
418 /* tsn_tbu_stream_ctrl_reg_3_tsn1 */
419 <0x000001a0 0x00000000 0x0000003f>,
420 /* tsn_tbu_stream_ctrl_reg_3_tsn2 */
421 <0x000001a4 0x00000000 0x0000003f>;
422 bootph-all;
423 };
424 };
Tien Fong Chee60af21b2025-02-18 16:34:54 +0800425 };
Jit Loon Lim977071e2024-03-12 22:01:03 +0800426};
427
428&clkmgr {
429 bootph-all;
430};
431
432&i2c0 {
433 reset-names = "i2c";
434};
435
436&i2c1 {
437 reset-names = "i2c";
438};
439
440&i2c2 {
441 reset-names = "i2c";
442};
443
444&i2c3 {
445 reset-names = "i2c";
446};
447
448&mmc {
449 resets = <&rst SDMMC_RESET>, <&rst SDMMC_OCP_RESET>;
450};
451
452&porta {
453 bank-name = "porta";
454};
455
456&portb {
457 bank-name = "portb";
458};
459
460&qspi {
461 bootph-all;
462};
463
464&rst {
465 compatible = "altr,rst-mgr";
466 altr,modrst-offset = <0x24>;
467 bootph-all;
468};
469
470&sysmgr {
471 compatible = "altr,sys-mgr", "syscon";
472 bootph-all;
473};
474
475&uart0 {
476 bootph-all;
477};
478
479&watchdog0 {
480 bootph-all;
481};