blob: 16e1052a64a9c88c647f5f8402dd6695f4ad2138 [file] [log] [blame]
Michal Simekcaa11b82024-11-01 10:17:58 +01001// SPDX-License-Identifier: GPL-2.0
2/*
3 * dts file for Xilinx ZynqMP platforms
4 *
5 * (C) Copyright 2024, Advanced Micro Devices, Inc.
6 *
7 * Michal Simek <michal.simek@amd.com>
8 */
9
10#include <config.h>
11
12/dts-v1/;
13/ {
14 binman: binman {
15 multiple-images;
16
Prasad Kummari6629bd82025-01-21 13:24:59 +010017#ifdef CONFIG_SPL
Michal Simekcaa11b82024-11-01 10:17:58 +010018 /* u-boot.itb generation in a static way */
19 itb {
20 filename = "u-boot.itb";
21 pad-byte = <0>;
22
23 fit {
24 description = "Configuration for Xilinx ZynqMP SoC";
25 fit,align = <0x8>;
26 fit,external-offset = <0x0>;
27 fit,fdt-list = "of-list";
28 images {
29 uboot {
30 description = "U-Boot (64-bit)";
31 type = "firmware";
32 os = "u-boot";
33 arch = "arm64";
34 compression = "none";
35 load = /bits/ 64 <CONFIG_TEXT_BASE>;
36 entry = /bits/ 64 <CONFIG_TEXT_BASE>;
37 hash {
38 algo = "md5";
39 };
40 u-boot-nodtb {
41 };
42 };
43 atf {
44 description = "Trusted Firmware-A";
45 type = "firmware";
46 os = "arm-trusted-firmware";
47 arch = "arm64";
48 compression = "none";
49 load = /bits/ 64 <CONFIG_BL31_LOAD_ADDR>;
50 entry = /bits/ 64 <CONFIG_BL31_LOAD_ADDR>;
51 hash {
52 algo = "md5";
53 };
54 atf-bl31 {
55 optional;
56 };
57 };
58 tee {
59 description = "OP-TEE";
60 type = "tee";
61 arch = "arm64";
62 compression = "none";
63 os = "tee";
Michal Simek775cbf42025-02-04 09:53:39 +010064 load = /bits/ 64 <CONFIG_BL32_LOAD_ADDR>;
65 entry = /bits/ 64 <CONFIG_BL32_LOAD_ADDR>;
66 hash {
67 algo = "md5";
68 };
Michal Simekcaa11b82024-11-01 10:17:58 +010069 tee-os {
70 optional;
71 };
72 };
73 @fdt-SEQ {
74 description = "NAME";
75 type = "flat_dt";
76 arch = "arm64";
77 compression = "none";
Michal Simekf77acbb2025-02-04 09:53:40 +010078#if CONFIG_XILINX_OF_BOARD_DTB_ADDR
79 load = /bits/ 64 <CONFIG_XILINX_OF_BOARD_DTB_ADDR>;
80#endif
81 hash {
Michal Simekcaa11b82024-11-01 10:17:58 +010082 algo = "md5";
83 };
84 };
85 };
86 configurations {
87 default = "@conf-DEFAULT-SEQ";
88 @conf-SEQ {
89 description = "NAME";
90 firmware = "atf";
91 loadables = "tee", "uboot";
92 fdt = "fdt-SEQ";
93 };
94 };
95 };
96 };
97
Michal Simek7bbd3bb2024-11-20 09:05:27 +010098 itb-single {
99 filename = "u-boot-single.itb";
100 pad-byte = <0>;
101
102 fit {
103 description = "Configuration for Xilinx ZynqMP SoC";
104 fit,align = <0x8>;
105 fit,external-offset = <0x0>;
106 fit,fdt-list = "of-list";
107 images {
108 uboot {
109 description = "U-Boot (64-bit)";
110 type = "firmware";
111 os = "u-boot";
112 arch = "arm64";
113 compression = "none";
114 load = /bits/ 64 <CONFIG_TEXT_BASE>;
115 entry = /bits/ 64 <CONFIG_TEXT_BASE>;
116 hash {
117 algo = "md5";
118 };
119 u-boot-nodtb {
120 };
121 };
122 atf {
123 description = "Trusted Firmware-A";
124 type = "firmware";
125 os = "arm-trusted-firmware";
126 arch = "arm64";
127 compression = "none";
128 load = /bits/ 64 <CONFIG_BL31_LOAD_ADDR>;
129 entry = /bits/ 64 <CONFIG_BL31_LOAD_ADDR>;
130 hash {
131 algo = "md5";
132 };
133 atf-bl31 {
134 optional;
135 };
136 };
137 tee {
138 description = "OP-TEE";
139 type = "tee";
140 arch = "arm64";
141 compression = "none";
142 os = "tee";
Michal Simek775cbf42025-02-04 09:53:39 +0100143 load = /bits/ 64 <CONFIG_BL32_LOAD_ADDR>;
144 entry = /bits/ 64 <CONFIG_BL32_LOAD_ADDR>;
145 hash {
146 algo = "md5";
147 };
Michal Simek7bbd3bb2024-11-20 09:05:27 +0100148 tee-os {
149 optional;
150 };
151 };
152 fdt {
153 description = "DT";
154 type = "flat_dt";
155 arch = "arm64";
156 compression = "none";
Michal Simekf77acbb2025-02-04 09:53:40 +0100157#if CONFIG_XILINX_OF_BOARD_DTB_ADDR
158 load = /bits/ 64 <CONFIG_XILINX_OF_BOARD_DTB_ADDR>;
159#endif
160 hash {
161 algo = "md5";
162 };
Michal Simek7bbd3bb2024-11-20 09:05:27 +0100163 uboot-fdt-blob {
164 filename = "u-boot.dtb";
165 type = "blob-ext";
166 };
Michal Simek7bbd3bb2024-11-20 09:05:27 +0100167 };
168 };
169 configurations {
170 default = "conf-1";
171 conf-1 {
172 description = "Single DT";
173 firmware = "atf";
174 loadables = "tee", "uboot";
175 fdt = "fdt";
176 };
177 };
178 };
179 };
180
Michal Simekcaa11b82024-11-01 10:17:58 +0100181#ifdef CONFIG_SYS_SPI_U_BOOT_OFFS
182 /* QSPI image for testing QSPI boot mode */
183 image {
184 filename = "qspi.bin";
185 pad-byte = <0>;
186
187 blob-ext@1 {
188 offset = <0x0>;
189 filename = "spl/boot.bin";
190 };
191 blob-ext@2 {
192 offset = <CONFIG_SYS_SPI_U_BOOT_OFFS>;
193 filename = "u-boot.itb";
194 };
195 fdtmap {
196 };
197 };
Michal Simek7bbd3bb2024-11-20 09:05:27 +0100198
199 image-single {
200 filename = "qspi-single.bin";
201 pad-byte = <0>;
202
203 blob-ext@1 {
204 offset = <0x0>;
205 filename = "spl/boot.bin";
206 };
207 blob-ext@2 {
208 offset = <CONFIG_SYS_SPI_U_BOOT_OFFS>;
209 filename = "u-boot-single.itb";
210 };
211 fdtmap {
212 };
213 };
Michal Simekcaa11b82024-11-01 10:17:58 +0100214#endif
Prasad Kummari6629bd82025-01-21 13:24:59 +0100215#endif
Michal Simekcaa11b82024-11-01 10:17:58 +0100216 };
217};