From 53db2eec7aa60b07f11c9d46f12041b571319dbc Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Tue, 22 Dec 2020 19:30:13 -0700 Subject: [PATCH] Makefile: Build a separate .dtb for TPL At present both SPL and TPL use the same devicetree binary. While there is logic to run fdtgrep separately on each one, it does not actually happen. Add a new TPL rule and use that instead. Make this rule conditional on there actually being a TPL. Do the same for SPL for consistency. Note that the SPL and TPL dtbs are build by a Makefule rule used for U-Boot proper. This is the 'dtbs' target in dts/Makefile. So the check for CONFIG_TPL_BUILD in cmd_fdtgrep never actually works at present. We don't support CONFIG_OF_EMBED for TPL at present. Signed-off-by: Simon Glass --- dts/Makefile | 11 ++++++++--- scripts/Makefile.spl | 4 +++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/dts/Makefile b/dts/Makefile index a20930eb9a..4cd65ce73d 100644 --- a/dts/Makefile +++ b/dts/Makefile @@ -19,6 +19,9 @@ endif $(obj)/dt-spl.dtb: $(DTB) $(objtree)/tools/fdtgrep FORCE $(call if_changed,fdtgrep) +$(obj)/dt-tpl.dtb: $(DTB) $(objtree)/tools/fdtgrep FORCE + $(call if_changed,fdtgrep) + ifeq ($(CONFIG_OF_DTB_PROPS_REMOVE),y) $(obj)/dt.dtb: $(DTB) $(objtree)/tools/fdtgrep FORCE $(call if_changed,fdt_rm_props) @@ -27,7 +30,7 @@ $(obj)/dt.dtb: $(DTB) FORCE $(call if_changed,shipped) endif -targets += dt.dtb dt-spl.dtb +targets += dt.dtb dt-spl.dtb dt-tpl.dtb $(DTB): arch-dtbs $(Q)test -e $@ || ( \ @@ -51,10 +54,12 @@ else obj-$(CONFIG_OF_EMBED) := dt.dtb.o endif -dtbs: $(obj)/dt.dtb $(obj)/dt-spl.dtb +dtbs: $(obj)/dt.dtb \ + $(if $(CONFIG_SPL),$(obj)/dt-spl.dtb) \ + $(if $(CONFIG_TPL),$(obj)/dt-tpl.dtb) @: -clean-files := dt.dtb.S dt-spl.dtb.S +clean-files := dt.dtb.S dt-spl.dtb.S dt-tpl.dtb.S # Let clean descend into dts directories subdir- += ../arch/arm/dts ../arch/microblaze/dts ../arch/mips/dts ../arch/sandbox/dts ../arch/x86/dts ../arch/powerpc/dts ../arch/riscv/dts diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl index 9f1f7445d7..8ebe6a9840 100644 --- a/scripts/Makefile.spl +++ b/scripts/Makefile.spl @@ -31,8 +31,10 @@ endif ifeq ($(CONFIG_TPL_BUILD),y) SPL_BIN := u-boot-tpl +SPL_NAME := tpl else SPL_BIN := u-boot-spl +SPL_NAME := spl endif ifdef CONFIG_SPL_BUILD @@ -298,7 +300,7 @@ $(obj)/$(SPL_BIN)-pad.bin: $(obj)/$(SPL_BIN) @bss_size_str=$(shell $(NM) $< | awk 'BEGIN {size = 0} /__bss_size/ {size = $$1} END {print "ibase=16; " toupper(size)}' | bc); \ dd if=/dev/zero of=$@ bs=1 count=$${bss_size_str} 2>/dev/null; -$(obj)/$(SPL_BIN).dtb: dts/dt-spl.dtb FORCE +$(obj)/$(SPL_BIN).dtb: dts/dt-$(SPL_NAME).dtb FORCE $(call if_changed,copy) pythonpath = PYTHONPATH=scripts/dtc/pylibfdt -- 2.39.5