diff options
author | Dave Gerlach | 2020-12-15 19:31:34 -0600 |
---|---|---|
committer | Dave Gerlach | 2021-01-05 16:14:18 -0600 |
commit | 418ae751208822619943f99184bfc9e08a916e09 (patch) | |
tree | 94c59aa028cd950b4a62e367369c6024abc64d34 | |
parent | c0f5f4ae1587f6b227c7e581236181083b1402b0 (diff) | |
download | k3-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-- | Makefile | 13 | ||||
-rw-r--r-- | soc/j7200/Makefile | 2 |
2 files changed, 12 insertions, 3 deletions
@@ -112,6 +112,7 @@ SOC_BIN_NAMES += $(SOURCES:%.c=%.bin) | |||
112 | ITB ?= $(binroot)/sysfw-$(SOC)-$(CONFIG).itb | 112 | ITB ?= $(binroot)/sysfw-$(SOC)-$(CONFIG).itb |
113 | ITS ?= $(soc_objroot)/$(basename $(notdir $(ITB))).its | 113 | ITS ?= $(soc_objroot)/$(basename $(notdir $(ITB))).its |
114 | COMBINED_SYSFW_BRDCFG ?= $(soc_objroot)/combined-sysfw-cfg.bin | 114 | COMBINED_SYSFW_BRDCFG ?= $(soc_objroot)/combined-sysfw-cfg.bin |
115 | COMBINED_TIFS_BRDCFG ?= $(soc_objroot)/combined-tifs-cfg.bin | ||
115 | COMBINED_DM_BRDCFG ?= $(soc_objroot)/combined-dm-cfg.bin | 116 | COMBINED_DM_BRDCFG ?= $(soc_objroot)/combined-dm-cfg.bin |
116 | 117 | ||
117 | vpath %.itb $(soc_objroot) | 118 | vpath %.itb $(soc_objroot) |
@@ -174,13 +175,21 @@ sysfw.itb: $(ITB) | |||
174 | soc_objs: $(SOC_OBJS) | 175 | soc_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 | ||
182 | tiboot3.bin: $(SBL) $(SYSFW_PATH) $(COMBINED_SYSFW_BRDCFG) $(COMBINED_DM_BRDCFG) | 186 | ifneq (,$(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 $@ | 187 | tiboot3.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 $@ | ||
189 | else | ||
190 | tiboot3.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 $@ | ||
192 | endif | ||
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 | ||
33 | SBL_LOADADDDR ?= 0x41c00000 | 33 | SBL_LOADADDDR ?= 0x41c00000 |
34 | COMBINED_SYSFW_BRDCFG_LOADADDR ?= 0x7f000 | 34 | COMBINED_TIFS_BRDCFG_LOADADDR ?= 0x7f000 |
35 | COMBINED_DM_BRDCFG_LOADADDR ?= 0x41c80000 | 35 | COMBINED_DM_BRDCFG_LOADADDR ?= 0x41c80000 |
36 | LOADADDR ?= 0x40000 | 36 | LOADADDR ?= 0x40000 |
37 | SCIFS = fs | 37 | SCIFS = fs |