soc/intel: Don't send CSE EOP if CSME is disabled
CSE EOP will fail if the CSE is disabled (CB:52800) Signed-off-by: Sean Rhodes <sean@starlabs.systems> Change-Id: Ic00fdb0d97fefac977c0878d1d5893d07d4481ea Reviewed-on: https://review.coreboot.org/c/coreboot/+/57149 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
This commit is contained in:
parent
8d5b674739
commit
b5b22a74a6
|
@ -18,6 +18,7 @@ enum cse_eop_result {
|
||||||
CSE_EOP_RESULT_GLOBAL_RESET_REQUESTED,
|
CSE_EOP_RESULT_GLOBAL_RESET_REQUESTED,
|
||||||
CSE_EOP_RESULT_SUCCESS,
|
CSE_EOP_RESULT_SUCCESS,
|
||||||
CSE_EOP_RESULT_ERROR,
|
CSE_EOP_RESULT_ERROR,
|
||||||
|
CSE_EOP_RESULT_DISABLED,
|
||||||
};
|
};
|
||||||
|
|
||||||
static bool cse_disable_mei_bus(void)
|
static bool cse_disable_mei_bus(void)
|
||||||
|
@ -100,6 +101,14 @@ static enum cse_eop_result cse_send_eop(void)
|
||||||
* 2) HFSTS1 COM is Normal
|
* 2) HFSTS1 COM is Normal
|
||||||
* 3) Only sent after DID (accomplished by compiling this into ramstage)
|
* 3) Only sent after DID (accomplished by compiling this into ramstage)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
if (cse_is_hfs1_com_soft_temp_disable()) {
|
||||||
|
printk(BIOS_ERR, "HECI: Prerequisites not met for sending EOP\n");
|
||||||
|
if (CONFIG(SOC_INTEL_CSE_LITE_SKU))
|
||||||
|
return CSE_EOP_RESULT_ERROR;
|
||||||
|
return CSE_EOP_RESULT_DISABLED;
|
||||||
|
}
|
||||||
|
|
||||||
if (!cse_is_hfs1_cws_normal() || !cse_is_hfs1_com_normal()) {
|
if (!cse_is_hfs1_cws_normal() || !cse_is_hfs1_com_normal()) {
|
||||||
printk(BIOS_ERR, "HECI: Prerequisites not met for sending EOP\n");
|
printk(BIOS_ERR, "HECI: Prerequisites not met for sending EOP\n");
|
||||||
return CSE_EOP_RESULT_ERROR;
|
return CSE_EOP_RESULT_ERROR;
|
||||||
|
@ -158,6 +167,9 @@ static void handle_cse_eop_result(enum cse_eop_result result)
|
||||||
case CSE_EOP_RESULT_SUCCESS:
|
case CSE_EOP_RESULT_SUCCESS:
|
||||||
printk(BIOS_INFO, "CSE EOP successful, continuing boot\n");
|
printk(BIOS_INFO, "CSE EOP successful, continuing boot\n");
|
||||||
break;
|
break;
|
||||||
|
case CSE_EOP_RESULT_DISABLED:
|
||||||
|
printk(BIOS_INFO, "CSE is disabled, continuing boot\n");
|
||||||
|
break;
|
||||||
case CSE_EOP_RESULT_ERROR: /* fallthrough */
|
case CSE_EOP_RESULT_ERROR: /* fallthrough */
|
||||||
default:
|
default:
|
||||||
printk(BIOS_ERR, "ERROR: Failed to send EOP to CSE, %d\n", result);
|
printk(BIOS_ERR, "ERROR: Failed to send EOP to CSE, %d\n", result);
|
||||||
|
|
Loading…
Reference in New Issue