summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/soc/intel/skylake/finalize.c5
-rw-r--r--src/soc/intel/skylake/lockdown.c14
2 files changed, 14 insertions, 5 deletions
diff --git a/src/soc/intel/skylake/finalize.c b/src/soc/intel/skylake/finalize.c
index c38ac632c5..335435ad9d 100644
--- a/src/soc/intel/skylake/finalize.c
+++ b/src/soc/intel/skylake/finalize.c
@@ -35,8 +35,6 @@
#include <soc/systemagent.h>
#include <stdlib.h>
-#define PCR_DMI_GCS 0x274C
-#define PCR_DMI_GCS_BILD (1 << 0)
#define PSF_BASE_ADDRESS 0xA00
#define PCR_PSFX_T0_SHDW_PCIEN 0x1C
#define PCR_PSFX_T0_SHDW_PCIEN_FUNDIS (1 << 8)
@@ -168,9 +166,6 @@ static void soc_lockdown(void)
/* Bios Interface Lock */
fast_spi_set_bios_interface_lock_down();
- /* GCS reg of DMI */
- pcr_or8(PID_DMI, PCR_DMI_GCS, PCR_DMI_GCS_BILD);
-
/* Bios Lock */
fast_spi_set_lock_enable();
}
diff --git a/src/soc/intel/skylake/lockdown.c b/src/soc/intel/skylake/lockdown.c
index f2a9e8b19f..5bbf546de0 100644
--- a/src/soc/intel/skylake/lockdown.c
+++ b/src/soc/intel/skylake/lockdown.c
@@ -16,11 +16,16 @@
#include <arch/io.h>
#include <bootstate.h>
#include <chip.h>
+#include <intelblocks/pcr.h>
#include <soc/lpc.h>
#include <soc/pci_devs.h>
+#include <soc/pcr_ids.h>
#include <soc/pm.h>
#include <string.h>
+#define PCR_DMI_GCS 0x274C
+#define PCR_DMI_GCS_BILD (1 << 0)
+
static void lpc_lockdown_config(void)
{
static struct soc_intel_skylake_config *config;
@@ -55,11 +60,20 @@ static void pmc_lockdown_config(void)
write32(pmcbase + PMSYNC_TPR_CFG, pmsyncreg);
}
+static void dmi_lockdown_config(void)
+{
+ /* GCS reg of DMI */
+ pcr_or8(PID_DMI, PCR_DMI_GCS, PCR_DMI_GCS_BILD);
+}
+
static void platform_lockdown_config(void *unused)
{
/* LPC lock down configuration */
lpc_lockdown_config();
+ /* DMI lock down configuration */
+ dmi_lockdown_config();
+
/* PMC lock down configuration */
pmc_lockdown_config();
}