kernel: Allow overriding dtb target

On some devices we might want to build just the *.dtb files
that we actually need instead of the every dtb that exists.

Change-Id: Id7a152499d4ee1dd08f79d34cc34bfe959313515
This commit is contained in:
Michael Bestas 2022-08-10 05:29:55 +03:00 committed by Andrzej Perczak
parent 0437dc8849
commit c6da5c129d
2 changed files with 6 additions and 1 deletions

View File

@ -484,7 +484,7 @@ $(INSTALLED_DTBIMAGE_TARGET): $(DTC) $(DTB_OUT)
@echo "Building dtb.img" @echo "Building dtb.img"
$(hide) find $(DTB_OUT)/arch/$(KERNEL_ARCH)/boot/dts -type f -name "*.dtb" | xargs rm -f $(hide) find $(DTB_OUT)/arch/$(KERNEL_ARCH)/boot/dts -type f -name "*.dtb" | xargs rm -f
$(call make-dtb-target,$(KERNEL_DEFCONFIG)) $(call make-dtb-target,$(KERNEL_DEFCONFIG))
$(call make-dtb-target,dtbs) $(call make-dtb-target,$(TARGET_KERNEL_DTB))
cat $(shell find $(DTB_OUT)/arch/$(KERNEL_ARCH)/boot/dts -type f -name "*.dtb" | sort) > $@ cat $(shell find $(DTB_OUT)/arch/$(KERNEL_ARCH)/boot/dts -type f -name "*.dtb" | sort) > $@
$(hide) touch -c $(DTB_OUT) $(hide) touch -c $(DTB_OUT)
endif # !BOARD_PREBUILT_DTBIMAGE_DIR endif # !BOARD_PREBUILT_DTBIMAGE_DIR

View File

@ -35,6 +35,8 @@
# Defaults to empty # Defaults to empty
# TARGET_KERNEL_DTBO = Name of the kernel Makefile target that # TARGET_KERNEL_DTBO = Name of the kernel Makefile target that
# generates dtbo.img. Defaults to dtbo.img # generates dtbo.img. Defaults to dtbo.img
# TARGET_KERNEL_DTB = Name of the kernel Makefile target that
# generates the *.dtb targets. Defaults to dtbs
# #
# KERNEL_TOOLCHAIN_PREFIX = Overrides TARGET_KERNEL_CROSS_COMPILE_PREFIX, # KERNEL_TOOLCHAIN_PREFIX = Overrides TARGET_KERNEL_CROSS_COMPILE_PREFIX,
# Set this var in shell to override # Set this var in shell to override
@ -151,6 +153,9 @@ TARGET_KERNEL_DTBO ?= dtbo.img
BOARD_PREBUILT_DTBOIMAGE ?= $(TARGET_OUT_INTERMEDIATES)/DTBO_OBJ/arch/$(KERNEL_ARCH)/boot/$(TARGET_KERNEL_DTBO_PREFIX)$(TARGET_KERNEL_DTBO) BOARD_PREBUILT_DTBOIMAGE ?= $(TARGET_OUT_INTERMEDIATES)/DTBO_OBJ/arch/$(KERNEL_ARCH)/boot/$(TARGET_KERNEL_DTBO_PREFIX)$(TARGET_KERNEL_DTBO)
endif endif
# Set the default dtb target
TARGET_KERNEL_DTB ?= dtbs
# Set use the full path to the make command # Set use the full path to the make command
KERNEL_MAKE_CMD := $(BUILD_TOP)/prebuilts/build-tools/$(HOST_PREBUILT_TAG)/bin/make KERNEL_MAKE_CMD := $(BUILD_TOP)/prebuilts/build-tools/$(HOST_PREBUILT_TAG)/bin/make