diff --git a/src/soc/intel/apollolake/Kconfig b/src/soc/intel/apollolake/Kconfig index a9774dc191..2d8838a497 100644 --- a/src/soc/intel/apollolake/Kconfig +++ b/src/soc/intel/apollolake/Kconfig @@ -342,4 +342,12 @@ config CPU_BCLK_MHZ int default 100 +config APL_SKIP_SET_POWER_LIMITS + bool + default n + help + Some Apollo Lake mainboards do not need the Running Average Power + Limits (RAPL) algorithm for a constant power management. + Set this config option to skip the RAPL configuration. + endif diff --git a/src/soc/intel/apollolake/chip.c b/src/soc/intel/apollolake/chip.c index f72173da8c..ec4662c7a8 100644 --- a/src/soc/intel/apollolake/chip.c +++ b/src/soc/intel/apollolake/chip.c @@ -223,6 +223,11 @@ static void set_power_limits(void) uint32_t tdp, min_power, max_power; uint32_t pl2_val; + if (IS_ENABLED(CONFIG_APL_SKIP_SET_POWER_LIMITS)) { + printk(BIOS_INFO, "Skip the RAPL settings.\n"); + return; + } + if (!dev || !dev->chip_info) { printk(BIOS_ERR, "BUG! Could not find SOC devicetree config\n"); return;