Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 1 | // SPDX-License-Identifier: GPL-2.0+ |
2 | /* | ||||
3 | * Copyright 2022 Logic PD, Inc dba Beacon EmbeddedWorks | ||||
4 | */ | ||||
5 | |||||
6 | / { | ||||
7 | binman: binman { | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 8 | }; |
9 | |||||
Tim Harvey | 1f5a510 | 2023-08-24 12:01:44 -0700 | [diff] [blame] | 10 | #ifdef CONFIG_OPTEE |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 11 | firmware { |
12 | optee { | ||||
13 | compatible = "linaro,optee-tz"; | ||||
14 | method = "smc"; | ||||
15 | }; | ||||
16 | }; | ||||
Tim Harvey | 1f5a510 | 2023-08-24 12:01:44 -0700 | [diff] [blame] | 17 | #endif |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 18 | |
19 | wdt-reboot { | ||||
20 | compatible = "wdt-reboot"; | ||||
21 | wdt = <&wdog1>; | ||||
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 22 | bootph-pre-ram; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 23 | }; |
24 | }; | ||||
25 | |||||
26 | &{/soc@0} { | ||||
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 27 | bootph-all; |
28 | bootph-pre-ram; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 29 | }; |
30 | |||||
31 | &aips1 { | ||||
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 32 | bootph-pre-ram; |
33 | bootph-all; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 34 | }; |
35 | |||||
36 | &aips2 { | ||||
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 37 | bootph-pre-ram; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 38 | }; |
39 | |||||
40 | &aips3 { | ||||
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 41 | bootph-pre-ram; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 42 | }; |
43 | |||||
44 | &aips4 { | ||||
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 45 | bootph-pre-ram; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 46 | }; |
47 | |||||
48 | &clk { | ||||
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 49 | bootph-pre-ram; |
50 | bootph-all; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 51 | /delete-property/ assigned-clocks; |
52 | /delete-property/ assigned-clock-parents; | ||||
53 | /delete-property/ assigned-clock-rates; | ||||
54 | }; | ||||
55 | |||||
Tim Harvey | 0951b9a | 2023-08-24 12:03:56 -0700 | [diff] [blame] | 56 | #ifdef CONFIG_FSL_CAAM |
57 | &crypto { | ||||
58 | bootph-pre-ram; | ||||
59 | }; | ||||
60 | #endif | ||||
61 | |||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 62 | &iomuxc { |
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 63 | bootph-pre-ram; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 64 | }; |
65 | |||||
66 | &osc_24m { | ||||
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 67 | bootph-pre-ram; |
68 | bootph-all; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 69 | }; |
Tim Harvey | 0951b9a | 2023-08-24 12:03:56 -0700 | [diff] [blame] | 70 | |
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 Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 84 | |
85 | &spba1 { | ||||
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 86 | bootph-pre-ram; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 87 | }; |
88 | |||||
89 | &wdog1 { | ||||
Simon Glass | d3a98cb | 2023-02-13 08:56:33 -0700 | [diff] [blame] | 90 | bootph-pre-ram; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 91 | }; |
92 | |||||
93 | &binman { | ||||
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 94 | filename = "flash.bin"; |
95 | section { | ||||
96 | pad-byte = <0x00>; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 97 | |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 98 | #ifdef CONFIG_FSPI_CONF_HEADER |
99 | fspi_conf_block { | ||||
100 | filename = CONFIG_FSPI_CONF_FILE; | ||||
101 | type = "blob-ext"; | ||||
102 | offset = <0x400>; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 103 | }; |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 104 | #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 Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 112 | |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 113 | 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 Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 125 | #ifdef CONFIG_IMX8M_LPDDR4 |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 126 | filename = "lpddr4_pmu_train_1d_imem.bin"; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 127 | #elif CONFIG_IMX8M_DDR4 |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 128 | filename = "ddr4_imem_1d_201810.bin"; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 129 | #else |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 130 | filename = "ddr3_imem_1d.bin"; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 131 | #endif |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 132 | type = "blob-ext"; |
133 | align-end = <4>; | ||||
134 | }; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 135 | |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 136 | ddr-1d-dmem-fw { |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 137 | #ifdef CONFIG_IMX8M_LPDDR4 |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 138 | filename = "lpddr4_pmu_train_1d_dmem.bin"; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 139 | #elif CONFIG_IMX8M_DDR4 |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 140 | filename = "ddr4_dmem_1d_201810.bin"; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 141 | #else |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 142 | filename = "ddr3_dmem_1d.bin"; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 143 | #endif |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 144 | type = "blob-ext"; |
145 | align-end = <4>; | ||||
146 | }; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 147 | |
Dario Binacchi | 39ae820 | 2023-01-28 17:04:04 +0100 | [diff] [blame] | 148 | #if defined(CONFIG_IMX8M_LPDDR4) || defined(CONFIG_IMX8M_DDR4) |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 149 | ddr-2d-imem-fw { |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 150 | #ifdef CONFIG_IMX8M_LPDDR4 |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 151 | filename = "lpddr4_pmu_train_2d_imem.bin"; |
Dario Binacchi | 39ae820 | 2023-01-28 17:04:04 +0100 | [diff] [blame] | 152 | #else |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 153 | filename = "ddr4_imem_2d_201810.bin"; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 154 | #endif |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 155 | type = "blob-ext"; |
156 | align-end = <4>; | ||||
157 | }; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 158 | |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 159 | ddr-2d-dmem-fw { |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 160 | #ifdef CONFIG_IMX8M_LPDDR4 |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 161 | filename = "lpddr4_pmu_train_2d_dmem.bin"; |
Dario Binacchi | 39ae820 | 2023-01-28 17:04:04 +0100 | [diff] [blame] | 162 | #else |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 163 | filename = "ddr4_dmem_2d_201810.bin"; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 164 | #endif |
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 165 | type = "blob-ext"; |
166 | align-end = <4>; | ||||
167 | }; | ||||
Dario Binacchi | 39ae820 | 2023-01-28 17:04:04 +0100 | [diff] [blame] | 168 | #endif |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 169 | }; |
170 | }; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 171 | |
172 | fit { | ||||
173 | description = "Configuration to load ATF before U-Boot"; | ||||
Marek Vasut | a7416eb | 2023-05-28 23:00:30 +0200 | [diff] [blame] | 174 | #ifndef CONFIG_IMX_HAB |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 175 | fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>; |
Marek Vasut | a7416eb | 2023-05-28 23:00:30 +0200 | [diff] [blame] | 176 | #endif |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 177 | fit,fdt-list = "of-list"; |
178 | #address-cells = <1>; | ||||
Marek Vasut | f44c738 | 2024-04-26 01:00:37 +0200 | [diff] [blame] | 179 | #ifdef CONFIG_FSPI_CONF_HEADER |
180 | offset = <0x59000>; | ||||
181 | #else | ||||
182 | offset = <0x58000>; | ||||
183 | #endif | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 184 | |
185 | images { | ||||
186 | uboot { | ||||
187 | arch = "arm64"; | ||||
188 | compression = "none"; | ||||
189 | description = "U-Boot (64-bit)"; | ||||
Simon Glass | 72cc538 | 2022-10-20 18:22:39 -0600 | [diff] [blame] | 190 | load = <CONFIG_TEXT_BASE>; |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 191 | type = "standalone"; |
192 | |||||
193 | uboot-blob { | ||||
194 | filename = "u-boot-nodtb.bin"; | ||||
195 | type = "blob-ext"; | ||||
196 | }; | ||||
197 | }; | ||||
198 | |||||
Marek Vasut | 1de0eb1 | 2022-12-22 01:46:37 +0100 | [diff] [blame] | 199 | #ifndef CONFIG_ARMV8_PSCI |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 200 | 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 Vasut | 1de0eb1 | 2022-12-22 01:46:37 +0100 | [diff] [blame] | 213 | #endif |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 214 | |
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 Glass | ceea784 | 2023-08-23 19:18:01 -0600 | [diff] [blame] | 238 | @config-SEQ { |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 239 | description = "NAME"; |
240 | fdt = "fdt-SEQ"; | ||||
241 | firmware = "uboot"; | ||||
Marek Vasut | 1de0eb1 | 2022-12-22 01:46:37 +0100 | [diff] [blame] | 242 | #ifndef CONFIG_ARMV8_PSCI |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 243 | loadables = "atf"; |
Marek Vasut | 1de0eb1 | 2022-12-22 01:46:37 +0100 | [diff] [blame] | 244 | #endif |
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 245 | }; |
246 | }; | ||||
247 | }; | ||||
Adam Ford | 2d9310b | 2022-10-21 19:58:31 -0500 | [diff] [blame] | 248 | }; |
249 | }; |