blob: 1766adc5d4c138ac3211cfb19061f461bc177560 [file] [log] [blame]
Robert Nelson0c24aad2023-08-25 13:03:03 -05001// SPDX-License-Identifier: GPL-2.0
2/*
3 * https://beagleboard.org/play
4 *
5 * Copyright (C) 2022-2023 Texas Instruments Incorporated - https://www.ti.com/
6 * Copyright (C) 2022-2023 Robert Nelson, BeagleBoard.org Foundation
7 */
8
Nishanth Menona23cc142023-11-04 03:01:33 -05009#include "k3-binman.dtsi"
Robert Nelson0c24aad2023-08-25 13:03:03 -050010
11/ {
12 chosen {
13 tick-timer = &main_timer0;
14 };
15
Robert Nelson0c24aad2023-08-25 13:03:03 -050016 /* Keep the LEDs on by default to indicate life */
17 leds {
Robert Nelson0c24aad2023-08-25 13:03:03 -050018 led-0 {
19 default-state = "on";
Robert Nelson0c24aad2023-08-25 13:03:03 -050020 };
21
22 led-1 {
23 default-state = "on";
Robert Nelson0c24aad2023-08-25 13:03:03 -050024 };
25
26 led-2 {
27 default-state = "on";
Robert Nelson0c24aad2023-08-25 13:03:03 -050028 };
29
30 led-3 {
31 default-state = "on";
Robert Nelson0c24aad2023-08-25 13:03:03 -050032 };
33
34 led-4 {
35 default-state = "on";
Robert Nelson0c24aad2023-08-25 13:03:03 -050036 };
37 };
38};
39
Robert Nelson0c24aad2023-08-25 13:03:03 -050040&main_timer0 {
41 clock-frequency = <25000000>;
Robert Nelson0c24aad2023-08-25 13:03:03 -050042};
43
Robert Nelson0c24aad2023-08-25 13:03:03 -050044&sd_pins_default {
Robert Nelson0c24aad2023-08-25 13:03:03 -050045 /* Force to use SDCD card detect pin */
46 pinctrl-single,pins = <
47 AM62X_IOPAD(0x023c, PIN_INPUT, 0) /* (A21) MMC1_CMD */
48 AM62X_IOPAD(0x0234, PIN_INPUT, 0) /* (B22) MMC1_CLK */
49 AM62X_IOPAD(0x0230, PIN_INPUT, 0) /* (A22) MMC1_DAT0 */
50 AM62X_IOPAD(0x022c, PIN_INPUT, 0) /* (B21) MMC1_DAT1 */
51 AM62X_IOPAD(0x0228, PIN_INPUT, 0) /* (C21) MMC1_DAT2 */
52 AM62X_IOPAD(0x0224, PIN_INPUT, 0) /* (D22) MMC1_DAT3 */
53 AM62X_IOPAD(0x0240, PIN_INPUT, 0) /* (D17) MMC1_SDCD.MMC1_SDCD */
54 >;
55};
56
Sjoerd Simons87b60332024-05-06 15:38:45 +010057&usbss0 {
58 bootph-all;
59};
60
61&usb0 {
62 dr_mode = "peripheral";
63 bootph-all;
64};
65
Nishanth Menona23cc142023-11-04 03:01:33 -050066#ifdef CONFIG_TARGET_AM625_A53_BEAGLEPLAY
Robert Nelson0c24aad2023-08-25 13:03:03 -050067
Nishanth Menona23cc142023-11-04 03:01:33 -050068#define SPL_NODTB "spl/u-boot-spl-nodtb.bin"
Nishanth Menon21767042024-06-05 10:27:50 -050069#define SPL_AM625_BEAGLEPLAY_DTB "spl/dts/ti/k3-am625-beagleplay.dtb"
Nishanth Menona23cc142023-11-04 03:01:33 -050070#define UBOOT_NODTB "u-boot-nodtb.bin"
Nishanth Menon21767042024-06-05 10:27:50 -050071#define AM625_BEAGLEPLAY_DTB "dts/upstream/src/arm64/ti/k3-am625-beagleplay.dtb"
Robert Nelson0c24aad2023-08-25 13:03:03 -050072
Nishanth Menona23cc142023-11-04 03:01:33 -050073&binman {
74 ti-dm {
75 filename = "ti-dm.bin";
76 blob-ext {
77 filename = "ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f";
78 };
79 };
Robert Nelson0c24aad2023-08-25 13:03:03 -050080
Nishanth Menona23cc142023-11-04 03:01:33 -050081 ti-spl_unsigned {
82 filename = "tispl.bin_unsigned";
83 pad-byte = <0xff>;
Robert Nelson0c24aad2023-08-25 13:03:03 -050084
Nishanth Menona23cc142023-11-04 03:01:33 -050085 fit {
86 description = "Configuration to load ATF and SPL";
87 #address-cells = <1>;
Robert Nelson0c24aad2023-08-25 13:03:03 -050088
Nishanth Menona23cc142023-11-04 03:01:33 -050089 images {
Robert Nelson0c24aad2023-08-25 13:03:03 -050090
Nishanth Menona23cc142023-11-04 03:01:33 -050091 atf {
92 description = "ARM Trusted Firmware";
93 type = "firmware";
94 arch = "arm64";
95 compression = "none";
96 os = "arm-trusted-firmware";
97 load = <CONFIG_K3_ATF_LOAD_ADDR>;
98 entry = <CONFIG_K3_ATF_LOAD_ADDR>;
99 atf-bl31 {
100 filename = "bl31.bin";
101 };
102 };
103
104 tee {
105 description = "OP-TEE";
106 type = "tee";
107 arch = "arm64";
108 compression = "none";
109 os = "tee";
Andrew Davis27df8602024-02-14 10:30:05 -0600110 load = <CONFIG_K3_OPTEE_LOAD_ADDR>;
111 entry = <CONFIG_K3_OPTEE_LOAD_ADDR>;
Nishanth Menona23cc142023-11-04 03:01:33 -0500112 tee-os {
113 filename = "tee-raw.bin";
114 };
115 };
116
117 dm {
118 description = "DM binary";
119 type = "firmware";
120 arch = "arm32";
121 compression = "none";
122 os = "DM";
123 load = <0x89000000>;
124 entry = <0x89000000>;
125 blob-ext {
126 filename = "ti-dm.bin";
127 };
128 };
129
130 spl {
131 description = "SPL (64-bit)";
132 type = "standalone";
133 os = "U-Boot";
134 arch = "arm64";
135 compression = "none";
136 load = <CONFIG_SPL_TEXT_BASE>;
137 entry = <CONFIG_SPL_TEXT_BASE>;
138 blob {
139 filename = "spl/u-boot-spl-nodtb.bin";
140 };
141 };
142
143 fdt-0 {
144 description = "k3-am625-beagleplay";
145 type = "flat_dt";
146 arch = "arm";
147 compression = "none";
148 spl_am625_bp_dtb_unsigned: blob {
149 filename = SPL_AM625_BEAGLEPLAY_DTB;
150 };
151 };
152 };
153
154 configurations {
155 default = "conf-0";
156
157 conf-0 {
158 description = "k3-am625-beagleplay";
159 firmware = "atf";
160 loadables = "tee", "dm", "spl";
161 fdt = "fdt-0";
162 };
163 };
164 };
165 };
166
167 u-boot_unsigned {
168 filename = "u-boot.img_unsigned";
169 pad-byte = <0xff>;
170
171 fit {
172 description = "FIT image with multiple configurations";
173
174 images {
175 uboot {
176 description = "U-Boot for AM625 board";
177 type = "firmware";
178 os = "u-boot";
179 arch = "arm";
180 compression = "none";
181 load = <CONFIG_TEXT_BASE>;
182 blob {
183 filename = UBOOT_NODTB;
184 };
185 hash {
186 algo = "crc32";
187 };
188 };
189
190 fdt-0 {
191 description = "k3-am625-beagleplay";
192 type = "flat_dt";
193 arch = "arm";
194 compression = "none";
195 am625_bp_dtb_unsigned: blob {
196 filename = AM625_BEAGLEPLAY_DTB;
197 };
198 hash {
199 algo = "crc32";
200 };
201 };
202 };
203
204 configurations {
205 default = "conf-0";
206
207 conf-0 {
208 description = "k3-am625-beagleplay";
209 firmware = "uboot";
210 loadables = "uboot";
211 fdt = "fdt-0";
212 };
213 };
214 };
215 };
216};
Jonathan Humphreys82073c02024-05-31 17:51:06 -0500217
218#include "k3-binman-capsule.dtsi"
219
220// Capsule update GUIDs in string form. See beagleplay.h
221#define BEAGLEPLAY_SPL_IMAGE_GUID_STR "b2e7cc49-1a5a-4036-ae01-3387c3bef657"
222#define BEAGLEPLAY_UBOOT_IMAGE_GUID_STR "92c92b11-a7ee-486f-aaa2-713d84425b0e"
223
224&capsule_tispl {
225 efi-capsule {
226 image-guid = BEAGLEPLAY_SPL_IMAGE_GUID_STR;
227
228 blob {
229 filename = "tispl.bin_unsigned";
230 };
231 };
232};
233
234&capsule_uboot {
235 efi-capsule {
236 image-guid = BEAGLEPLAY_UBOOT_IMAGE_GUID_STR;
237
238 blob {
239 filename = "u-boot.img_unsigned";
240 };
241 };
242};
243
Robert Nelson0c24aad2023-08-25 13:03:03 -0500244#endif
Roger Quadros85d018f2024-05-13 15:13:55 +0300245
246&main_bcdma {
247 reg = <0x00 0x485c0100 0x00 0x100>,
248 <0x00 0x4c000000 0x00 0x20000>,
249 <0x00 0x4a820000 0x00 0x20000>,
250 <0x00 0x4aa40000 0x00 0x20000>,
251 <0x00 0x4bc00000 0x00 0x100000>,
252 <0x00 0x48600000 0x00 0x8000>,
253 <0x00 0x484a4000 0x00 0x2000>,
254 <0x00 0x484c2000 0x00 0x2000>;
255 reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt",
256 "cfg", "tchan", "rchan";
257};
258
259&main_pktdma {
260 reg = <0x00 0x485c0000 0x00 0x100>,
261 <0x00 0x4a800000 0x00 0x20000>,
262 <0x00 0x4aa00000 0x00 0x40000>,
263 <0x00 0x4b800000 0x00 0x400000>,
264 <0x00 0x485e0000 0x00 0x20000>,
265 <0x00 0x484a0000 0x00 0x4000>,
266 <0x00 0x484c0000 0x00 0x2000>,
267 <0x00 0x48430000 0x00 0x4000>;
268 reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt", "cfg",
269 "tchan", "rchan", "rflow";
270 bootph-all;
271};
272
273&mdio0_pins_default {
274 bootph-all;
275};
276
277&cpsw3g_mdio {
278 bootph-all;
279};
280
281&cpsw3g_phy0 {
282 bootph-all;
283};
284
285&rgmii1_pins_default {
286 bootph-all;
287};
288
289&cpsw3g {
290 bootph-all;
291
292 ethernet-ports {
293 bootph-all;
294 };
295};
296
297&phy_gmii_sel {
298 bootph-all;
299};
300
301&cpsw_port1 {
302 bootph-all;
303};
304
305&cpsw_port2 {
306 status = "disabled";
307};