summaryrefslogtreecommitdiff
path: root/src/soc
diff options
context:
space:
mode:
authorSubrata Banik <subratabanik@google.com>2023-09-02 00:53:54 +0530
committerSubrata Banik <subratabanik@google.com>2023-09-02 14:42:19 +0000
commit96f7bd13180f284ae0dd700f3bd73a6b61139846 (patch)
tree1d27815b9df515d053dfb5323726148c333ee63f /src/soc
parent2aeb6e405aea8740f87185158598f2af50390904 (diff)
soc/intel/meteorlake: Fix black screen after booting to OS
This patch ensures that the VR configuration for IA, SA, and GFX is properly initialized, assigning zero values to VR causes a black screen (no display) issue. Problem Statement: Override CEP (Current Excursion Protection) value with zero aka set to disable results into black screen issue (no display). Solution: Keep CEP default enabled and don't override w/ zero value. w/o this patch: [SPEW ] CPU_POWER_MGMT_VR_CONFIG : CepEnable[0] : 0x0 [SPEW ] CPU_POWER_MGMT_VR_CONFIG : CepEnable[1] : 0x0 [SPEW ] CPU_POWER_MGMT_VR_CONFIG : CepEnable[2] : 0x0 w/ this patch: [SPEW ] CPU_POWER_MGMT_VR_CONFIG : CepEnable[0] : 0x1 [SPEW ] CPU_POWER_MGMT_VR_CONFIG : CepEnable[1] : 0x1 [SPEW ] CPU_POWER_MGMT_VR_CONFIG : CepEnable[2] : 0x1 Change-Id: I8908e8b6c995390b559212d456db6ddf984448a3 Signed-off-by: Subrata Banik <subratabanik@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/77611 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Eran Mitrani <mitrani@google.com> Reviewed-by: Nick Vaccaro <nvaccaro@google.com>
Diffstat (limited to 'src/soc')
-rw-r--r--src/soc/intel/meteorlake/romstage/fsp_params.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/soc/intel/meteorlake/romstage/fsp_params.c b/src/soc/intel/meteorlake/romstage/fsp_params.c
index bb5b6e7d97..36aa11e623 100644
--- a/src/soc/intel/meteorlake/romstage/fsp_params.c
+++ b/src/soc/intel/meteorlake/romstage/fsp_params.c
@@ -229,11 +229,12 @@ static void fill_fspm_vr_config_params(FSP_M_CONFIG *m_cfg,
{
/* FastVmode Settings for VR domains */
for (size_t domain = 0; domain < NUM_VR_DOMAINS; domain++) {
- m_cfg->CepEnable[domain] = config->cep_enable[domain];
- if (m_cfg->CepEnable[domain]) {
- m_cfg->EnableFastVmode[domain] = config->enable_fast_vmode[domain];
- if (m_cfg->EnableFastVmode[domain])
+ if (config->cep_enable[domain]) {
+ m_cfg->CepEnable[domain] = config->cep_enable[domain];
+ if (config->enable_fast_vmode[domain]) {
+ m_cfg->EnableFastVmode[domain] = config->enable_fast_vmode[domain];
m_cfg->IccLimit[domain] = config->fast_vmode_i_trip[domain];
+ }
}
}
}