soc/intel/cmn/blk.cse: Fix check condition in store_cse_rw_fw_version()

The return value of cse_get_bp_info() is an enum integer, where zero
means success and non-zero means failure. The function
store_cse_rw_fw_version() calls the function cse_get_bp_info() and
validates the return value as a boolean causing prematurely returns of
the parent API even if cse_get_bp_info() is successful.

This patch corrects this logical error by returning only if
cse_get_bp_info() fails.

TEST=Build and boot google/nivviks and verify that the ISH version info
command is only being sent during cold boot.

Signed-off-by: Dinesh Gehlot <digehlot@google.com>
Change-Id: Ice278e5ac69ff2f2c9f1936b76d71ae9deb6f855
Reviewed-on: https://review.coreboot.org/c/coreboot/+/74998
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Sridhar Siricilla <sridhar.siricilla@intel.com>
This commit is contained in:
Dinesh Gehlot 2023-05-08 05:15:53 +00:00 committed by Felix Held
parent f3027b809c
commit 8c53e6a053
1 changed files with 1 additions and 1 deletions

View File

@ -1181,7 +1181,7 @@ static void store_cse_rw_fw_version(void)
return; return;
struct get_bp_info_rsp cse_bp_info; struct get_bp_info_rsp cse_bp_info;
if (!cse_get_bp_info(&cse_bp_info)) { if (cse_get_bp_info(&cse_bp_info) != CB_SUCCESS) {
printk(BIOS_ERR, "cse_lite: Failed to get CSE boot partition info\n"); printk(BIOS_ERR, "cse_lite: Failed to get CSE boot partition info\n");
return; return;
} }