From a1d9b69f47637c2bc7a5ca6a2e4ede6fb9c37a06 Mon Sep 17 00:00:00 2001 From: Kapil Porwal Date: Wed, 28 May 2025 14:13:53 +0530 Subject: [PATCH] soc/qc/x1p42100: Add metadata files for shrm and cpucp Add shrm_meta and cpucp_meta as raw files to the CBFS. BUG=b:419213272 TEST=Verify presence of metadata files in the CBFS. Change-Id: If97e2d6395ef108f405a3b66727fb19648ddf03d Signed-off-by: Kapil Porwal Reviewed-on: https://review.coreboot.org/c/coreboot/+/87889 Tested-by: build bot (Jenkins) Reviewed-by: Varadarajan Narayanan Reviewed-by: Subrata Banik --- src/soc/qualcomm/x1p42100/Makefile.mk | 29 +++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/src/soc/qualcomm/x1p42100/Makefile.mk b/src/soc/qualcomm/x1p42100/Makefile.mk index f75fdd4f7f..7627320dbc 100644 --- a/src/soc/qualcomm/x1p42100/Makefile.mk +++ b/src/soc/qualcomm/x1p42100/Makefile.mk @@ -142,6 +142,21 @@ $(CPUCP_CBFS)-type := payload $(CPUCP_CBFS)-compression := $(CBFS_COMPRESS_FLAG) cbfs-files-y += $(CPUCP_CBFS) +################################################################################ +# Rule to create cpucp_meta from cpucp.elf +# This rule depends on cpucp.elf being built and the extractor script existing. +$(obj)/mainboard/$(MAINBOARDDIR)/cpucp_meta: $(X1P42100_BLOB)/cpucp/cpucp.elf util/qualcomm/elf_segment_extractor.py + @echo "Extracting ELF headers and hash table segment from $< to $@" + @util/qualcomm/elf_segment_extractor.py --eh --pht --hashtable $< $@ + +CPUCP_META_FILE := $(obj)/mainboard/$(MAINBOARDDIR)/cpucp_meta +CPUCP_META_CBFS := $(CONFIG_CBFS_PREFIX)/cpucp_meta +$(CPUCP_META_CBFS)-file := $(CPUCP_META_FILE) +$(CPUCP_META_CBFS)-type := raw +$(CPUCP_META_CBFS)-compression := $(CBFS_COMPRESS_FLAG) +cbfs-files-y += $(CPUCP_META_CBFS) + + ################################################################################ SHRM_FILE := $(X1P42100_BLOB)/shrm/shrm.elf SHRM_CBFS := $(CONFIG_CBFS_PREFIX)/shrm @@ -150,6 +165,20 @@ $(SHRM_CBFS)-type := payload $(SHRM_CBFS)-compression := $(CBFS_PRERAM_COMPRESS_FLAG) cbfs-files-y += $(SHRM_CBFS) +################################################################################ +# Rule to create shrm_meta from shrm.elf +# This rule depends on shrm.elf being built and the extractor script existing. +$(obj)/mainboard/$(MAINBOARDDIR)/shrm_meta: $(X1P42100_BLOB)/shrm/shrm.elf util/qualcomm/elf_segment_extractor.py + @echo "Extracting ELF headers and hash table segment from $< to $@" + @util/qualcomm/elf_segment_extractor.py --eh --pht --hashtable $< $@ + +SHRM_META_FILE := $(obj)/mainboard/$(MAINBOARDDIR)/shrm_meta +SHRM_META_CBFS := $(CONFIG_CBFS_PREFIX)/shrm_meta +$(SHRM_META_CBFS)-file := $(SHRM_META_FILE) +$(SHRM_META_CBFS)-type := raw +$(SHRM_META_CBFS)-compression := $(CBFS_PRERAM_COMPRESS_FLAG) +cbfs-files-y += $(SHRM_META_CBFS) + ################################################################################ GSI_FW_FILE := $(X1P42100_BLOB)/qup_fw/gsi_fw.bin GSI_FW_CBFS := $(CONFIG_CBFS_PREFIX)/gsi_fw