blob: cef20dab4688c4daa4c7598a16c251ded741b6f7 [file] [log] [blame]
Adam Ford93c4c0e2022-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 Glass8c103c32023-02-13 08:56:33 -070021 bootph-pre-ram;
Adam Ford93c4c0e2022-10-21 19:58:31 -050022 };
23};
24
25&{/soc@0} {
Simon Glass8c103c32023-02-13 08:56:33 -070026 bootph-all;
27 bootph-pre-ram;
Adam Ford93c4c0e2022-10-21 19:58:31 -050028};
29
30&aips1 {
Simon Glass8c103c32023-02-13 08:56:33 -070031 bootph-pre-ram;
32 bootph-all;
Adam Ford93c4c0e2022-10-21 19:58:31 -050033};
34
35&aips2 {
Simon Glass8c103c32023-02-13 08:56:33 -070036 bootph-pre-ram;
Adam Ford93c4c0e2022-10-21 19:58:31 -050037};
38
39&aips3 {
Simon Glass8c103c32023-02-13 08:56:33 -070040 bootph-pre-ram;
Adam Ford93c4c0e2022-10-21 19:58:31 -050041};
42
43&aips4 {
Simon Glass8c103c32023-02-13 08:56:33 -070044 bootph-pre-ram;
Adam Ford93c4c0e2022-10-21 19:58:31 -050045};
46
47&clk {
Simon Glass8c103c32023-02-13 08:56:33 -070048 bootph-pre-ram;
49 bootph-all;
Adam Ford93c4c0e2022-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 Glass8c103c32023-02-13 08:56:33 -070056 bootph-pre-ram;
Adam Ford93c4c0e2022-10-21 19:58:31 -050057};
58
59&osc_24m {
Simon Glass8c103c32023-02-13 08:56:33 -070060 bootph-pre-ram;
61 bootph-all;
Adam Ford93c4c0e2022-10-21 19:58:31 -050062};
63
64&spba1 {
Simon Glass8c103c32023-02-13 08:56:33 -070065 bootph-pre-ram;
Adam Ford93c4c0e2022-10-21 19:58:31 -050066};
67
68&wdog1 {
Simon Glass8c103c32023-02-13 08:56:33 -070069 bootph-pre-ram;
Adam Ford93c4c0e2022-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 Suvorovf42c0722023-01-16 17:21:27 +020088 filename = "ddr4_imem_1d_201810.bin";
Adam Ford93c4c0e2022-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 Suvorovf42c0722023-01-16 17:21:27 +0200100 filename = "ddr4_dmem_1d_201810.bin";
Adam Ford93c4c0e2022-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 Binacchi6629e152023-01-28 17:04:04 +0100108#if defined(CONFIG_IMX8M_LPDDR4) || defined(CONFIG_IMX8M_DDR4)
Adam Ford93c4c0e2022-10-21 19:58:31 -0500109 ddr-2d-imem-fw {
110#ifdef CONFIG_IMX8M_LPDDR4
111 filename = "lpddr4_pmu_train_2d_imem.bin";
Dario Binacchi6629e152023-01-28 17:04:04 +0100112#else
Oleksandr Suvorovf42c0722023-01-16 17:21:27 +0200113 filename = "ddr4_imem_2d_201810.bin";
Adam Ford93c4c0e2022-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 Binacchi6629e152023-01-28 17:04:04 +0100122#else
Oleksandr Suvorovf42c0722023-01-16 17:21:27 +0200123 filename = "ddr4_dmem_2d_201810.bin";
Adam Ford93c4c0e2022-10-21 19:58:31 -0500124#endif
125 type = "blob-ext";
126 align-end = <4>;
127 };
Dario Binacchi6629e152023-01-28 17:04:04 +0100128#endif
Adam Ford93c4c0e2022-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";
148 fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
149 fit,fdt-list = "of-list";
150 #address-cells = <1>;
151
152 images {
153 uboot {
154 arch = "arm64";
155 compression = "none";
156 description = "U-Boot (64-bit)";
Simon Glass98463902022-10-20 18:22:39 -0600157 load = <CONFIG_TEXT_BASE>;
Adam Ford93c4c0e2022-10-21 19:58:31 -0500158 type = "standalone";
159
160 uboot-blob {
161 filename = "u-boot-nodtb.bin";
162 type = "blob-ext";
163 };
164 };
165
Marek Vasut9694c0532022-12-22 01:46:37 +0100166#ifndef CONFIG_ARMV8_PSCI
Adam Ford93c4c0e2022-10-21 19:58:31 -0500167 atf {
168 arch = "arm64";
169 compression = "none";
170 description = "ARM Trusted Firmware";
171 entry = <0x960000>;
172 load = <0x960000>;
173 type = "firmware";
174
175 atf-blob {
176 filename = "bl31.bin";
177 type = "atf-bl31";
178 };
179 };
Marek Vasut9694c0532022-12-22 01:46:37 +0100180#endif
Adam Ford93c4c0e2022-10-21 19:58:31 -0500181
182 binman_fip: fip {
183 arch = "arm64";
184 compression = "none";
185 description = "Trusted Firmware FIP";
186 load = <0x40310000>;
187 type = "firmware";
188 };
189
190 @fdt-SEQ {
191 compression = "none";
192 description = "NAME";
193 type = "flat_dt";
194
195 uboot-fdt-blob {
196 filename = "u-boot.dtb";
197 type = "blob-ext";
198 };
199 };
200 };
201
202 configurations {
203 default = "@config-DEFAULT-SEQ";
204
205 binman_configuration: @config-SEQ {
206 description = "NAME";
207 fdt = "fdt-SEQ";
208 firmware = "uboot";
Marek Vasut9694c0532022-12-22 01:46:37 +0100209#ifndef CONFIG_ARMV8_PSCI
Adam Ford93c4c0e2022-10-21 19:58:31 -0500210 loadables = "atf";
Marek Vasut9694c0532022-12-22 01:46:37 +0100211#endif
Adam Ford93c4c0e2022-10-21 19:58:31 -0500212 };
213 };
214 };
215 };
216
217 imx-boot {
218 filename = "flash.bin";
219 pad-byte = <0x00>;
220
221#ifdef CONFIG_FSPI_CONF_HEADER
222 fspi_conf_block {
223 filename = CONFIG_FSPI_CONF_FILE;
224 type = "blob-ext";
225 offset = <0x400>;
226 };
227
228 spl {
229 filename = "spl.bin";
230 offset = <0x1000>;
231 type = "blob-ext";
232 };
233
234 binman_uboot: uboot {
235 filename = "u-boot.itb";
236 offset = <0x59000>;
237 type = "blob-ext";
238 };
239#else
240
241 spl {
242 offset = <0x0>;
243 filename = "spl.bin";
244 type = "blob-ext";
245 };
246
247 binman_uboot: uboot {
248 offset = <0x58000>;
249 filename = "u-boot.itb";
250 type = "blob-ext";
251 };
252#endif
253 };
254};