soc/qualcomm/x1p42100: Skip SHRM meta firmware load in ramdump mode

QCLib passes SHRM metadata to TME for authentication and to bring SHRM
out of reset. In RAM dump mode, this sequence is unnecessary because
the system is preserving state for post-crash analysis.

This patch adds a RAM-dump-mode check and ensures:
- SHRM metadata is not loaded or populated into the interface table
  when RAM dump mode is detected, preventing QCLib from sending it to
  TME.

Test=Create an image.serial.bin and verify it boots on X1P42100.

Change-Id: I921a2b99543ee462433bec8e8471ad836cabc5dd
Signed-off-by: Venkateshwar S <vens@qualcomm.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/90652
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
This commit is contained in:
Venkateshwar S 2025-12-30 02:08:15 -08:00 committed by Matt DeVillier
commit fe0e14d716

View file

@ -47,15 +47,17 @@ int qclib_soc_override(struct qclib_cb_if_table *table)
}
qclib_add_if_table_entry(QCLIB_TE_CPR_SETTINGS, _cpr_settings, data_size, 0);
/* Attempt to load shrm_meta Blob */
data_size = cbfs_load(qclib_file(QCLIB_CBFS_SHRM_META),
_qc_blob_meta, REGION_SIZE(qc_blob_meta));
if (!data_size) {
printk(BIOS_ERR, "[%s] /shrm_meta failed\n", __func__);
return -1;
}
if (!qclib_check_dload_mode()) {
/* Attempt to load shrm_meta Blob */
data_size = cbfs_load(qclib_file(QCLIB_CBFS_SHRM_META),
_qc_blob_meta, REGION_SIZE(qc_blob_meta));
if (!data_size) {
printk(BIOS_ERR, "[%s] /shrm_meta failed\n", __func__);
return -1;
}
qclib_add_if_table_entry(QCLIB_TE_SHRM_META_SETTINGS, _qc_blob_meta, data_size, 0);
qclib_add_if_table_entry(QCLIB_TE_SHRM_META_SETTINGS, _qc_blob_meta, data_size, 0);
}
/* hook for platform specific policy configuration */
if (qclib_mainboard_override(table)) {