diff options
Diffstat (limited to 'src/soc/intel/skylake/lockdown.c')
-rw-r--r-- | src/soc/intel/skylake/lockdown.c | 14 |
1 files changed, 14 insertions, 0 deletions
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(); } |