soc/intel/elkhartlake: Update HECI Control Status Register settings

For EHL, SpiProtectionMode is added to HFSTS register #1.
The original Manufacturing Mode is detected via FpfSocConfigLock
instead. If FpfSocConfigLock=1, means it is in Menufacturing Mode,
and it is in EOM (End Of Manufacturing) when FpfSocConfigLock=0.

Signed-off-by: Tan, Lean Sheng <lean.sheng.tan@intel.com>
Change-Id: I9d1d004a6b5b276e33be80f02cd1197b88d379ae
Reviewed-on: https://review.coreboot.org/c/coreboot/+/48539
Reviewed-by: Frans Hendriks <fhendriks@eltan.com>
Reviewed-by: Werner Zeh <werner.zeh@siemens.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Tan, Lean Sheng 2020-12-10 08:58:19 -08:00 committed by Werner Zeh
parent 3cf8a03730
commit d14918f6d0
2 changed files with 5 additions and 3 deletions

View File

@ -8,7 +8,7 @@ union me_hfsts1 {
uint32_t data; uint32_t data;
struct { struct {
uint32_t working_state: 4; uint32_t working_state: 4;
uint32_t mfg_mode: 1; uint32_t spi_protection_mode: 1;
uint32_t fpt_bad: 1; uint32_t fpt_bad: 1;
uint32_t operation_state: 3; uint32_t operation_state: 3;
uint32_t fw_init_complete: 1; uint32_t fw_init_complete: 1;

View File

@ -31,8 +31,8 @@ static void dump_me_status(void *unused)
printk(BIOS_DEBUG, "ME: HFSTS5 : 0x%08X\n", hfsts5.data); printk(BIOS_DEBUG, "ME: HFSTS5 : 0x%08X\n", hfsts5.data);
printk(BIOS_DEBUG, "ME: HFSTS6 : 0x%08X\n", hfsts6.data); printk(BIOS_DEBUG, "ME: HFSTS6 : 0x%08X\n", hfsts6.data);
printk(BIOS_DEBUG, "ME: Manufacturing Mode : %s\n", printk(BIOS_DEBUG, "ME: SPI Protection Mode : %s\n",
hfsts1.fields.mfg_mode ? "YES" : "NO"); hfsts1.fields.spi_protection_mode ? "YES" : "NO");
printk(BIOS_DEBUG, "ME: FW Partition Table : %s\n", printk(BIOS_DEBUG, "ME: FW Partition Table : %s\n",
hfsts1.fields.fpt_bad ? "BAD" : "OK"); hfsts1.fields.fpt_bad ? "BAD" : "OK");
printk(BIOS_DEBUG, "ME: Bringup Loader Failure : %s\n", printk(BIOS_DEBUG, "ME: Bringup Loader Failure : %s\n",
@ -61,6 +61,8 @@ static void dump_me_status(void *unused)
hfsts1.fields.error_code); hfsts1.fields.error_code);
printk(BIOS_DEBUG, "ME: CPU Debug Disabled : %s\n", printk(BIOS_DEBUG, "ME: CPU Debug Disabled : %s\n",
hfsts6.fields.cpu_debug_disable ? "YES" : "NO"); hfsts6.fields.cpu_debug_disable ? "YES" : "NO");
printk(BIOS_DEBUG, "ME: Manufacturing Mode : %s\n",
hfsts6.fields.fpf_soc_lock ? "NO" : "YES");
printk(BIOS_DEBUG, "ME: TXT Support : %s\n", printk(BIOS_DEBUG, "ME: TXT Support : %s\n",
hfsts6.fields.txt_support ? "YES" : "NO"); hfsts6.fields.txt_support ? "YES" : "NO");
} }