soc/intel/cmn/cse: Enforce CSE disabling

This patch enforces disabling of the CSE device if CSE stays in
SOFT TEMP DISABLE state. The recommendation is to make CSE function
disable to avoid receiving any CSE commands from the OS layer.

BUG=b:228789015
TEST=None

Signed-off-by: Subrata Banik <subratabanik@google.com>
Change-Id: I77c254195895a93a5606adee8b6f43d8b7100848
Reviewed-on: https://review.coreboot.org/c/coreboot/+/63822
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Sridhar Siricilla <sridhar.siricilla@intel.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
This commit is contained in:
Subrata Banik 2022-04-25 15:39:55 +05:30 committed by Felix Held
parent 4b1f4e3a99
commit 670572ff6a
1 changed files with 3 additions and 2 deletions

View File

@ -1203,7 +1203,8 @@ static void cse_set_state(struct device *dev)
* 1. Send EOP to CSE if not done.
* 2. Perform global reset lock.
* 3. Put HECI1 to D0i3 and disable the HECI1 if the user selects
* DISABLE_HECI1_AT_PRE_BOOT config.
* DISABLE_HECI1_AT_PRE_BOOT config or CSE HFSTS1 Operation Mode is
* `Software Temporary Disable`.
*/
static void cse_final_ready_to_boot(void)
{
@ -1212,7 +1213,7 @@ static void cse_final_ready_to_boot(void)
cse_control_global_reset_lock();
if (CONFIG(DISABLE_HECI1_AT_PRE_BOOT)) {
if (CONFIG(DISABLE_HECI1_AT_PRE_BOOT) || cse_is_hfs1_com_soft_temp_disable()) {
cse_set_to_d0i3();
heci1_disable();
}