blob: 6d80d8563656e614a2aa7318fd3548392d86d034 [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 {
Adam Ford2d9310b2022-10-21 19:58:31 -05008 };
9
Tim Harvey1f5a5102023-08-24 12:01:44 -070010#ifdef CONFIG_OPTEE
Adam Ford2d9310b2022-10-21 19:58:31 -050011 firmware {
12 optee {
13 compatible = "linaro,optee-tz";
14 method = "smc";
15 };
16 };
Tim Harvey1f5a5102023-08-24 12:01:44 -070017#endif
Adam Ford2d9310b2022-10-21 19:58:31 -050018
19 wdt-reboot {
20 compatible = "wdt-reboot";
21 wdt = <&wdog1>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070022 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050023 };
24};
25
26&{/soc@0} {
Simon Glassd3a98cb2023-02-13 08:56:33 -070027 bootph-all;
28 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050029};
30
31&aips1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070032 bootph-pre-ram;
33 bootph-all;
Adam Ford2d9310b2022-10-21 19:58:31 -050034};
35
36&aips2 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070037 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050038};
39
40&aips3 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070041 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050042};
43
44&aips4 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070045 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050046};
47
48&clk {
Simon Glassd3a98cb2023-02-13 08:56:33 -070049 bootph-pre-ram;
50 bootph-all;
Adam Ford2d9310b2022-10-21 19:58:31 -050051 /delete-property/ assigned-clocks;
52 /delete-property/ assigned-clock-parents;
53 /delete-property/ assigned-clock-rates;
54};
55
Tim Harvey0951b9a2023-08-24 12:03:56 -070056#ifdef CONFIG_FSL_CAAM
57&crypto {
58 bootph-pre-ram;
59};
60#endif
61
Adam Ford2d9310b2022-10-21 19:58:31 -050062&iomuxc {
Simon Glassd3a98cb2023-02-13 08:56:33 -070063 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050064};
65
66&osc_24m {
Simon Glassd3a98cb2023-02-13 08:56:33 -070067 bootph-pre-ram;
68 bootph-all;
Adam Ford2d9310b2022-10-21 19:58:31 -050069};
Tim Harvey0951b9a2023-08-24 12:03:56 -070070
Marek Vasut937c5a82024-11-22 02:58:12 +010071&osc_32k {
72 bootph-pre-ram;
73 bootph-all;
74};
75
Tim Harvey0951b9a2023-08-24 12:03:56 -070076#ifdef CONFIG_FSL_CAAM
77&sec_jr0 {
78 bootph-pre-ram;
79};
80
81&sec_jr1 {
82 bootph-pre-ram;
83};
84
85&sec_jr2 {
86 bootph-pre-ram;
87};
88#endif
Adam Ford2d9310b2022-10-21 19:58:31 -050089
90&spba1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070091 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050092};
93
94&wdog1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070095 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050096};
97
98&binman {
Marek Vasutf44c7382024-04-26 01:00:37 +020099 filename = "flash.bin";
100 section {
101 pad-byte = <0x00>;
Adam Ford2d9310b2022-10-21 19:58:31 -0500102
Marek Vasutf44c7382024-04-26 01:00:37 +0200103#ifdef CONFIG_FSPI_CONF_HEADER
104 fspi_conf_block {
105 filename = CONFIG_FSPI_CONF_FILE;
106 type = "blob-ext";
107 offset = <0x400>;
Adam Ford2d9310b2022-10-21 19:58:31 -0500108 };
Marek Vasutf44c7382024-04-26 01:00:37 +0200109#endif
110
Marek Vasutfd5c8842024-05-21 12:48:25 +0200111#ifdef CONFIG_IMX_HAB
112 nxp-imx8mcst@0 {
113 filename = "u-boot-spl-mkimage.signed.bin";
Marek Vasutf44c7382024-04-26 01:00:37 +0200114 nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
Marek Vasutfd5c8842024-05-21 12:48:25 +0200115 nxp,unlock;
Marek Vasutf44c7382024-04-26 01:00:37 +0200116 args; /* Needed by mkimage etype superclass */
Marek Vasutfd5c8842024-05-21 12:48:25 +0200117#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500118
Marek Vasutfd5c8842024-05-21 12:48:25 +0200119 binman_imx_spl: nxp-imx8mimage {
120 filename = "u-boot-spl-mkimage.bin";
121 nxp,boot-from = "sd";
122 nxp,rom-version = <2>;
123 nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
124 args; /* Needed by mkimage etype superclass */
Marek Vasutf44c7382024-04-26 01:00:37 +0200125
Marek Vasutfd5c8842024-05-21 12:48:25 +0200126 section {
127 filename = "u-boot-spl-ddr.bin";
128 pad-byte = <0xff>;
129 align-size = <4>;
130 align = <4>;
Marek Vasutf44c7382024-04-26 01:00:37 +0200131
Marek Vasutfd5c8842024-05-21 12:48:25 +0200132 u-boot-spl {
133 align-end = <4>;
134 filename = "u-boot-spl.bin";
135 };
136
137 ddr-1d-imem-fw {
Adam Ford2d9310b2022-10-21 19:58:31 -0500138#ifdef CONFIG_IMX8M_LPDDR4
Marek Vasutfd5c8842024-05-21 12:48:25 +0200139 filename = "lpddr4_pmu_train_1d_imem.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500140#elif CONFIG_IMX8M_DDR4
Marek Vasutfd5c8842024-05-21 12:48:25 +0200141 filename = "ddr4_imem_1d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500142#else
Marek Vasutfd5c8842024-05-21 12:48:25 +0200143 filename = "ddr3_imem_1d.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500144#endif
Marek Vasutfd5c8842024-05-21 12:48:25 +0200145 type = "blob-ext";
146 align-end = <4>;
147 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500148
Marek Vasutfd5c8842024-05-21 12:48:25 +0200149 ddr-1d-dmem-fw {
Adam Ford2d9310b2022-10-21 19:58:31 -0500150#ifdef CONFIG_IMX8M_LPDDR4
Marek Vasutfd5c8842024-05-21 12:48:25 +0200151 filename = "lpddr4_pmu_train_1d_dmem.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500152#elif CONFIG_IMX8M_DDR4
Marek Vasutfd5c8842024-05-21 12:48:25 +0200153 filename = "ddr4_dmem_1d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500154#else
Marek Vasutfd5c8842024-05-21 12:48:25 +0200155 filename = "ddr3_dmem_1d.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500156#endif
Marek Vasutfd5c8842024-05-21 12:48:25 +0200157 type = "blob-ext";
158 align-end = <4>;
159 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500160
Dario Binacchi39ae8202023-01-28 17:04:04 +0100161#if defined(CONFIG_IMX8M_LPDDR4) || defined(CONFIG_IMX8M_DDR4)
Marek Vasutfd5c8842024-05-21 12:48:25 +0200162 ddr-2d-imem-fw {
Adam Ford2d9310b2022-10-21 19:58:31 -0500163#ifdef CONFIG_IMX8M_LPDDR4
Marek Vasutfd5c8842024-05-21 12:48:25 +0200164 filename = "lpddr4_pmu_train_2d_imem.bin";
Dario Binacchi39ae8202023-01-28 17:04:04 +0100165#else
Marek Vasutfd5c8842024-05-21 12:48:25 +0200166 filename = "ddr4_imem_2d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500167#endif
Marek Vasutfd5c8842024-05-21 12:48:25 +0200168 type = "blob-ext";
169 align-end = <4>;
170 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500171
Marek Vasutfd5c8842024-05-21 12:48:25 +0200172 ddr-2d-dmem-fw {
Adam Ford2d9310b2022-10-21 19:58:31 -0500173#ifdef CONFIG_IMX8M_LPDDR4
Marek Vasutfd5c8842024-05-21 12:48:25 +0200174 filename = "lpddr4_pmu_train_2d_dmem.bin";
Dario Binacchi39ae8202023-01-28 17:04:04 +0100175#else
Marek Vasutfd5c8842024-05-21 12:48:25 +0200176 filename = "ddr4_dmem_2d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500177#endif
Marek Vasutfd5c8842024-05-21 12:48:25 +0200178 type = "blob-ext";
179 align-end = <4>;
180 };
Dario Binacchi39ae8202023-01-28 17:04:04 +0100181#endif
Marek Vasutfd5c8842024-05-21 12:48:25 +0200182 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500183 };
Marek Vasutfd5c8842024-05-21 12:48:25 +0200184
185#ifdef CONFIG_IMX_HAB
Adam Ford2d9310b2022-10-21 19:58:31 -0500186 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500187
Marek Vasutfd5c8842024-05-21 12:48:25 +0200188 nxp-imx8mcst@1 {
189 filename = "u-boot-fit.signed.bin";
190 nxp,loader-address = <CONFIG_SPL_LOAD_FIT_ADDRESS>;
Marek Vasutf44c7382024-04-26 01:00:37 +0200191#ifdef CONFIG_FSPI_CONF_HEADER
192 offset = <0x59000>;
193#else
194 offset = <0x58000>;
195#endif
Marek Vasutfd5c8842024-05-21 12:48:25 +0200196 args; /* Needed by mkimage etype superclass */
197#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500198
Marek Vasutfd5c8842024-05-21 12:48:25 +0200199 binman_imx_fit: fit {
200 description = "Configuration to load ATF before U-Boot";
Marek Vasut2b938212024-09-24 15:02:09 +0200201 filename = "u-boot.itb";
Marek Vasutfd5c8842024-05-21 12:48:25 +0200202#ifndef CONFIG_IMX_HAB
203 fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
204#endif
205 fit,fdt-list = "of-list";
206 #address-cells = <1>;
207#ifdef CONFIG_FSPI_CONF_HEADER
208 offset = <0x59000>;
209#else
210 offset = <0x58000>;
211#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500212
Marek Vasutfd5c8842024-05-21 12:48:25 +0200213 images {
214 uboot {
215 arch = "arm64";
216 compression = "none";
217 description = "U-Boot (64-bit)";
218 load = <CONFIG_TEXT_BASE>;
219 type = "standalone";
220
221 uboot-blob {
222 filename = "u-boot-nodtb.bin";
223 type = "blob-ext";
224 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500225 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500226
Marek Vasut1de0eb12022-12-22 01:46:37 +0100227#ifndef CONFIG_ARMV8_PSCI
Marek Vasutfd5c8842024-05-21 12:48:25 +0200228 atf {
229 arch = "arm64";
230 compression = "none";
231 description = "ARM Trusted Firmware";
232 entry = <0x960000>;
233 load = <0x960000>;
234 type = "firmware";
Adam Ford2d9310b2022-10-21 19:58:31 -0500235
Marek Vasutfd5c8842024-05-21 12:48:25 +0200236 atf-blob {
237 filename = "bl31.bin";
238 type = "atf-bl31";
239 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500240 };
Marek Vasut1de0eb12022-12-22 01:46:37 +0100241#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500242
Marek Vasutfd5c8842024-05-21 12:48:25 +0200243 binman_fip: fip {
244 arch = "arm64";
245 compression = "none";
246 description = "Trusted Firmware FIP";
247 load = <0x40310000>;
248 type = "firmware";
249 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500250
Marek Vasutfd5c8842024-05-21 12:48:25 +0200251 @fdt-SEQ {
252 compression = "none";
253 description = "NAME";
254 type = "flat_dt";
Adam Ford2d9310b2022-10-21 19:58:31 -0500255
Marek Vasutfd5c8842024-05-21 12:48:25 +0200256 uboot-fdt-blob {
257 filename = "u-boot.dtb";
258 type = "blob-ext";
259 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500260 };
261 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500262
Marek Vasutfd5c8842024-05-21 12:48:25 +0200263 configurations {
264 default = "@config-DEFAULT-SEQ";
Adam Ford2d9310b2022-10-21 19:58:31 -0500265
Marek Vasutfd5c8842024-05-21 12:48:25 +0200266 @config-SEQ {
267 description = "NAME";
268 fdt = "fdt-SEQ";
269 firmware = "uboot";
Marek Vasut1de0eb12022-12-22 01:46:37 +0100270#ifndef CONFIG_ARMV8_PSCI
Marek Vasutfd5c8842024-05-21 12:48:25 +0200271 loadables = "atf";
Marek Vasut1de0eb12022-12-22 01:46:37 +0100272#endif
Marek Vasutfd5c8842024-05-21 12:48:25 +0200273 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500274 };
275 };
Marek Vasutfd5c8842024-05-21 12:48:25 +0200276#ifdef CONFIG_IMX_HAB
Adam Ford2d9310b2022-10-21 19:58:31 -0500277 };
Marek Vasutfd5c8842024-05-21 12:48:25 +0200278#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500279 };
280};