diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in index ab0aaf2939..8b726eaa57 100644 --- a/boot/uboot/Config.in +++ b/boot/uboot/Config.in @@ -262,6 +262,15 @@ config BR2_TARGET_UBOOT_NEEDS_IMX_FIRMWARE This option makes sure that the i.MX firmwares are copied into the U-Boot source directory. +config BR2_TARGET_UBOOT_NEEDS_ROCKCHIP_RKBIN + bool "U-Boot needs rockchip-rkbin" + depends on BR2_PACKAGE_ROCKCHIP_RKBIN + help + For some Rockchip SoCs U-Boot needs binary blobs from + Rockchip. + This option makes sure that the needed binary blobs are copied + into the U-Boot source directory. + menu "U-Boot binary format" config BR2_TARGET_UBOOT_FORMAT_AIS diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk index 592e1db0b8..f0a85ee1ca 100644 --- a/boot/uboot/uboot.mk +++ b/boot/uboot/uboot.mk @@ -209,6 +209,23 @@ endef UBOOT_PRE_BUILD_HOOKS += UBOOT_COPY_IMX_FW_FILES endif +ifeq ($(BR2_TARGET_UBOOT_NEEDS_ROCKCHIP_RKBIN),y) +UBOOT_DEPENDENCIES += rockchip-rkbin +define UBOOT_INSTALL_UBOOT_ROCKCHIP_BIN + $(INSTALL) -D -m 0644 $(@D)/u-boot-rockchip.bin $(BINARIES_DIR)/u-boot-rockchip.bin +endef +UBOOT_POST_INSTALL_IMAGES_HOOKS += UBOOT_INSTALL_UBOOT_ROCKCHIP_BIN +ifneq ($(ROCKCHIP_RKBIN_BL31_FILENAME),) +UBOOT_MAKE_OPTS += BL31=$(BINARIES_DIR)/$(notdir $(ROCKCHIP_RKBIN_BL31_FILENAME)) +endif +ifneq ($(ROCKCHIP_RKBIN_TPL_FILENAME),) +UBOOT_MAKE_OPTS += ROCKCHIP_TPL=$(BINARIES_DIR)/$(notdir $(ROCKCHIP_RKBIN_TPL_FILENAME)) +endif +ifneq ($(ROCKCHIP_RKBIN_TEE_FILENAME),) +UBOOT_MAKE_OPTS += TEE=$(BINARIES_DIR)/$(notdir $(ROCKCHIP_RKBIN_TEE_FILENAME)) +endif +endif + ifeq ($(BR2_TARGET_UBOOT_NEEDS_DTC),y) UBOOT_DEPENDENCIES += host-dtc UBOOT_MAKE_OPTS += DTC=$(HOST_DIR)/bin/dtc