blob: e08dd5523f2986ed26d5c79559dd21596587f9a6 [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 Cheec7e31122025-02-18 16:34:56 +08006 * Copyright (C) 2025 Altera Corporation <www.altera.com>
Jit Loon Lim977071e2024-03-12 22:01:03 +08007 */
8
9#include "socfpga_agilex5-u-boot.dtsi"
10
11/{
12 aliases {
13 spi0 = &qspi;
14 freeze_br0 = &freeze_controller;
15 };
16
17 soc {
18 freeze_controller: freeze_controller@0x20000450 {
19 compatible = "altr,freeze-bridge-controller";
20 reg = <0x20000450 0x00000010>;
21 status = "disabled";
22 };
23 };
24
Tingting Menga1a24f12025-02-21 21:49:41 +080025 /*
26 * Both Memory base address and size default info is retrieved from HW setting.
27 * Reconfiguration / Overwrite these info can be done with examples below.
28 */
29 /*
30 * Example for memory size with 2GB:
31 * memory {
32 * reg = <0x0 0x80000000 0x0 0x80000000>;
33 * };
34 */
35 /*
36 * Example for memory size with 8GB:
37 * memory {
38 * reg = <0x0 0x80000000 0x0 0x80000000>,
39 * <0x8 0x80000000 0x1 0x80000000>;
40 * };
41 */
42 /*
43 * Example for memory size with 32GB:
44 * memory {
45 * reg = <0x0 0x80000000 0x0 0x80000000>,
46 * <0x8 0x80000000 0x7 0x80000000>;
47 * };
48 */
49 /*
50 * Example for memory size with 512GB:
51 * memory {
52 * reg = <0x0 0x80000000 0x0 0x80000000>,
53 * <0x8 0x80000000 0x7 0x80000000>,
54 * <0x88 0x00000000 0x78 0x00000000>;
55 * };
56 */
Jit Loon Lim977071e2024-03-12 22:01:03 +080057
58 chosen {
59 stdout-path = "serial0:115200n8";
60 u-boot,spl-boot-order = &mmc,&flash0,"/memory";
61 };
62};
63
64&flash0 {
65 compatible = "jedec,spi-nor";
66 spi-tx-bus-width = <4>;
67 spi-rx-bus-width = <4>;
68 bootph-all;
69 /delete-property/ cdns,read-delay;
70};
71
72&i3c0 {
73 bootph-all;
74};
75
76&i3c1 {
77 bootph-all;
78};
79
80&mmc {
81 status = "okay";
82 bus-width = <4>;
83 sd-uhs-sdr50;
84 cap-mmc-highspeed;
85 bootph-all;
86};
87
88&combophy0 {
89 status = "okay";
90 bootph-all;
91 cdns,phy-use-ext-lpbk-dqs = <1>;
92 cdns,phy-use-lpbk-dqs = <1>;
93 cdns,phy-use-phony-dqs = <1>;
94 cdns,phy-use-phony-dqs-cmd = <1>;
95 cdns,phy-io-mask-always-on = <0>;
96 cdns,phy-io-mask-end = <5>;
97 cdns,phy-io-mask-start = <0>;
98 cdns,phy-data-select-oe-end = <1>;
99 cdns,phy-sync-method = <1>;
100 cdns,phy-sw-half-cycle-shift = <0>;
101 cdns,phy-rd-del-sel = <52>;
102 cdns,phy-underrun-suppress = <1>;
103 cdns,phy-gate-cfg-always-on = <1>;
104 cdns,phy-param-dll-bypass-mode = <1>;
105 cdns,phy-param-phase-detect-sel = <2>;
106 cdns,phy-param-dll-start-point = <254>;
107 cdns,phy-read-dqs-cmd-delay = <0>;
108 cdns,phy-clk-wrdqs-delay = <0>;
109 cdns,phy-clk-wr-delay = <0>;
110 cdns,phy-read-dqs-delay = <0>;
111 cdns,phy-phony-dqs-timing = <0>;
112 cdns,hrs09-rddata-en = <1>;
113 cdns,hrs09-rdcmd-en = <1>;
114 cdns,hrs09-extended-wr-mode = <1>;
115 cdns,hrs09-extended-rd-mode = <1>;
116 cdns,hrs10-hcsdclkadj = <3>;
117 cdns,hrs16-wrdata1-sdclk-dly = <0>;
118 cdns,hrs16-wrdata0-sdclk-dly = <0>;
119 cdns,hrs16-wrcmd1-sdclk-dly = <0>;
120 cdns,hrs16-wrcmd0-sdclk-dly = <0>;
121 cdns,hrs16-wrdata1-dly = <0>;
122 cdns,hrs16-wrdata0-dly = <0>;
123 cdns,hrs16-wrcmd1-dly = <0>;
124 cdns,hrs16-wrcmd0-dly = <0>;
125 cdns,hrs07-rw-compensate = <10>;
126 cdns,hrs07-idelay-val = <0>;
127};
128
129&qspi {
130 status = "okay";
131};
132
133&timer0 {
134 bootph-all;
135};
136
137&timer1 {
138 bootph-all;
139};
140
141&timer2 {
142 bootph-all;
143};
144
145&timer3 {
146 bootph-all;
147};
148
149&watchdog0 {
150 bootph-all;
151};
152
Tien Fong Cheec7e31122025-02-18 16:34:56 +0800153&gmac0 {
154 status = "okay";
155 phy-mode = "rgmii";
156 phy-handle = <&emac0_phy0>;
157
158 max-frame-size = <9000>;
159
160 mdio0 {
161 #address-cells = <1>;
162 #size-cells = <0>;
163 compatible = "snps,dwxgmac-mdio";
164 emac0_phy0: ethernet-phy@0 {
165 reg = <0>;
166 };
167 };
168};
169
170&gmac2 {
171 status = "okay";
172 phy-mode = "rgmii";
173 phy-handle = <&emac2_phy0>;
174
175 max-frame-size = <9000>;
176
177 mdio0 {
178 #address-cells = <1>;
179 #size-cells = <0>;
180 compatible = "snps,dwxgmac-mdio";
181 emac2_phy0: ethernet-phy@0 {
182 reg = <0>;
183 };
184 };
185};