UPSTREAM: 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>
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>
Original-Change-Id: I77c254195895a93a5606adee8b6f43d8b7100848
GitOrigin-RevId: 670572ff6a4d0822df91c34114b7afdb21efd85c
Change-Id: Icb03bb640599d68adcb0811b53f375bc67b34079
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/coreboot/+/3614075
Reviewed-by: Ricardo Quesada <ricardoq@chromium.org>
Tested-by: CopyBot Service Account <copybot.service@gmail.com>
Commit-Queue: Ricardo Quesada <ricardoq@chromium.org>
diff --git a/src/soc/intel/common/block/cse/cse.c b/src/soc/intel/common/block/cse/cse.c
index 64fd041..d284a9d 100644
--- a/src/soc/intel/common/block/cse/cse.c
+++ b/src/soc/intel/common/block/cse/cse.c
@@ -1203,7 +1203,8 @@
  * 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 @@
 
 	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();
 	}