// SPDX-License-Identifier: GPL-2.0+ /* * Copyright (C) 2021, Bin Meng */ #include / { binman: binman { multiple-images; }; }; &binman { itb { #ifndef CONFIG_SPL_LOAD_FIT_OPENSBI_OS_BOOT filename = "u-boot.itb"; #else filename = "linux.itb"; #endif fit { description = "Configuration to load OpenSBI before U-Boot"; #address-cells = <2>; fit,fdt-list = "of-list"; images { #ifndef CONFIG_SPL_LOAD_FIT_OPENSBI_OS_BOOT uboot { description = "U-Boot"; type = "standalone"; os = "U-Boot"; arch = "riscv"; compression = "none"; load = /bits/ 64 ; uboot_blob: blob-ext { filename = "u-boot-nodtb.bin"; }; }; #else linux { description = "Linux"; type = "standalone"; os = "Linux"; arch = "riscv"; compression = "none"; load = /bits/ 64 ; linux_blob: blob-ext { filename = "Image"; }; }; #endif #ifdef CONFIG_OPTEE tee { description = "OP-TEE"; type = "tee"; arch = "riscv"; compression = "none"; os = "tee"; load = /bits/ 64 ; tee_blob: tee-os { filename = "tee.bin"; }; }; #endif opensbi { description = "OpenSBI fw_dynamic Firmware"; type = "firmware"; os = "opensbi"; arch = "riscv"; compression = "none"; load = /bits/ 64 ; entry = /bits/ 64 ; opensbi_blob: opensbi { filename = "fw_dynamic.bin"; missing-msg = "opensbi"; }; }; #ifndef CONFIG_OF_BOARD @fdt-SEQ { description = "NAME"; type = "flat_dt"; compression = "none"; }; #endif }; configurations { default = "conf-1"; #ifndef CONFIG_OF_BOARD @conf-SEQ { #else conf-1 { #endif description = "NAME"; firmware = "opensbi"; #ifdef CONFIG_OPTEE #ifdef CONFIG_SPL_LOAD_FIT_OPENSBI_OS_BOOT loadables = "linux", "tee"; #else loadables = "uboot", "tee"; #endif #else /* !CONFIG_OPTEEE */ #ifdef CONFIG_SPL_LOAD_FIT_OPENSBI_OS_BOOT loadables = "linux"; #else loadables = "uboot"; #endif #endif /* CONFIG_OPTEE */ #ifndef CONFIG_OF_BOARD fdt = "fdt-SEQ"; #endif }; }; }; }; };