linux: introduce BR2_KERNEL_DTB_KEEP_DIRNAME
In linux, newer architectures like ARM64 and RISC-V keep their device tree sources organized by subdirectories. When these device trees are installed by the kernel they will keep the directory names. But buildroot strips the prefixes when installing them into /boot or the images directory. Sometimes the bootloader references the device tree by name (e.g. u-boot has the environment variable 'fdtfile') which also includes the prefix directory. Make it possible to keep this prefix during installation, so we can be compatible with other distributions and make it easier for the user, because he doesn't have to change that environment variable. Signed-off-by: Michael Walle <michael@walle.cc> Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
This commit is contained in:
committed by
Yann E. MORIN
parent
14f3ecd5d3
commit
a4eef9a395
@@ -378,10 +378,11 @@ endef
|
||||
ifeq ($(BR2_LINUX_KERNEL_APPENDED_DTB),)
|
||||
define LINUX_INSTALL_DTB
|
||||
# dtbs moved from arch/<ARCH>/boot to arch/<ARCH>/boot/dts since 3.8-rc1
|
||||
cp $(addprefix \
|
||||
$(LINUX_ARCH_PATH)/boot/$(if $(wildcard \
|
||||
$(addprefix $(LINUX_ARCH_PATH)/boot/dts/,$(LINUX_DTBS))),dts/),$(LINUX_DTBS)) \
|
||||
$(1)
|
||||
$(foreach dtb,$(LINUX_DTBS), \
|
||||
install -D \
|
||||
$(or $(wildcard $(LINUX_ARCH_PATH)/boot/dts/$(dtb)),$(LINUX_ARCH_PATH)/boot/$(dtb)) \
|
||||
$(1)/$(if $(BR2_KERNEL_DTB_KEEP_DIRNAME),$(dtb),$(notdir $(dtb)))
|
||||
)
|
||||
endef
|
||||
endif # BR2_LINUX_KERNEL_APPENDED_DTB
|
||||
endif # BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT
|
||||
|
||||
Reference in New Issue
Block a user