blob: bc57566a108f5cbd515183236f4379e3d088b79d [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
11 firmware {
12 optee {
13 compatible = "linaro,optee-tz";
14 method = "smc";
15 };
16 };
17
18 wdt-reboot {
19 compatible = "wdt-reboot";
20 wdt = <&wdog1>;
Simon Glassd3a98cb2023-02-13 08:56:33 -070021 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050022 };
23};
24
25&{/soc@0} {
Simon Glassd3a98cb2023-02-13 08:56:33 -070026 bootph-all;
27 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050028};
29
30&aips1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070031 bootph-pre-ram;
32 bootph-all;
Adam Ford2d9310b2022-10-21 19:58:31 -050033};
34
35&aips2 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070036 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050037};
38
39&aips3 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070040 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050041};
42
43&aips4 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070044 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050045};
46
47&clk {
Simon Glassd3a98cb2023-02-13 08:56:33 -070048 bootph-pre-ram;
49 bootph-all;
Adam Ford2d9310b2022-10-21 19:58:31 -050050 /delete-property/ assigned-clocks;
51 /delete-property/ assigned-clock-parents;
52 /delete-property/ assigned-clock-rates;
53};
54
55&iomuxc {
Simon Glassd3a98cb2023-02-13 08:56:33 -070056 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050057};
58
59&osc_24m {
Simon Glassd3a98cb2023-02-13 08:56:33 -070060 bootph-pre-ram;
61 bootph-all;
Adam Ford2d9310b2022-10-21 19:58:31 -050062};
63
64&spba1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070065 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050066};
67
68&wdog1 {
Simon Glassd3a98cb2023-02-13 08:56:33 -070069 bootph-pre-ram;
Adam Ford2d9310b2022-10-21 19:58:31 -050070};
71
72&binman {
73 u-boot-spl-ddr {
74 filename = "u-boot-spl-ddr.bin";
75 pad-byte = <0xff>;
76 align-size = <4>;
77 align = <4>;
78
79 u-boot-spl {
80 align-end = <4>;
81 filename = "u-boot-spl.bin";
82 };
83
84 ddr-1d-imem-fw {
85#ifdef CONFIG_IMX8M_LPDDR4
86 filename = "lpddr4_pmu_train_1d_imem.bin";
87#elif CONFIG_IMX8M_DDR4
Oleksandr Suvorov8d2982f2023-01-16 17:21:27 +020088 filename = "ddr4_imem_1d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -050089#else
90 filename = "ddr3_imem_1d.bin";
91#endif
92 type = "blob-ext";
93 align-end = <4>;
94 };
95
96 ddr-1d-dmem-fw {
97#ifdef CONFIG_IMX8M_LPDDR4
98 filename = "lpddr4_pmu_train_1d_dmem.bin";
99#elif CONFIG_IMX8M_DDR4
Oleksandr Suvorov8d2982f2023-01-16 17:21:27 +0200100 filename = "ddr4_dmem_1d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500101#else
102 filename = "ddr3_dmem_1d.bin";
103#endif
104 type = "blob-ext";
105 align-end = <4>;
106 };
107
Dario Binacchi39ae8202023-01-28 17:04:04 +0100108#if defined(CONFIG_IMX8M_LPDDR4) || defined(CONFIG_IMX8M_DDR4)
Adam Ford2d9310b2022-10-21 19:58:31 -0500109 ddr-2d-imem-fw {
110#ifdef CONFIG_IMX8M_LPDDR4
111 filename = "lpddr4_pmu_train_2d_imem.bin";
Dario Binacchi39ae8202023-01-28 17:04:04 +0100112#else
Oleksandr Suvorov8d2982f2023-01-16 17:21:27 +0200113 filename = "ddr4_imem_2d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500114#endif
115 type = "blob-ext";
116 align-end = <4>;
117 };
118
119 ddr-2d-dmem-fw {
120#ifdef CONFIG_IMX8M_LPDDR4
121 filename = "lpddr4_pmu_train_2d_dmem.bin";
Dario Binacchi39ae8202023-01-28 17:04:04 +0100122#else
Oleksandr Suvorov8d2982f2023-01-16 17:21:27 +0200123 filename = "ddr4_dmem_2d_201810.bin";
Adam Ford2d9310b2022-10-21 19:58:31 -0500124#endif
125 type = "blob-ext";
126 align-end = <4>;
127 };
Dario Binacchi39ae8202023-01-28 17:04:04 +0100128#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500129 };
130
131 spl {
132 filename = "spl.bin";
133
134 mkimage {
135 args = "-n spl/u-boot-spl.cfgout -T imx8mimage -e 0x912000";
136
137 blob {
138 filename = "u-boot-spl-ddr.bin";
139 };
140 };
141 };
142
143 itb {
144 filename = "u-boot.itb";
145
146 fit {
147 description = "Configuration to load ATF before U-Boot";
Marek Vasuta7416eb2023-05-28 23:00:30 +0200148#ifndef CONFIG_IMX_HAB
Adam Ford2d9310b2022-10-21 19:58:31 -0500149 fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
Marek Vasuta7416eb2023-05-28 23:00:30 +0200150#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500151 fit,fdt-list = "of-list";
152 #address-cells = <1>;
153
154 images {
155 uboot {
156 arch = "arm64";
157 compression = "none";
158 description = "U-Boot (64-bit)";
Simon Glass72cc5382022-10-20 18:22:39 -0600159 load = <CONFIG_TEXT_BASE>;
Adam Ford2d9310b2022-10-21 19:58:31 -0500160 type = "standalone";
161
162 uboot-blob {
163 filename = "u-boot-nodtb.bin";
164 type = "blob-ext";
165 };
166 };
167
Marek Vasut1de0eb12022-12-22 01:46:37 +0100168#ifndef CONFIG_ARMV8_PSCI
Adam Ford2d9310b2022-10-21 19:58:31 -0500169 atf {
170 arch = "arm64";
171 compression = "none";
172 description = "ARM Trusted Firmware";
173 entry = <0x960000>;
174 load = <0x960000>;
175 type = "firmware";
176
177 atf-blob {
178 filename = "bl31.bin";
179 type = "atf-bl31";
180 };
181 };
Marek Vasut1de0eb12022-12-22 01:46:37 +0100182#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500183
184 binman_fip: fip {
185 arch = "arm64";
186 compression = "none";
187 description = "Trusted Firmware FIP";
188 load = <0x40310000>;
189 type = "firmware";
190 };
191
192 @fdt-SEQ {
193 compression = "none";
194 description = "NAME";
195 type = "flat_dt";
196
197 uboot-fdt-blob {
198 filename = "u-boot.dtb";
199 type = "blob-ext";
200 };
201 };
202 };
203
204 configurations {
205 default = "@config-DEFAULT-SEQ";
206
Simon Glassceea7842023-08-23 19:18:01 -0600207 @config-SEQ {
Adam Ford2d9310b2022-10-21 19:58:31 -0500208 description = "NAME";
209 fdt = "fdt-SEQ";
210 firmware = "uboot";
Marek Vasut1de0eb12022-12-22 01:46:37 +0100211#ifndef CONFIG_ARMV8_PSCI
Adam Ford2d9310b2022-10-21 19:58:31 -0500212 loadables = "atf";
Marek Vasut1de0eb12022-12-22 01:46:37 +0100213#endif
Adam Ford2d9310b2022-10-21 19:58:31 -0500214 };
215 };
216 };
217 };
218
219 imx-boot {
220 filename = "flash.bin";
221 pad-byte = <0x00>;
222
223#ifdef CONFIG_FSPI_CONF_HEADER
224 fspi_conf_block {
225 filename = CONFIG_FSPI_CONF_FILE;
226 type = "blob-ext";
227 offset = <0x400>;
228 };
229
230 spl {
231 filename = "spl.bin";
232 offset = <0x1000>;
233 type = "blob-ext";
234 };
235
236 binman_uboot: uboot {
237 filename = "u-boot.itb";
238 offset = <0x59000>;
239 type = "blob-ext";
240 };
241#else
242
243 spl {
244 offset = <0x0>;
245 filename = "spl.bin";
246 type = "blob-ext";
247 };
248
249 binman_uboot: uboot {
250 offset = <0x58000>;
251 filename = "u-boot.itb";
252 type = "blob-ext";
253 };
254#endif
255 };
256};