blob: 3710564cd4a98d508ad27c6a51a80065fec1bf95 [file] [log] [blame]
Wadim Egorov36e26d12024-02-28 09:42:16 +01001// SPDX-License-Identifier: GPL-2.0
2/*
3 * Based on k3-am64x-binman.dtsi
4 *
5 * Copyright (C) 2022 - 2024 PHYTEC Messtechnik GmbH
6 * Author: Wadim Egorov <w.egorov@phytec.de>
7 */
8
9#include "k3-binman.dtsi"
10
11#ifdef CONFIG_TARGET_PHYCORE_AM64X_R5
12&binman {
13 tiboot3-am64x_sr2-hs-phycore-som.bin {
14 filename = "tiboot3-am64x_sr2-hs-phycore-som.bin";
15 ti-secure-rom {
16 content = <&u_boot_spl>, <&ti_sci_enc>,
17 <&combined_sysfw_cfg>, <&sysfw_inner_cert>;
18 combined;
19 sysfw-inner-cert;
20 keyfile = "custMpk.pem";
21 sw-rev = <1>;
22 content-sbl = <&u_boot_spl>;
23 content-sysfw = <&ti_sci_enc>;
24 content-sysfw-data = <&combined_sysfw_cfg>;
25 content-sysfw-inner-cert = <&sysfw_inner_cert>;
26 load = <0x70000000>;
27 load-sysfw = <0x44000>;
28 load-sysfw-data = <0x7b000>;
29 };
30 u_boot_spl: u-boot-spl {
31 no-expanded;
32 };
33 ti_sci_enc: ti-fs-enc.bin {
34 filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-enc.bin";
35 type = "blob-ext";
36 optional;
37 };
38 combined_sysfw_cfg: combined-sysfw-cfg.bin {
39 filename = "combined-sysfw-cfg.bin";
40 type = "blob-ext";
41 };
42 sysfw_inner_cert: sysfw-inner-cert {
43 filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-cert.bin";
44 type = "blob-ext";
45 optional;
46 };
47
48 };
49};
50
51&binman {
52 tiboot3-am64x_sr2-hs-fs-phycore-som.bin {
53 filename = "tiboot3-am64x_sr2-hs-fs-phycore-som.bin";
54 symlink = "tiboot3.bin";
55 ti-secure-rom {
56 content = <&u_boot_spl_fs>, <&ti_sci_enc_fs>,
57 <&combined_sysfw_cfg_fs>, <&sysfw_inner_cert_fs>;
58 combined;
59 sysfw-inner-cert;
60 keyfile = "custMpk.pem";
61 sw-rev = <1>;
62 content-sbl = <&u_boot_spl_fs>;
63 content-sysfw = <&ti_sci_enc_fs>;
64 content-sysfw-data = <&combined_sysfw_cfg_fs>;
65 content-sysfw-inner-cert = <&sysfw_inner_cert_fs>;
66 load = <0x70000000>;
67 load-sysfw = <0x44000>;
68 load-sysfw-data = <0x7b000>;
69 };
70 u_boot_spl_fs: u-boot-spl {
71 no-expanded;
72 };
73 ti_sci_enc_fs: ti-fs-enc.bin {
74 filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-fs-enc.bin";
75 type = "blob-ext";
76 optional;
77 };
78 combined_sysfw_cfg_fs: combined-sysfw-cfg.bin {
79 filename = "combined-sysfw-cfg.bin";
80 type = "blob-ext";
81 };
82 sysfw_inner_cert_fs: sysfw-inner-cert {
83 filename = "ti-sysfw/ti-sci-firmware-am64x_sr2-hs-fs-cert.bin";
84 type = "blob-ext";
85 optional;
86 };
87
88 };
89};
90
91&binman {
92 tiboot3-am64x-gp-phycore-som.bin {
93 filename = "tiboot3-am64x-gp-phycore-som.bin";
94 ti-secure-rom {
95 content = <&u_boot_spl_unsigned>, <&ti_sci_gp>, <&combined_sysfw_cfg_gp>;
96 combined;
97 content-sbl = <&u_boot_spl_unsigned>;
98 load = <0x70000000>;
99 content-sysfw = <&ti_sci_gp>;
100 load-sysfw = <0x44000>;
101 content-sysfw-data = <&combined_sysfw_cfg_gp>;
102 load-sysfw-data = <0x7b000>;
103 sw-rev = <1>;
104 keyfile = "ti-degenerate-key.pem";
105 };
106 u_boot_spl_unsigned: u-boot-spl {
107 no-expanded;
108 };
109 ti_sci_gp: ti-sci-gp.bin {
110 filename = "ti-sysfw/ti-sci-firmware-am64x-gp.bin";
111 type = "blob-ext";
112 optional;
113 };
114 combined_sysfw_cfg_gp: combined-sysfw-cfg-gp.bin {
115 filename = "combined-sysfw-cfg.bin";
116 type = "blob-ext";
117 };
118 };
119};
120
Wadim Egorov180ef0e2024-11-27 13:17:34 +0100121#include "k3-binman-capsule-r5.dtsi"
122
123&capsule_tiboot3 {
124 efi-capsule {
125 /*
126 * The GUID is generated dynamically by taking a namespace UUID and hashing
127 * it with the board compatible and fw_image name:
128 * mkeficapsule guidgen k3-am642-r5-phycore-som-2gb.dtb PHYCORE_AM64X_TIBOOT3
129 */
130 image-guid = "B0A6B4FA-5DF0-5CD1-90EC-B60BDE798486";
131 };
132};
133
Wadim Egorov36e26d12024-02-28 09:42:16 +0100134#endif
135
136#ifdef CONFIG_TARGET_PHYCORE_AM64X_A53
Wadim Egorov48971832024-04-19 08:51:16 +0200137#define SPL_AM642_PHYBOARD_ELECTRA_DTB "spl/dts/ti/k3-am642-phyboard-electra-rdk.dtb"
Wadim Egorov36e26d12024-02-28 09:42:16 +0100138#define AM642_PHYBOARD_ELECTRA_DTB "u-boot.dtb"
139
140&binman {
141 ti-spl {
142 insert-template = <&ti_spl_template>;
143
144 fit {
145 description = "Configuration to load ATF and SPL";
146 #address-cells = <1>;
147
148 images {
149 dm {
150 blob-ext {
151 filename = "/dev/null";
152 };
153 };
154
155 fdt-0 {
156 description = "k3-am642-phyboard-electra-rdk";
157 type = "flat_dt";
158 arch = "arm";
159 compression = "none";
160 ti-secure {
161 content = <&spl_am642_phyboard_electra_dtb>;
162 keyfile = "custMpk.pem";
163 };
164 spl_am642_phyboard_electra_dtb: blob-ext {
165 filename = SPL_AM642_PHYBOARD_ELECTRA_DTB;
166 };
167
168 };
169 };
170
171 configurations {
172 default = "conf-0";
173
174 conf-0 {
175 description = "k3-am642-phyboard-electra-rdk";
176 firmware = "atf";
177 loadables = "tee", "dm", "spl";
178 fdt = "fdt-0";
179 };
180 };
181 };
182 };
183};
184
185&binman {
186 u-boot {
187 insert-template = <&u_boot_template>;
188
189 fit {
190 images {
191 uboot {
192 description = "U-Boot for AM64 board";
193 };
194
195 fdt-0 {
196 description = "k3-am642-phyboard-electra-rdk";
197 type = "flat_dt";
198 arch = "arm";
199 compression = "none";
200 ti-secure {
201 content = <&am642_phyboard_electra_dtb>;
202 keyfile = "custMpk.pem";
203 };
204 am642_phyboard_electra_dtb: blob-ext {
205 filename = AM642_PHYBOARD_ELECTRA_DTB;
206 };
207 hash {
208 algo = "crc32";
209 };
210 };
211 };
212
213 configurations {
214 default = "conf-0";
215
216 conf-0 {
217 description = "k3-am642-phyboard-electra-rdk";
218 firmware = "uboot";
219 loadables = "uboot";
220 fdt = "fdt-0";
221 };
222 };
223 };
224 };
225};
226
227&binman {
228 ti-spl_unsigned {
229 insert-template = <&ti_spl_unsigned_template>;
230
231 fit {
232 images {
233 dm {
234 blob-ext {
235 filename = "/dev/null";
236 };
237 };
238
239 fdt-0 {
240 description = "k3-am642-phyboard-electra-rdk";
241 type = "flat_dt";
242 arch = "arm";
243 compression = "none";
244 blob {
245 filename = SPL_AM642_PHYBOARD_ELECTRA_DTB;
246 };
247 };
248 };
249
250 configurations {
251 default = "conf-0";
252
253 conf-0 {
254 description = "k3-am642-phyboard-electra-rdk";
255 firmware = "atf";
256 loadables = "tee", "dm", "spl";
257 fdt = "fdt-0";
258 };
259 };
260 };
261 };
262};
263
264&binman {
265 u-boot_unsigned {
266 insert-template = <&u_boot_unsigned_template>;
267
268 fit {
269 images {
270 uboot {
271 description = "U-Boot for AM64 board";
272 };
273
274 fdt-0 {
275 description = "k3-am642-phyboard-electra-rdk";
276 type = "flat_dt";
277 arch = "arm";
278 compression = "none";
279 blob {
280 filename = AM642_PHYBOARD_ELECTRA_DTB;
281 };
282 hash {
283 algo = "crc32";
284 };
285 };
286 };
287
288 configurations {
289 default = "conf-0";
290
291 conf-0 {
292 description = "k3-am642-phyboard-electra-rdk";
293 firmware = "uboot";
294 loadables = "uboot";
295 fdt = "fdt-0";
296 };
297 };
298 };
299 };
300};
301#endif
302
303#ifdef CONFIG_TARGET_PHYCORE_AM64X_A53
304
Wadim Egorov36e26d12024-02-28 09:42:16 +0100305&binman {
306 ti-spl {
307 insert-template = <&ti_spl_template>;
308
309 fit {
310 description = "Configuration to load ATF and SPL";
311 #address-cells = <1>;
312
313 images {
314 dm {
315 blob-ext {
316 filename = "/dev/null";
317 };
318 };
319
320 fdt-0 {
321 description = "k3-am642-phyboard-electra-rdk";
322 type = "flat_dt";
323 arch = "arm";
324 compression = "none";
325 ti-secure {
326 content = <&spl_am642_phyboard_electra_dtb>;
327 keyfile = "custMpk.pem";
328 };
329 spl_am642_phyboard_electra_dtb: blob-ext {
330 filename = SPL_AM642_PHYBOARD_ELECTRA_DTB;
331 };
332
333 };
334 };
335
336 configurations {
337 default = "conf-0";
338
339 conf-0 {
340 description = "k3-am642-phyboard-electra-rdk";
341 firmware = "atf";
342 loadables = "tee", "dm", "spl";
343 fdt = "fdt-0";
344 };
345 };
346 };
347 };
348};
349
350&binman {
351 u-boot {
352 insert-template = <&u_boot_template>;
353
354 fit {
355 images {
356 uboot {
357 description = "U-Boot for AM64 board";
358 };
359
Wadim Egorov6310ae92024-10-30 17:48:14 +0100360 som-no-rtc {
361 description = "k3-am6xx-phycore-disable-rtc";
362 type = "flat_dt";
363 compression = "none";
364 load = <0x8F000000>;
365 arch = "arm";
366
367 blob-ext {
368 filename = "dts/upstream/src/arm64/ti/k3-am6xx-phycore-disable-rtc.dtbo";
369 };
370 };
371
372 som-no-spi {
373 description = "k3-am6xx-phycore-disable-spi-nor";
374 type = "flat_dt";
375 compression = "none";
376 load = <0x8F001000>;
377 arch = "arm";
378
379 blob-ext {
380 filename = "dts/upstream/src/arm64/ti/k3-am6xx-phycore-disable-spi-nor.dtbo";
381 };
382 };
383
384 som-no-eth {
385 description = "k3-am6xx-phycore-disable-eth-phy";
386 type = "flat_dt";
387 compression = "none";
388 load = <0x8F002000>;
389 arch = "arm";
390
391 blob-ext {
392 filename = "dts/upstream/src/arm64/ti/k3-am6xx-phycore-disable-eth-phy.dtbo";
393 };
394 };
395
396 som-qspi {
397 description = "k3-am6xx-phycore-qspi-nor";
398 type = "flat_dt";
399 compression = "none";
400 load = <0x8F003000>;
401 arch = "arm";
402
403 blob-ext {
404 filename = "dts/upstream/src/arm64/ti/k3-am6xx-phycore-qspi-nor.dtbo";
405 };
406 };
407
Wadim Egorov36e26d12024-02-28 09:42:16 +0100408 fdt-0 {
409 description = "k3-am642-phyboard-electra-rdk";
410 type = "flat_dt";
411 arch = "arm";
412 compression = "none";
413 ti-secure {
414 content = <&am642_phyboard_electra_dtb>;
415 keyfile = "custMpk.pem";
416 };
417 am642_phyboard_electra_dtb: blob-ext {
418 filename = AM642_PHYBOARD_ELECTRA_DTB;
419 };
420 hash {
421 algo = "crc32";
422 };
423 };
424 };
425
426 configurations {
427 default = "conf-0";
428
429 conf-0 {
430 description = "k3-am642-phyboard-electra-rdk";
431 firmware = "uboot";
Wadim Egorov6310ae92024-10-30 17:48:14 +0100432 loadables = "uboot",
433 "som-no-rtc",
434 "som-no-spi",
435 "som-no-eth",
436 "som-qspi";
Wadim Egorov36e26d12024-02-28 09:42:16 +0100437 fdt = "fdt-0";
438 };
439 };
440 };
441 };
442};
443
444&binman {
445 ti-spl_unsigned {
446 insert-template = <&ti_spl_unsigned_template>;
447
448 fit {
449 images {
450 dm {
451 blob-ext {
452 filename = "/dev/null";
453 };
454 };
455
456 fdt-0 {
457 description = "k3-am642-phyboard-electra-rdk";
458 type = "flat_dt";
459 arch = "arm";
460 compression = "none";
461 blob {
462 filename = SPL_AM642_PHYBOARD_ELECTRA_DTB;
463 };
464 };
465 };
466
467 configurations {
468 default = "conf-0";
469
470 conf-0 {
471 description = "k3-am642-phyboard-electra-rdk";
472 firmware = "atf";
473 loadables = "tee", "dm", "spl";
474 fdt = "fdt-0";
475 };
476 };
477 };
478 };
479};
480
481&binman {
482 u-boot_unsigned {
483 insert-template = <&u_boot_unsigned_template>;
484
485 fit {
486 images {
487 uboot {
488 description = "U-Boot for AM64 board";
489 };
490
491 fdt-0 {
492 description = "k3-am642-phyboard-electra-rdk";
493 type = "flat_dt";
494 arch = "arm";
495 compression = "none";
496 blob {
497 filename = AM642_PHYBOARD_ELECTRA_DTB;
498 };
499 hash {
500 algo = "crc32";
501 };
502 };
503 };
504
505 configurations {
506 default = "conf-0";
507
508 conf-0 {
509 description = "k3-am642-phyboard-electra-rdk";
510 firmware = "uboot";
511 loadables = "uboot";
512 fdt = "fdt-0";
513 };
514 };
515 };
516 };
517};
Wadim Egorov180ef0e2024-11-27 13:17:34 +0100518
519#include "k3-binman-capsule.dtsi"
520
521&capsule_tispl {
522 efi-capsule {
523 /*
524 * The GUID is generated dynamically by taking a namespace UUID and hashing
525 * it with the board compatible and fw_image name:
526 * mkeficapsule guidgen k3-am642-phyboard-electra-rdk.dtb PHYCORE_AM64X_SPL
527 */
528 image-guid = "D0F34382-C2C4-509C-A1D4-BC1CB1B992A8";
529 };
530};
531
532&capsule_uboot {
533 efi-capsule {
534 /*
535 * The GUID is generated dynamically by taking a namespace UUID and hashing
536 * it with the board compatible and fw_image name:
537 * mkeficapsule guidgen k3-am642-phyboard-electra-rdk.dtb PHYCORE_AM64X_UBOOT
538 */
539 image-guid = "0BB40539-DB41-5407-B4D4-EAD057FE10F4";
540 };
541};
542
Wadim Egorov36e26d12024-02-28 09:42:16 +0100543#endif /* CONFIG_TARGET_PHYCORE_AM64X_A53 */