From 42fec197be6d79dd285b77c38a4485db7b463b38 Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Wed, 3 Apr 2024 16:26:59 +0100 Subject: [PATCH] overlays: Use dtbs-list for overlay installation Update the overlay build rules to use the dtbs-list mechanism. Also include the README, and don't set the executable bits. Signed-off-by: Phil Elwell --- arch/arm/boot/dts/overlays/Makefile | 2 +- scripts/Makefile.build | 2 +- scripts/Makefile.dtbinst | 9 +++++++-- scripts/Makefile.lib | 1 + 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/arch/arm/boot/dts/overlays/Makefile b/arch/arm/boot/dts/overlays/Makefile index 4a2ea2de6780..05aec620409b 100644 --- a/arch/arm/boot/dts/overlays/Makefile +++ b/arch/arm/boot/dts/overlays/Makefile @@ -1,6 +1,6 @@ # Overlays for the Raspberry Pi platform -dtb-$(CONFIG_ARCH_BCM2835) += overlay_map.dtb hat_map.dtb +dtb-$(CONFIG_ARCH_BCM2835) += overlay_map.dtb hat_map.dtb README dtbo-$(CONFIG_ARCH_BCM2835) += \ act-led.dtbo \ diff --git a/scripts/Makefile.build b/scripts/Makefile.build index 533a7799fdfe..cabe5166e99a 100644 --- a/scripts/Makefile.build +++ b/scripts/Makefile.build @@ -419,7 +419,7 @@ cmd_gen_order = { $(foreach m, $(real-prereqs), \ $(obj)/modules.order: $(obj-m) FORCE $(call if_changed,gen_order) -$(obj)/dtbs-list: $(dtb-y) FORCE +$(obj)/dtbs-list: $(dtb-y) $(dtbo-y) FORCE $(call if_changed,gen_order) # diff --git a/scripts/Makefile.dtbinst b/scripts/Makefile.dtbinst index 9d920419a62c..4be9ebd3995c 100644 --- a/scripts/Makefile.dtbinst +++ b/scripts/Makefile.dtbinst @@ -31,9 +31,14 @@ $(dst)/%: $(obj)/$(1)% $$(call cmd,dtb_install) endef -$(foreach d, $(sort $(dir $(dtbs))), $(eval $(call gen_install_rules,$(d)))) +define overlays_install_rules +$(dst)/overlays/%: $(obj)/$(1)% + $$(call cmd,dtb_install) +endef -dtbs := $(notdir $(dtbs)) +$(foreach d, $(sort $(dir $(dtbs))), $(if $(findstring "overlays/","$(d)"),$(eval $(call overlays_install_rules,$(d))),$(eval $(call gen_install_rules,$(d))))) + +dtbs := $(foreach d, $(dtbs), $(if $(findstring overlays/,$(d)),$(d),$(notdir $(d)))) endif # CONFIG_ARCH_WANT_FLAT_DTB_INSTALL diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib index 74a5ac0c46ee..a620973ebc30 100644 --- a/scripts/Makefile.lib +++ b/scripts/Makefile.lib @@ -105,6 +105,7 @@ real-obj-y := $(addprefix $(obj)/,$(real-obj-y)) real-obj-m := $(addprefix $(obj)/,$(real-obj-m)) multi-obj-m := $(addprefix $(obj)/, $(multi-obj-m)) dtb-y := $(addprefix $(obj)/, $(dtb-y)) +dtbo-y := $(addprefix $(obj)/, $(dtbo-y)) multi-dtb-y := $(addprefix $(obj)/, $(multi-dtb-y)) real-dtb-y := $(addprefix $(obj)/, $(real-dtb-y)) subdir-ym := $(addprefix $(obj)/,$(subdir-ym))