// SPDX-License-Identifier: GPL-2.0+
/*
 * U-Boot additions
 *
 * Copyright (C) 2020 Intel Corporation <www.intel.com>
 */

#if defined(CONFIG_FIT)

/ {
	binman: binman {
		multiple-images;
	};
};

&binman {
	u-boot {
		filename = "u-boot.itb";
		fit {
			fit,external-offset = <CONFIG_FIT_EXTERNAL_OFFSET>;
			description = "FIT with firmware and bootloader";
			#address-cells = <1>;

			images {
				uboot {
					description = "U-Boot SoC64";
					type = "standalone";
					os = "U-Boot";
					arch = "arm64";
					compression = "none";
					load = <0x00200000>;
					uboot_blob: blob-ext {
						filename = "u-boot-nodtb.bin";
					};
					hash {
						algo = "crc32";
					};
				};

				atf {
					description = "ARM Trusted Firmware";
					type = "firmware";
					os = "arm-trusted-firmware";
					arch = "arm64";
					compression = "none";
					load = <0x00001000>;
					entry = <0x00001000>;
					atf_blob: blob-ext {
						filename = "bl31.bin";
					};
					hash {
						algo = "crc32";
					};
				};

				fdt {
					description = "U-Boot SoC64 flat device-tree";
					type = "flat_dt";
					compression = "none";
					uboot_fdt_blob: blob-ext {
						filename = "u-boot.dtb";
					};
					hash {
						algo = "crc32";
					};
				};
			};

			configurations {
				default = "conf";
				conf {
					description = "Intel SoC64 FPGA";
					firmware = "atf";
					loadables = "uboot";
					fdt = "fdt";
					signature {
						algo = "crc32";
						key-name-hint = "dev";
						sign-images = "atf", "fdt", "uboot";
					};
				};
			};
		};
	};

	kernel {
		filename = "kernel.itb";
		fit {
			description = "FIT with Linux kernel image and FDT blob";
			#address-cells = <1>;

			images {
				kernel {
					description = "Linux Kernel";
					type = "kernel";
					arch = "arm64";
					os = "linux";
					compression = "none";
					load = <0x4080000>;
					entry = <0x4080000>;
					kernel_blob: blob-ext {
						filename = "Image";
					};
					hash {
						algo = "crc32";
					};
				};

				fdt {
					description = "Linux DTB";
					type = "flat_dt";
					arch = "arm64";
					compression = "none";
					kernel_fdt_blob: blob-ext {
						filename = "linux.dtb";
					};
					hash {
						algo = "crc32";
					};
				};
			};

			configurations {
				default = "conf";
				conf {
					description = "Intel SoC64 FPGA";
					kernel = "kernel";
					fdt = "fdt";
					signature {
						algo = "crc32";
						key-name-hint = "dev";
						sign-images = "fdt", "kernel";
					};
				};
			};
		};
	};
};

#if defined(CONFIG_SOCFPGA_SECURE_VAB_AUTH)
&uboot_blob {
	filename = "signed-u-boot-nodtb.bin";
};

&atf_blob {
	filename = "signed-bl31.bin";
};

&uboot_fdt_blob {
	filename = "signed-u-boot.dtb";
};

&kernel_blob {
	filename = "signed-Image";
};

&kernel_fdt_blob {
	filename = "signed-linux.dtb";
};
#endif

#endif
