From ae5bc43d3b2df7854de70756e54138c542b8a52e Mon Sep 17 00:00:00 2001 From: Kapil Porwal Date: Wed, 4 Jan 2023 22:03:02 +0530 Subject: [PATCH] soc/intel/meteorlake: Add support to configure package c-state demotion This patch adds the support to enable/disable package c-state demotion feature from the devicetree based on mainboard requirement. Port of commit 4be8d9e80deb ("soc/intel/adl: Add support to configure package c-state demotion") BUG=none TEST=Boot to the OS on Google/Rex. Snippet from FSP log: [SPEW ] PkgCState Demotion : 0x1 Signed-off-by: Kapil Porwal Change-Id: I0a4b0b181349ce41035524482add4336cf83a68b Reviewed-on: https://review.coreboot.org/c/coreboot/+/71654 Tested-by: build bot (Jenkins) Reviewed-by: Subrata Banik --- src/soc/intel/meteorlake/chip.h | 7 +++++++ src/soc/intel/meteorlake/fsp_params.c | 1 + 2 files changed, 8 insertions(+) diff --git a/src/soc/intel/meteorlake/chip.h b/src/soc/intel/meteorlake/chip.h index ad382e3cf1..dfd5c367e7 100644 --- a/src/soc/intel/meteorlake/chip.h +++ b/src/soc/intel/meteorlake/chip.h @@ -346,6 +346,13 @@ struct soc_intel_meteorlake_config { */ uint8_t lan_clk; + /* + * Enable or Disable Package C-state Demotion. + * Default is set to 0. + * Set this to 1 in order to disable Package C-state demotion. + */ + bool disable_package_c_state_demotion; + /* * Enable or Disable Skipping MBP HOB. * Default is set to 0 and set to 1 to skip the MBP HOB. diff --git a/src/soc/intel/meteorlake/fsp_params.c b/src/soc/intel/meteorlake/fsp_params.c index acf376b9c2..e850eaa259 100644 --- a/src/soc/intel/meteorlake/fsp_params.c +++ b/src/soc/intel/meteorlake/fsp_params.c @@ -642,6 +642,7 @@ static void fill_fsps_misc_power_params(FSP_S_CONFIG *s_cfg, /* Enable the energy efficient turbo mode */ s_cfg->EnergyEfficientTurbo = 1; s_cfg->PmcLpmS0ixSubStateEnableMask = get_supported_lpm_mask(); + s_cfg->PkgCStateDemotion = !config->disable_package_c_state_demotion; }