blob: ba9967dbe4aff8dd41ea4cccea630d89eb0aeb23 [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
71#ifdef CONFIG_FSL_CAAM
72&sec_jr0 {
73 bootph-pre-ram;
74};
75
76&sec_jr1 {
77 bootph-pre-ram;
78};
79
80&sec_jr2 {
81 bootph-pre-ram;
82};
83#endif
Adam Ford2d9310b2022-10-21 19:58:31 -050084
85&spba1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070086 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050087};
88
89&wdog1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070090 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050091};
92
93&binman {
Marek Vasutf44c7382024-04-26 01:00:37 +020094 filename = "flash.bin";
95 section {
96 pad-byte = <0x00>;
Adam Ford2d9310b2022-10-21 19:58:31 -050097
Marek Vasutf44c7382024-04-26 01:00:37 +020098#ifdef CONFIG_FSPI_CONF_HEADER
99 fspi_conf_block {
100 filename = CONFIG_FSPI_CONF_FILE;
101 type = "blob-ext";
102 offset = <0x400>;
Adam Ford2d9310b2022-10-21 19:58:31 -0500103 };
Marek Vasutf44c7382024-04-26 01:00:37 +0200104#endif
105
106 nxp-imx8mimage {
107 filename = "u-boot-spl-mkimage.bin";
108 nxp,boot-from = "sd";
109 nxp,rom-version = <2>;
110 nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
111 args; /* Needed by mkimage etype superclass */
Adam Ford2d9310b2022-10-21 19:58:31 -0500112
Marek Vasutf44c7382024-04-26 01:00:37 +0200113 section {
114 filename = "u-boot-spl-ddr.bin";
115 pad-byte = <0xff>;
116 align-size = <4>;
117 align = <4>;
118
119 u-boot-spl {
120 align-end = <4>;
121 filename = "u-boot-spl.bin";
122 };
123
124 ddr-1d-imem-fw {
Adam Ford2d9310b2022-10-21 19:58:31 -0500125#ifdef CONFIG_IMX8M_LPDDR4
Marek Vasutf44c7382024-04-26 01:00:37 +0200126 filename = "lpddr4_pmu_train_1d_imem.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500127#elif CONFIG_IMX8M_DDR4
Marek Vasutf44c7382024-04-26 01:00:37 +0200128 filename = "ddr4_imem_1d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500129#else
Marek Vasutf44c7382024-04-26 01:00:37 +0200130 filename = "ddr3_imem_1d.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500131#endif
Marek Vasutf44c7382024-04-26 01:00:37 +0200132 type = "blob-ext";
133 align-end = <4>;
134 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500135
Marek Vasutf44c7382024-04-26 01:00:37 +0200136 ddr-1d-dmem-fw {
Adam Ford2d9310b2022-10-21 19:58:31 -0500137#ifdef CONFIG_IMX8M_LPDDR4
Marek Vasutf44c7382024-04-26 01:00:37 +0200138 filename = "lpddr4_pmu_train_1d_dmem.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500139#elif CONFIG_IMX8M_DDR4
Marek Vasutf44c7382024-04-26 01:00:37 +0200140 filename = "ddr4_dmem_1d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500141#else
Marek Vasutf44c7382024-04-26 01:00:37 +0200142 filename = "ddr3_dmem_1d.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500143#endif
Marek Vasutf44c7382024-04-26 01:00:37 +0200144 type = "blob-ext";
145 align-end = <4>;
146 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500147
Dario Binacchi39ae8202023-01-28 17:04:04 +0100148#if defined(CONFIG_IMX8M_LPDDR4) || defined(CONFIG_IMX8M_DDR4)
Marek Vasutf44c7382024-04-26 01:00:37 +0200149 ddr-2d-imem-fw {
Adam Ford2d9310b2022-10-21 19:58:31 -0500150#ifdef CONFIG_IMX8M_LPDDR4
Marek Vasutf44c7382024-04-26 01:00:37 +0200151 filename = "lpddr4_pmu_train_2d_imem.bin";
Dario Binacchi39ae8202023-01-28 17:04:04 +0100152#else
Marek Vasutf44c7382024-04-26 01:00:37 +0200153 filename = "ddr4_imem_2d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500154#endif
Marek Vasutf44c7382024-04-26 01:00:37 +0200155 type = "blob-ext";
156 align-end = <4>;
157 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500158
Marek Vasutf44c7382024-04-26 01:00:37 +0200159 ddr-2d-dmem-fw {
Adam Ford2d9310b2022-10-21 19:58:31 -0500160#ifdef CONFIG_IMX8M_LPDDR4
Marek Vasutf44c7382024-04-26 01:00:37 +0200161 filename = "lpddr4_pmu_train_2d_dmem.bin";
Dario Binacchi39ae8202023-01-28 17:04:04 +0100162#else
Marek Vasutf44c7382024-04-26 01:00:37 +0200163 filename = "ddr4_dmem_2d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500164#endif
Marek Vasutf44c7382024-04-26 01:00:37 +0200165 type = "blob-ext";
166 align-end = <4>;
167 };
Dario Binacchi39ae8202023-01-28 17:04:04 +0100168#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500169 };
170 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500171
172 fit {
173 description = "Configuration to load ATF before U-Boot";
Marek Vasuta7416eb2023-05-28 23:00:30 +0200174#ifndef CONFIG_IMX_HAB
Adam Ford2d9310b2022-10-21 19:58:31 -0500175 fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
Marek Vasuta7416eb2023-05-28 23:00:30 +0200176#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500177 fit,fdt-list = "of-list";
178 #address-cells = <1>;
Marek Vasutf44c7382024-04-26 01:00:37 +0200179#ifdef CONFIG_FSPI_CONF_HEADER
180 offset = <0x59000>;
181#else
182 offset = <0x58000>;
183#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500184
185 images {
186 uboot {
187 arch = "arm64";
188 compression = "none";
189 description = "U-Boot (64-bit)";
Simon Glass72cc5382022-10-20 18:22:39 -0600190 load = <CONFIG_TEXT_BASE>;
Adam Ford2d9310b2022-10-21 19:58:31 -0500191 type = "standalone";
192
193 uboot-blob {
194 filename = "u-boot-nodtb.bin";
195 type = "blob-ext";
196 };
197 };
198
Marek Vasut1de0eb12022-12-22 01:46:37 +0100199#ifndef CONFIG_ARMV8_PSCI
Adam Ford2d9310b2022-10-21 19:58:31 -0500200 atf {
201 arch = "arm64";
202 compression = "none";
203 description = "ARM Trusted Firmware";
204 entry = <0x960000>;
205 load = <0x960000>;
206 type = "firmware";
207
208 atf-blob {
209 filename = "bl31.bin";
210 type = "atf-bl31";
211 };
212 };
Marek Vasut1de0eb12022-12-22 01:46:37 +0100213#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500214
215 binman_fip: fip {
216 arch = "arm64";
217 compression = "none";
218 description = "Trusted Firmware FIP";
219 load = <0x40310000>;
220 type = "firmware";
221 };
222
223 @fdt-SEQ {
224 compression = "none";
225 description = "NAME";
226 type = "flat_dt";
227
228 uboot-fdt-blob {
229 filename = "u-boot.dtb";
230 type = "blob-ext";
231 };
232 };
233 };
234
235 configurations {
236 default = "@config-DEFAULT-SEQ";
237
Simon Glassceea7842023-08-23 19:18:01 -0600238 @config-SEQ {
Adam Ford2d9310b2022-10-21 19:58:31 -0500239 description = "NAME";
240 fdt = "fdt-SEQ";
241 firmware = "uboot";
Marek Vasut1de0eb12022-12-22 01:46:37 +0100242#ifndef CONFIG_ARMV8_PSCI
Adam Ford2d9310b2022-10-21 19:58:31 -0500243 loadables = "atf";
Marek Vasut1de0eb12022-12-22 01:46:37 +0100244#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500245 };
246 };
247 };
Adam Ford2d9310b2022-10-21 19:58:31 -0500248 };
249};