blob: 96b1a1bc80297a582e5318be10b79a0f3d231338 [file] [log] [blame]
Adam Ford2d9310b2022-10-21 19:58:31 -05001// SPDX-License-Identifier: GPL-2.0+
2/*
3 * Copyright 2022 Logic PD, Inc dba Beacon EmbeddedWorks
4 */
5
6/ {
7 binman: binman {
8 multiple-images;
9 };
10
Tim Harvey1f5a5102023-08-24 12:01:44 -070011#ifdef CONFIG_OPTEE
Adam Ford2d9310b2022-10-21 19:58:31 -050012 firmware {
13 optee {
14 compatible = "linaro,optee-tz";
15 method = "smc";
16 };
17 };
Tim Harvey1f5a5102023-08-24 12:01:44 -070018#endif
Adam Ford2d9310b2022-10-21 19:58:31 -050019
20 wdt-reboot {
21 compatible = "wdt-reboot";
22 wdt = <&wdog1>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070023 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050024 };
25};
26
27&{/soc@0} {
Simon Glassd3a98cb2023-02-13 08:56:33 -070028 bootph-all;
29 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050030};
31
32&aips1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070033 bootph-pre-ram;
34 bootph-all;
Adam Ford2d9310b2022-10-21 19:58:31 -050035};
36
37&aips2 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070038 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050039};
40
41&aips3 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070042 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050043};
44
45&aips4 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070046 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050047};
48
49&clk {
Simon Glassd3a98cb2023-02-13 08:56:33 -070050 bootph-pre-ram;
51 bootph-all;
Adam Ford2d9310b2022-10-21 19:58:31 -050052 /delete-property/ assigned-clocks;
53 /delete-property/ assigned-clock-parents;
54 /delete-property/ assigned-clock-rates;
55};
56
Tim Harvey0951b9a2023-08-24 12:03:56 -070057#ifdef CONFIG_FSL_CAAM
58&crypto {
59 bootph-pre-ram;
60};
61#endif
62
Adam Ford2d9310b2022-10-21 19:58:31 -050063&iomuxc {
Simon Glassd3a98cb2023-02-13 08:56:33 -070064 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050065};
66
67&osc_24m {
Simon Glassd3a98cb2023-02-13 08:56:33 -070068 bootph-pre-ram;
69 bootph-all;
Adam Ford2d9310b2022-10-21 19:58:31 -050070};
Tim Harvey0951b9a2023-08-24 12:03:56 -070071
72#ifdef CONFIG_FSL_CAAM
73&sec_jr0 {
74 bootph-pre-ram;
75};
76
77&sec_jr1 {
78 bootph-pre-ram;
79};
80
81&sec_jr2 {
82 bootph-pre-ram;
83};
84#endif
Adam Ford2d9310b2022-10-21 19:58:31 -050085
86&spba1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070087 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050088};
89
90&wdog1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070091 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050092};
93
94&binman {
95 u-boot-spl-ddr {
96 filename = "u-boot-spl-ddr.bin";
97 pad-byte = <0xff>;
98 align-size = <4>;
99 align = <4>;
100
101 u-boot-spl {
102 align-end = <4>;
103 filename = "u-boot-spl.bin";
104 };
105
106 ddr-1d-imem-fw {
107#ifdef CONFIG_IMX8M_LPDDR4
108 filename = "lpddr4_pmu_train_1d_imem.bin";
109#elif CONFIG_IMX8M_DDR4
Oleksandr Suvorov8d2982f2023-01-16 17:21:27 +0200110 filename = "ddr4_imem_1d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500111#else
112 filename = "ddr3_imem_1d.bin";
113#endif
114 type = "blob-ext";
115 align-end = <4>;
116 };
117
118 ddr-1d-dmem-fw {
119#ifdef CONFIG_IMX8M_LPDDR4
120 filename = "lpddr4_pmu_train_1d_dmem.bin";
121#elif CONFIG_IMX8M_DDR4
Oleksandr Suvorov8d2982f2023-01-16 17:21:27 +0200122 filename = "ddr4_dmem_1d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500123#else
124 filename = "ddr3_dmem_1d.bin";
125#endif
126 type = "blob-ext";
127 align-end = <4>;
128 };
129
Dario Binacchi39ae8202023-01-28 17:04:04 +0100130#if defined(CONFIG_IMX8M_LPDDR4) || defined(CONFIG_IMX8M_DDR4)
Adam Ford2d9310b2022-10-21 19:58:31 -0500131 ddr-2d-imem-fw {
132#ifdef CONFIG_IMX8M_LPDDR4
133 filename = "lpddr4_pmu_train_2d_imem.bin";
Dario Binacchi39ae8202023-01-28 17:04:04 +0100134#else
Oleksandr Suvorov8d2982f2023-01-16 17:21:27 +0200135 filename = "ddr4_imem_2d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500136#endif
137 type = "blob-ext";
138 align-end = <4>;
139 };
140
141 ddr-2d-dmem-fw {
142#ifdef CONFIG_IMX8M_LPDDR4
143 filename = "lpddr4_pmu_train_2d_dmem.bin";
Dario Binacchi39ae8202023-01-28 17:04:04 +0100144#else
Oleksandr Suvorov8d2982f2023-01-16 17:21:27 +0200145 filename = "ddr4_dmem_2d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500146#endif
147 type = "blob-ext";
148 align-end = <4>;
149 };
Dario Binacchi39ae8202023-01-28 17:04:04 +0100150#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500151 };
152
153 spl {
154 filename = "spl.bin";
155
156 mkimage {
157 args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e 0x912000";
158
159 blob {
160 filename = "u-boot-spl-ddr.bin";
161 };
162 };
163 };
164
165 itb {
166 filename = "u-boot.itb";
167
168 fit {
169 description = "Configuration to load ATF before U-Boot";
Marek Vasuta7416eb2023-05-28 23:00:30 +0200170#ifndef CONFIG_IMX_HAB
Adam Ford2d9310b2022-10-21 19:58:31 -0500171 fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
Marek Vasuta7416eb2023-05-28 23:00:30 +0200172#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500173 fit,fdt-list = "of-list";
174 #address-cells = <1>;
175
176 images {
177 uboot {
178 arch = "arm64";
179 compression = "none";
180 description = "U-Boot (64-bit)";
Simon Glass72cc5382022-10-20 18:22:39 -0600181 load = <CONFIG_TEXT_BASE>;
Adam Ford2d9310b2022-10-21 19:58:31 -0500182 type = "standalone";
183
184 uboot-blob {
185 filename = "u-boot-nodtb.bin";
186 type = "blob-ext";
187 };
188 };
189
Marek Vasut1de0eb12022-12-22 01:46:37 +0100190#ifndef CONFIG_ARMV8_PSCI
Adam Ford2d9310b2022-10-21 19:58:31 -0500191 atf {
192 arch = "arm64";
193 compression = "none";
194 description = "ARM Trusted Firmware";
195 entry = <0x960000>;
196 load = <0x960000>;
197 type = "firmware";
198
199 atf-blob {
200 filename = "bl31.bin";
201 type = "atf-bl31";
202 };
203 };
Marek Vasut1de0eb12022-12-22 01:46:37 +0100204#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500205
206 binman_fip: fip {
207 arch = "arm64";
208 compression = "none";
209 description = "Trusted Firmware FIP";
210 load = <0x40310000>;
211 type = "firmware";
212 };
213
214 @fdt-SEQ {
215 compression = "none";
216 description = "NAME";
217 type = "flat_dt";
218
219 uboot-fdt-blob {
220 filename = "u-boot.dtb";
221 type = "blob-ext";
222 };
223 };
224 };
225
226 configurations {
227 default = "@config-DEFAULT-SEQ";
228
Simon Glassceea7842023-08-23 19:18:01 -0600229 @config-SEQ {
Adam Ford2d9310b2022-10-21 19:58:31 -0500230 description = "NAME";
231 fdt = "fdt-SEQ";
232 firmware = "uboot";
Marek Vasut1de0eb12022-12-22 01:46:37 +0100233#ifndef CONFIG_ARMV8_PSCI
Adam Ford2d9310b2022-10-21 19:58:31 -0500234 loadables = "atf";
Marek Vasut1de0eb12022-12-22 01:46:37 +0100235#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500236 };
237 };
238 };
239 };
240
241 imx-boot {
242 filename = "flash.bin";
243 pad-byte = <0x00>;
244
245#ifdef CONFIG_FSPI_CONF_HEADER
246 fspi_conf_block {
247 filename = CONFIG_FSPI_CONF_FILE;
248 type = "blob-ext";
249 offset = <0x400>;
250 };
251
252 spl {
253 filename = "spl.bin";
254 offset = <0x1000>;
255 type = "blob-ext";
256 };
257
258 binman_uboot: uboot {
259 filename = "u-boot.itb";
260 offset = <0x59000>;
261 type = "blob-ext";
262 };
263#else
264
265 spl {
266 offset = <0x0>;
267 filename = "spl.bin";
268 type = "blob-ext";
269 };
270
271 binman_uboot: uboot {
272 offset = <0x58000>;
273 filename = "u-boot.itb";
274 type = "blob-ext";
275 };
276#endif
277 };
278};