kernel: Enhancements to searching DTBs during non-QCOM DTB image generation

* Allow wildcard pattern
* Support searching in specified directory
* Add variable that accepts a list of such patterns

Change-Id: I35da8ed19447b4ab69142152d7dc8e60bc55bf14
This commit is contained in:
Yumi Yukimura
2025-05-04 15:23:57 +08:00
committed by Zabuka_zuzu
parent 5ca54bf62d
commit 48cd0222c1

View File

@@ -76,6 +76,9 @@
#
# TARGET_MERGE_DTBS_WILDCARD = Optional, limits the .dtb files used to generate the
# final DTB image when using QCOM's merge_dtbs script.
# TARGET_DTB_LIST_WILDCARD = Optional, limits the .dtb files used to generate the
# final DTB image when NOT using QCOM's merge_dtbs
# script. Allows multiple patterns.
ifneq ($(TARGET_NO_KERNEL),true)
ifneq ($(TARGET_NO_KERNEL_OVERRIDE),true)
@@ -89,6 +92,7 @@ VARIANT_DEFCONFIG := $(TARGET_KERNEL_VARIANT_CONFIG)
SELINUX_DEFCONFIG := $(TARGET_KERNEL_SELINUX_CONFIG)
# dtb generation - optional
TARGET_MERGE_DTBS_WILDCARD ?= *
TARGET_DTB_LIST_WILDCARD ?= *
# recovery modules.load fallback - optional
BOARD_RECOVERY_KERNEL_MODULES_LOAD ?= $(BOARD_RECOVERY_RAMDISK_KERNEL_MODULES_LOAD)
@@ -675,7 +679,9 @@ ifeq ($(BOARD_USES_QCOM_MERGE_DTBS_SCRIPT),true)
PATH=$(abspath $(HOST_OUT_EXECUTABLES)):$${PATH} python3 $(BUILD_TOP)/vendor/lineage/build/tools/merge_dtbs.py --base $(DTBS_BASE) --techpack $(DTB_OUT)/arch/$(KERNEL_ARCH)/boot/dts/vendor/qcom --out $(DTBS_OUT)
cat $(shell find $(DTBS_OUT) -type f -name "${TARGET_MERGE_DTBS_WILDCARD}.dtb" | sort) > $@
else
cat $(shell find $(DTB_OUT)/arch/$(KERNEL_ARCH)/boot/dts -type f -name "*.dtb" | sort) > $@
@rm -f $@
$(foreach dtb,$(TARGET_DTB_LIST_WILDCARD),\
cat `find $(DTB_OUT)/arch/$(KERNEL_ARCH)/boot/dts/$(dir $(dtb)) -type f -name "$(notdir $(dtb)).dtb" | sort` >> $@;)
endif # BOARD_USES_QCOM_MERGE_DTBS_SCRIPT
endif # BOARD_DTB_CFG
$(hide) touch -c $(DTB_OUT)