[PATCH] arm64: zynqmp: Also generate images with single DT

Michal Simek michal.simek at amd.com
Wed Nov 27 09:01:28 CET 2024



On 11/20/24 09:05, Michal Simek wrote:
> Create u-boot-single.itb where only actual DTB is used not really multiple
> of DTS from OF_LIST. This results in small files without option to change
> DT.
> 
> Signed-off-by: Michal Simek <michal.simek at amd.com>
> ---
> 
> Based on the top of
> https://lore.kernel.org/all/cover.1730452668.git.michal.simek@amd.com/
> ---
>   arch/arm/dts/zynqmp-binman.dts | 95 ++++++++++++++++++++++++++++++++++
>   1 file changed, 95 insertions(+)
> 
> diff --git a/arch/arm/dts/zynqmp-binman.dts b/arch/arm/dts/zynqmp-binman.dts
> index df0fdf465107..675f6bf51ebd 100644
> --- a/arch/arm/dts/zynqmp-binman.dts
> +++ b/arch/arm/dts/zynqmp-binman.dts
> @@ -89,6 +89,85 @@
>   			};
>   		};
>   
> +		itb-single {
> +			filename = "u-boot-single.itb";
> +			pad-byte = <0>;
> +
> +			fit {
> +				description = "Configuration for Xilinx ZynqMP SoC";
> +				fit,align = <0x8>;
> +				fit,external-offset = <0x0>;
> +				fit,fdt-list = "of-list";
> +				images {
> +					uboot {
> +						description = "U-Boot (64-bit)";
> +						type = "firmware";
> +						os = "u-boot";
> +						arch = "arm64";
> +						compression = "none";
> +						load = /bits/ 64 <CONFIG_TEXT_BASE>;
> +						entry = /bits/ 64 <CONFIG_TEXT_BASE>;
> +						hash {
> +							algo = "md5";
> +						};
> +						u-boot-nodtb {
> +						};
> +					};
> +					atf {
> +						description = "Trusted Firmware-A";
> +						type = "firmware";
> +						os = "arm-trusted-firmware";
> +						arch = "arm64";
> +						compression = "none";
> +						load = /bits/ 64 <CONFIG_BL31_LOAD_ADDR>;
> +						entry = /bits/ 64 <CONFIG_BL31_LOAD_ADDR>;
> +						hash {
> +							algo = "md5";
> +						};
> +						atf-bl31 {
> +							optional;
> +						};
> +					};
> +					tee {
> +						description = "OP-TEE";
> +						type = "tee";
> +						arch = "arm64";
> +						compression = "none";
> +						os = "tee";
> +						load = /bits/ 64 <CONFIG_BL31_LOAD_ADDR>;
> +						entry = /bits/ 64 <CONFIG_BL31_LOAD_ADDR>;
> +						tee-os {
> +							optional;
> +						};
> +					};
> +					fdt {
> +						description = "DT";
> +						type = "flat_dt";
> +						arch = "arm64";
> +						compression = "none";
> +						load = <0x0 0x100000>;
> +						uboot-fdt-blob {
> +							filename = "u-boot.dtb";
> +							type = "blob-ext";
> +						};
> +						hash-1 {
> +							algo = "md5";
> +						};
> +
> +					};
> +				};
> +				configurations {
> +					default = "conf-1";
> +					conf-1 {
> +						description = "Single DT";
> +						firmware = "atf";
> +						loadables = "tee", "uboot";
> +						fdt = "fdt";
> +					};
> +				};
> +			};
> +		};
> +
>   #ifdef CONFIG_SYS_SPI_U_BOOT_OFFS
>   		/* QSPI image for testing QSPI boot mode */
>   		image {
> @@ -106,6 +185,22 @@
>   			fdtmap {
>   			};
>   		};
> +
> +		image-single {
> +			filename = "qspi-single.bin";
> +			pad-byte = <0>;
> +
> +			blob-ext at 1 {
> +				offset = <0x0>;
> +				filename = "spl/boot.bin";
> +			};
> +			blob-ext at 2 {
> +				offset = <CONFIG_SYS_SPI_U_BOOT_OFFS>;
> +				filename = "u-boot-single.itb";
> +			};
> +			fdtmap {
> +			};
> +		};
>   #endif
>   	};
>   };

Applied to next.

Thanks,
Michal


More information about the U-Boot mailing list