summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Gerlach2020-12-15 19:31:34 -0600
committerDave Gerlach2021-01-05 16:14:18 -0600
commit418ae751208822619943f99184bfc9e08a916e09 (patch)
tree94c59aa028cd950b4a62e367369c6024abc64d34
parentc0f5f4ae1587f6b227c7e581236181083b1402b0 (diff)
downloadk3-image-gen-418ae751208822619943f99184bfc9e08a916e09.tar.gz
k3-image-gen-418ae751208822619943f99184bfc9e08a916e09.tar.xz
k3-image-gen-418ae751208822619943f99184bfc9e08a916e09.zip
build: Introduce COMBINED_TIFS_BRDCFG build variable for split boardcfg
J7200 supports using a split firmware where TIFS firmware runs on the DMSC and DM firmware runs on an R5, and each are able to receive their own boardcfg loaded from the tiboot3.bin image. Currently COMBINED_SYSFW_BRDCFG can represent both a full set of boardcfg for platforms using a single DMSC firmware or only the TIFS boardcfg when using split firmware. To make this less confusing, introduce a COMBINED_TIFS_BRDCFG build variable to be used only for TIFS BOARDCFG when using split firmware so that COMBINED_SYSFW_BRDCFG always represents a complete set of boardcfg. This allows SoCs to build bootable binaries supporting ROM combined boot images with both splt TIFS/DM firmware or complete DMSC firmware. Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
-rw-r--r--Makefile13
-rw-r--r--soc/j7200/Makefile2
2 files changed, 12 insertions, 3 deletions
diff --git a/Makefile b/Makefile
index d51e395e9..df88e43f2 100644
--- a/Makefile
+++ b/Makefile
@@ -112,6 +112,7 @@ SOC_BIN_NAMES += $(SOURCES:%.c=%.bin)
112ITB ?= $(binroot)/sysfw-$(SOC)-$(CONFIG).itb 112ITB ?= $(binroot)/sysfw-$(SOC)-$(CONFIG).itb
113ITS ?= $(soc_objroot)/$(basename $(notdir $(ITB))).its 113ITS ?= $(soc_objroot)/$(basename $(notdir $(ITB))).its
114COMBINED_SYSFW_BRDCFG ?= $(soc_objroot)/combined-sysfw-cfg.bin 114COMBINED_SYSFW_BRDCFG ?= $(soc_objroot)/combined-sysfw-cfg.bin
115COMBINED_TIFS_BRDCFG ?= $(soc_objroot)/combined-tifs-cfg.bin
115COMBINED_DM_BRDCFG ?= $(soc_objroot)/combined-dm-cfg.bin 116COMBINED_DM_BRDCFG ?= $(soc_objroot)/combined-dm-cfg.bin
116 117
117vpath %.itb $(soc_objroot) 118vpath %.itb $(soc_objroot)
@@ -174,13 +175,21 @@ sysfw.itb: $(ITB)
174soc_objs: $(SOC_OBJS) 175soc_objs: $(SOC_OBJS)
175 176
176$(COMBINED_SYSFW_BRDCFG): $(SOC_BINS) 177$(COMBINED_SYSFW_BRDCFG): $(SOC_BINS)
178 python3 ./scripts/sysfw_boardcfg_blob_creator.py -b $(soc_objroot)/board-cfg.bin -s $(soc_objroot)/sec-cfg.bin -p $(soc_objroot)/pm-cfg.bin -r $(soc_objroot)/rm-cfg.bin -o $@
179
180$(COMBINED_TIFS_BRDCFG): $(SOC_BINS)
177 python3 ./scripts/sysfw_boardcfg_blob_creator.py -b $(soc_objroot)/board-cfg.bin -s $(soc_objroot)/sec-cfg.bin -o $@ 181 python3 ./scripts/sysfw_boardcfg_blob_creator.py -b $(soc_objroot)/board-cfg.bin -s $(soc_objroot)/sec-cfg.bin -o $@
178 182
179$(COMBINED_DM_BRDCFG): $(SOC_BINS) 183$(COMBINED_DM_BRDCFG): $(SOC_BINS)
180 python3 ./scripts/sysfw_boardcfg_blob_creator.py -p $(soc_objroot)/pm-cfg.bin -r $(soc_objroot)/rm-cfg.bin -o $@ 184 python3 ./scripts/sysfw_boardcfg_blob_creator.py -p $(soc_objroot)/pm-cfg.bin -r $(soc_objroot)/rm-cfg.bin -o $@
181 185
182tiboot3.bin: $(SBL) $(SYSFW_PATH) $(COMBINED_SYSFW_BRDCFG) $(COMBINED_DM_BRDCFG) 186ifneq (,$(COMBINED_SYSFW_BRDCFG_LOADADDR))
183 ./scripts/gen_x509_combined_cert.sh -b $(SBL) -l $(SBL_LOADADDDR) -s $(SYSFW_PATH) -m 0x40000 -d $(COMBINED_SYSFW_BRDCFG) -n $(COMBINED_SYSFW_BRDCFG_LOADADDR) -t $(COMBINED_DM_BRDCFG) -y $(COMBINED_DM_BRDCFG_LOADADDR) -k $(KEY) -o $@ 187tiboot3.bin: $(SBL) $(SYSFW_PATH) $(COMBINED_SYSFW_BRDCFG)
188 ./scripts/gen_x509_combined_cert.sh -b $(SBL) -l $(SBL_LOADADDDR) -s $(SYSFW_PATH) -m $(LOADADDR) -d $(COMBINED_SYSFW_BRDCFG) -n $(COMBINED_SYSFW_BRDCFG_LOADADDR) -k $(KEY) -o $@
189else
190tiboot3.bin: $(SBL) $(SYSFW_PATH) $(COMBINED_TIFS_BRDCFG) $(COMBINED_DM_BRDCFG)
191 ./scripts/gen_x509_combined_cert.sh -b $(SBL) -l $(SBL_LOADADDDR) -s $(SYSFW_PATH) -m 0x40000 -d $(COMBINED_TIFS_BRDCFG) -n $(COMBINED_TIFS_BRDCFG_LOADADDR) -t $(COMBINED_DM_BRDCFG) -y $(COMBINED_DM_BRDCFG_LOADADDR) -k $(KEY) -o $@
192endif
184 193
185$(soc_objroot)/%.o: %.c 194$(soc_objroot)/%.o: %.c
186 $(CROSS_COMPILE)gcc $(CFLAGS) -c -o $@-pre-validated $< 195 $(CROSS_COMPILE)gcc $(CFLAGS) -c -o $@-pre-validated $<
diff --git a/soc/j7200/Makefile b/soc/j7200/Makefile
index 03e091c31..3b754f703 100644
--- a/soc/j7200/Makefile
+++ b/soc/j7200/Makefile
@@ -31,7 +31,7 @@
31# 31#
32 32
33SBL_LOADADDDR ?= 0x41c00000 33SBL_LOADADDDR ?= 0x41c00000
34COMBINED_SYSFW_BRDCFG_LOADADDR ?= 0x7f000 34COMBINED_TIFS_BRDCFG_LOADADDR ?= 0x7f000
35COMBINED_DM_BRDCFG_LOADADDR ?= 0x41c80000 35COMBINED_DM_BRDCFG_LOADADDR ?= 0x41c80000
36LOADADDR ?= 0x40000 36LOADADDR ?= 0x40000
37SCIFS = fs 37SCIFS = fs