diff options
author | Kapil Porwal <kapilporwal@google.com> | 2023-01-04 21:49:36 +0530 |
---|---|---|
committer | Martin L Roth <gaumless@gmail.com> | 2023-01-08 01:22:56 +0000 |
commit | ae5ba37a5589c503e902ed769a81c91d0a525d83 (patch) | |
tree | 04e063247a0b780a97ac333878b769130918e37e /src/soc/intel/meteorlake | |
parent | bf3f94dbb2832e43805c7533d6b5f8714b7398ef (diff) |
soc/intel/meteorlake: Set max Pkg C-states to Auto
This patch configures max Pkg C-state to Auto which limits the max
C-state to deep C-state.
Port of commit af42906efa72 ("soc/intel/alderlake: Set max Pkg C-states
to Auto")
BUG=none
TEST=Boot to the OS on Google/Rex.
Snippet from FSP log:
[SPEW ] PkgCStateLimit : 0xFF
Signed-off-by: Kapil Porwal <kapilporwal@google.com>
Change-Id: Ic403ab83a594b04920d5cf600432939687a2598b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/71653
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Diffstat (limited to 'src/soc/intel/meteorlake')
-rw-r--r-- | src/soc/intel/meteorlake/chip.h | 19 | ||||
-rw-r--r-- | src/soc/intel/meteorlake/fsp_params.c | 1 |
2 files changed, 20 insertions, 0 deletions
diff --git a/src/soc/intel/meteorlake/chip.h b/src/soc/intel/meteorlake/chip.h index 19b34a205d..ad382e3cf1 100644 --- a/src/soc/intel/meteorlake/chip.h +++ b/src/soc/intel/meteorlake/chip.h @@ -43,6 +43,25 @@ enum ddi_port_flags { DDI_ENABLE_HPD = 1 << 1, }; +/* + * The Max Pkg Cstate + * Values 0 - C0/C1, 1 - C2, 2 - C3, 3 - C6, 4 - C7, 5 - C7S, 6 - C8, 7 - C9, 8 - C10, + * 254 - CPU Default , 255 - Auto. + */ +enum pkgcstate_limit { + LIMIT_C0_C1 = 0, + LIMIT_C2 = 1, + LIMIT_C3 = 2, + LIMIT_C6 = 3, + LIMIT_C7 = 4, + LIMIT_C7S = 5, + LIMIT_C8 = 6, + LIMIT_C9 = 7, + LIMIT_C10 = 8, + LIMIT_CPUDEFAULT = 254, + LIMIT_AUTO = 255, +}; + /* Bit values for use in LpmStateEnableMask. */ enum lpm_state_mask { LPM_S0i2_0 = BIT(0), diff --git a/src/soc/intel/meteorlake/fsp_params.c b/src/soc/intel/meteorlake/fsp_params.c index 0cf221bd84..acf376b9c2 100644 --- a/src/soc/intel/meteorlake/fsp_params.c +++ b/src/soc/intel/meteorlake/fsp_params.c @@ -638,6 +638,7 @@ static void fill_fsps_misc_power_params(FSP_S_CONFIG *s_cfg, s_cfg->Hwp = 1; s_cfg->Cx = 1; s_cfg->PsOnEnable = 1; + s_cfg->PkgCStateLimit = LIMIT_AUTO; /* Enable the energy efficient turbo mode */ s_cfg->EnergyEfficientTurbo = 1; s_cfg->PmcLpmS0ixSubStateEnableMask = get_supported_lpm_mask(); |