summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/soc/intel/cannonlake/cpu.c6
-rw-r--r--src/soc/intel/skylake/cpu.c6
2 files changed, 6 insertions, 6 deletions
diff --git a/src/soc/intel/cannonlake/cpu.c b/src/soc/intel/cannonlake/cpu.c
index b8a2c8ceb5..53757f52ca 100644
--- a/src/soc/intel/cannonlake/cpu.c
+++ b/src/soc/intel/cannonlake/cpu.c
@@ -162,14 +162,14 @@ static void per_cpu_smm_trigger(void)
void smm_lock(void)
{
- struct device *sa_dev = pcidev_path_on_root(SA_DEVFN_ROOT);
/*
* LOCK the SMM memory window and enable normal SMM.
* After running this function, only a full reset can
- * make the SMM registers writable again.
+ * make the SMM registers writable again. D_LCK bit
+ * requires the PCI 0xcf8/0xcfc I/O access.
*/
printk(BIOS_DEBUG, "Locking SMM.\n");
- pci_write_config8(sa_dev, SMRAM, D_LCK | G_SMRAME | C_BASE_SEG);
+ pci_io_write_config8(SA_DEVFN_ROOT, SMRAM, D_LCK | G_SMRAME | C_BASE_SEG);
}
static void post_mp_init(void)
diff --git a/src/soc/intel/skylake/cpu.c b/src/soc/intel/skylake/cpu.c
index 5cf48eaded..057aece02d 100644
--- a/src/soc/intel/skylake/cpu.c
+++ b/src/soc/intel/skylake/cpu.c
@@ -164,14 +164,14 @@ static void per_cpu_smm_trigger(void)
void smm_lock(void)
{
- struct device *sa_dev = pcidev_path_on_root(SA_DEVFN_ROOT);
/*
* LOCK the SMM memory window and enable normal SMM.
* After running this function, only a full reset can
- * make the SMM registers writable again.
+ * make the SMM registers writable again. D_LCK bit
+ * requires the PCI 0xcf8/0xcfc I/O access.
*/
printk(BIOS_DEBUG, "Locking SMM.\n");
- pci_write_config8(sa_dev, SMRAM, D_LCK | G_SMRAME | C_BASE_SEG);
+ pci_io_write_config8(SA_DEVFN_ROOT, SMRAM, D_LCK | G_SMRAME | C_BASE_SEG);
}
static void vmx_configure(void *unused)