diff options
author | Ashwin Kumar <ashk@codeaurora.org> | 2019-10-29 13:20:06 +0530 |
---|---|---|
committer | Julius Werner <jwerner@chromium.org> | 2020-05-11 23:59:38 +0000 |
commit | 16eb4031c69c694d991424ef0905cce1103050e8 (patch) | |
tree | e098756987bdd5676558906c17819fb8b81aac8b /src | |
parent | 9ec99342eb062ef4e4e34832adcce2e9db2414e7 (diff) |
trogdor: QCSDI loading depends on VB2_GBB_FLAG_RUNNING_FAFT setting flag
Change-Id: I63f35c94bc6c60934ace5fe0fd9176443059b354
Signed-off-by: Ashwin Kumar <ashk@codeaurora.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/36518
Reviewed-by: Julius Werner <jwerner@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/soc/qualcomm/common/qclib.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/soc/qualcomm/common/qclib.c b/src/soc/qualcomm/common/qclib.c index 6bf2f0ed25..d06cb429eb 100644 --- a/src/soc/qualcomm/common/qclib.c +++ b/src/soc/qualcomm/common/qclib.c @@ -13,6 +13,8 @@ #include <soc/mmu_common.h> #include <soc/qclib_common.h> #include <soc/symbols_common.h> +#include <security/vboot/misc.h> +#include <vb2_api.h> struct qclib_cb_if_table qclib_cb_if_table = { .magic = QCLIB_MAGIC_NUMBER, @@ -144,9 +146,11 @@ void qclib_load_and_run(void) qclib_cb_if_table.global_attributes = QCLIB_GA_ENABLE_UART_LOGGING; - if (CONFIG(QC_SDI_ENABLE)) { + if (CONFIG(QC_SDI_ENABLE) && (!CONFIG(VBOOT) || + !vboot_is_gbb_flag_set(VB2_GBB_FLAG_RUNNING_FAFT))) { struct prog qcsdi = - PROG_INIT(PROG_REFCODE, CONFIG_CBFS_PREFIX "/qcsdi"); + PROG_INIT(PROG_REFCODE, + CONFIG_CBFS_PREFIX "/qcsdi"); /* Attempt to load QCSDI elf */ if (prog_locate(&qcsdi)) @@ -155,8 +159,8 @@ void qclib_load_and_run(void) if (cbfs_prog_stage_load(&qcsdi)) goto fail; - qclib_add_if_table_entry(QCLIB_TE_QCSDI, prog_entry(&qcsdi), - prog_size(&qcsdi), 0); + qclib_add_if_table_entry(QCLIB_TE_QCSDI, + prog_entry(&qcsdi), prog_size(&qcsdi), 0); printk(BIOS_INFO, "qcsdi.entry[%p]\n", qcsdi.entry); } |