summaryrefslogtreecommitdiff
path: root/src/soc/intel/common/basecode
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/intel/common/basecode')
-rw-r--r--src/soc/intel/common/basecode/debug/debug_feature.c11
-rw-r--r--src/soc/intel/common/basecode/include/intelbasecode/debug_feature.h3
2 files changed, 13 insertions, 1 deletions
diff --git a/src/soc/intel/common/basecode/debug/debug_feature.c b/src/soc/intel/common/basecode/debug/debug_feature.c
index 42cf992afa..1c55f0b887 100644
--- a/src/soc/intel/common/basecode/debug/debug_feature.c
+++ b/src/soc/intel/common/basecode/debug/debug_feature.c
@@ -10,7 +10,8 @@
#define SI_DESC_REGION_SZ 4096
struct pre_mem_ft {
- uint8_t reserved[64];
+ uint8_t cse_fw_update_disable; /* Byte location: 0xF00 */
+ uint8_t reserved[63];
};
static struct pre_mem_ft pre_mem_debug;
@@ -18,6 +19,14 @@ static struct pre_mem_ft pre_mem_debug;
_Static_assert(sizeof(struct pre_mem_ft) % 64 == 0 && sizeof(struct pre_mem_ft) <= 256,
"sizeof(struct pre_mem_ft) must be a multiple of 64 bytes and up to 256 bytes");
+bool is_debug_cse_fw_update_disable(void)
+{
+ printk(BIOS_DEBUG, "rt_debug: pre_mem_debug.cse_fw_update_disable=%d\n",
+ pre_mem_debug.cse_fw_update_disable);
+
+ return pre_mem_debug.cse_fw_update_disable == 1;
+}
+
uint8_t pre_mem_debug_init(void)
{
if (spi_flash_read(boot_device_spi_flash(), PRE_MEM_FEATURE_CTRL_OFFSET,
diff --git a/src/soc/intel/common/basecode/include/intelbasecode/debug_feature.h b/src/soc/intel/common/basecode/include/intelbasecode/debug_feature.h
index fabf27ddd8..51e3f4d05a 100644
--- a/src/soc/intel/common/basecode/include/intelbasecode/debug_feature.h
+++ b/src/soc/intel/common/basecode/include/intelbasecode/debug_feature.h
@@ -5,6 +5,9 @@
#include <types.h>
+/* Check if CSE firmware update is enabled or not */
+bool is_debug_cse_fw_update_disable(void);
+
/*
* Reads OEM Section area in the Descriptor Region and
* populates pre_mem_debug structure.