aboutsummaryrefslogtreecommitdiff
path: root/src/soc/intel/cannonlake/cpu.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc/intel/cannonlake/cpu.c')
-rw-r--r--src/soc/intel/cannonlake/cpu.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/soc/intel/cannonlake/cpu.c b/src/soc/intel/cannonlake/cpu.c
index b0eaa5dd34..6682cdc7b9 100644
--- a/src/soc/intel/cannonlake/cpu.c
+++ b/src/soc/intel/cannonlake/cpu.c
@@ -384,8 +384,14 @@ static void configure_thermal_target(void)
*/
static void enable_pm_timer_emulation(void)
{
- /* ACPI PM timer emulation */
+ const struct soc_intel_cannonlake_config *config;
msr_t msr;
+
+ config = config_of_path(SA_DEVFN_ROOT);
+
+ /* Enable PM timer emulation only if ACPI PM timer is disabled */
+ if (!config->PmTimerDisabled)
+ return;
/*
* The derived frequency is calculated as follows:
* (CTC_FREQ * msr[63:32]) >> 32 = target frequency.