X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;ds=inline;f=dts%2FMakefile;h=1f83e615e8aa9a07c97e6589a6ae87e25a874569;hb=0619af09424b58ca2f3ff2f03f5ccff9405650fa;hp=9907463fc6344d524d9ea415db5112573c6e1a8b;hpb=3284c8b8cad9452bf0711f52699bc9a5aeb83319;p=oweals%2Fu-boot.git diff --git a/dts/Makefile b/dts/Makefile index 9907463fc6..1f83e615e8 100644 --- a/dts/Makefile +++ b/dts/Makefile @@ -1,8 +1,6 @@ +# SPDX-License-Identifier: GPL-2.0+ # # Copyright (c) 2011 The Chromium OS Authors. -# -# SPDX-License-Identifier: GPL-2.0+ -# # This Makefile builds the internal U-Boot fdt if CONFIG_OF_CONTROL is # enabled. See doc/README.fdt-control for more details. @@ -12,15 +10,19 @@ ifeq ($(DEVICE_TREE),) DEVICE_TREE := unset endif +ifneq ($(EXT_DTB),) +DTB := $(EXT_DTB) +else DTB := arch/$(ARCH)/dts/$(DEVICE_TREE).dtb +endif -quiet_cmd_copy = COPY $@ - cmd_copy = cp $< $@ +$(obj)/dt-spl.dtb: $(DTB) $(objtree)/tools/fdtgrep FORCE + $(call if_changed,fdtgrep) $(obj)/dt.dtb: $(DTB) FORCE - $(call if_changed,copy) + $(call if_changed,shipped) -targets += dt.dtb +targets += dt.dtb dt-spl.dtb $(DTB): arch-dtbs $(Q)test -e $@ || ( \ @@ -31,17 +33,23 @@ $(DTB): arch-dtbs echo >&2; \ /bin/false) +PHONY += arch-dtbs arch-dtbs: $(Q)$(MAKE) $(build)=arch/$(ARCH)/dts dtbs -.SECONDARY: $(obj)/dt.dtb.S - +ifeq ($(CONFIG_SPL_BUILD),y) +obj-$(CONFIG_OF_EMBED) := dt-spl.dtb.o +# support "out-of-tree" build for dtb-spl +$(obj)/dt-spl.dtb.o: $(obj)/dt-spl.dtb.S FORCE + $(call if_changed_dep,as_o_S) +else obj-$(CONFIG_OF_EMBED) := dt.dtb.o +endif -dtbs: $(obj)/dt.dtb +dtbs: $(obj)/dt.dtb $(obj)/dt-spl.dtb @: -clean-files := dt.dtb.S +clean-files := dt.dtb.S dt-spl.dtb.S # Let clean descend into dts directories -subdir- += ../arch/*/dts +subdir- += ../arch/arm/dts ../arch/microblaze/dts ../arch/mips/dts ../arch/sandbox/dts ../arch/x86/dts ../arch/powerpc/dts ../arch/riscv/dts