// SPDX-License-Identifier: GPL-2.0+
/*
 * Copyright 2021 NXP
 */

/ {
	binman: binman {
	};

};

&soc {
	bootph-pre-ram;
};

&aips1 {
	bootph-pre-ram;
};

&aips2 {
	bootph-pre-ram;
};

&aips3 {
	bootph-pre-ram;
};

&aips4 {
	bootph-pre-ram;
};

&iomuxc {
	bootph-pre-ram;
};

&binman {
	filename = "flash.bin";
	section {
		pad-byte = <0x00>;

#ifdef CONFIG_IMX_HAB
		nxp-imx8mcst@0 {
			filename = "u-boot-spl-mkimage.signed.bin";
			nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
			nxp,unlock;
			args;	/* Needed by mkimage etype superclass */
#endif

			binman_imx_spl: nxp-imx8mimage {
				filename = "u-boot-spl-mkimage.bin";
				nxp,boot-from = "sd";
				nxp,rom-version = <1>;
				nxp,loader-address = <CONFIG_SPL_TEXT_BASE>;
				args;	/* Needed by mkimage etype superclass */

				section {
					align = <4>;
					align-size = <4>;
					filename = "u-boot-spl-ddr.bin";
					pad-byte = <0xff>;

					u-boot-spl {
						align-end = <4>;
						filename = "u-boot-spl.bin";
					};

					ddr-1d-imem-fw {
						filename = "lpddr4_pmu_train_1d_imem.bin";
						align-end = <4>;
						type = "blob-ext";
					};

					ddr-1d-dmem-fw {
						filename = "lpddr4_pmu_train_1d_dmem.bin";
						align-end = <4>;
						type = "blob-ext";
					};

					ddr-2d-imem-fw {
						filename = "lpddr4_pmu_train_2d_imem.bin";
						align-end = <4>;
						type = "blob-ext";
					};

					ddr-2d-dmem-fw {
						filename = "lpddr4_pmu_train_2d_dmem.bin";
						align-end = <4>;
						type = "blob-ext";
					};

					signed-hdmi-imx8m {
						filename = "signed_hdmi_imx8m.bin";
						type = "blob-ext";
					};
				};
			};
#ifdef CONFIG_IMX_HAB
		};

		nxp-imx8mcst@1 {
			filename = "u-boot-fit.signed.bin";
			nxp,loader-address = <CONFIG_SPL_LOAD_FIT_ADDRESS>;
			offset = <0x58000>;
			args;	/* Needed by mkimage etype superclass */
#endif

			binman_imx_fit: fit {
				description = "Configuration to load ATF before U-Boot";
				filename = "u-boot.itb";
#ifndef CONFIG_IMX_HAB
				fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
#endif
				#address-cells = <1>;

				offset = <0x57c00>;

				images {
					uboot {
						arch = "arm64";
						compression = "none";
						description = "U-Boot (64-bit)";
						load = <CONFIG_TEXT_BASE>;
						type = "standalone";

						uboot-blob {
							filename = "u-boot-nodtb.bin";
							type = "blob-ext";
						};
					};

#ifndef CONFIG_ARMV8_PSCI
					atf {
						arch = "arm64";
						compression = "none";
						description = "ARM Trusted Firmware";
						entry = <0x910000>;
						load = <0x910000>;
						type = "firmware";

						atf-blob {
							filename = "bl31.bin";
							type = "blob-ext";
						};
					};
#endif

					fdt {
						compression = "none";
						description = "NAME";
						type = "flat_dt";

						uboot-fdt-blob {
							filename = "u-boot.dtb";
							type = "blob-ext";
						};
					};
				};

				configurations {
					default = "conf";

					conf {
						description = "NAME";
						fdt = "fdt";
						firmware = "uboot";
#ifndef CONFIG_ARMV8_PSCI
						loadables = "atf";
#endif
					};
				};
			};
#ifdef CONFIG_IMX_HAB
		};
#endif
	};
};
