soc/intel/common: Check CSE Lite RW status

The patch moves CSE Lite RW status check out of CSE RW update logic as
the RW sanity check has to be done irrespective of CSE RW update logic
is enabled or not. If coreboot detects CSE Lite RW status is not good,
the coreboot triggers recovery.

TEST=Verified boot on Brya

Signed-off-by: Sridahr Siricilla <sridhar.siricilla@intel.com>
Change-Id: I582b6cf24f8894c80ab461ca21f7c6e8caa738bc
Reviewed-on: https://review.coreboot.org/c/coreboot/+/55619
Reviewed-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
diff --git a/src/soc/intel/common/block/cse/cse_lite.c b/src/soc/intel/common/block/cse/cse_lite.c
index f5b4559..b2e70e6 100644
--- a/src/soc/intel/common/block/cse/cse_lite.c
+++ b/src/soc/intel/common/block/cse/cse_lite.c
@@ -728,9 +728,6 @@
 		return cse_trigger_fw_update(cse_bp_info, &source_metadata, &target_rdev);
 	}
 
-	if (!cse_is_rw_bp_status_valid(cse_bp_info))
-		return CSE_LITE_SKU_RW_JUMP_ERROR;
-
 	return 0;
 }
 
@@ -768,6 +765,9 @@
 			cse_trigger_recovery(rv);
 	}
 
+	if (!cse_is_rw_bp_status_valid(&cse_bp_info.bp_info))
+		cse_trigger_recovery(CSE_LITE_SKU_RW_JUMP_ERROR);
+
 	if (!cse_boot_to_rw(&cse_bp_info.bp_info)) {
 		printk(BIOS_ERR, "cse_lite: Failed to switch to RW\n");
 		cse_trigger_recovery(CSE_LITE_SKU_RW_SWITCH_ERROR);