soc/intel/pantherlake: Fix fast_vmode_i_trip array indexing

Fix incorrect indexing for fast_vmode_i_trip arrays. This patch ensures
consistent SKU-based indexing across the VR configuration.

BUG=b:481561587
TEST=Verify VR parameters are correctly applied in FSP debug log

Change-Id: I532d9fc51d7d1342f2f0464f7aeacffe0b603267
Signed-off-by: Sowmya Aralguppe <sowmya.aralguppe@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/91002
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
Reviewed-by: Pranava Y N <pranavayn@google.com>
This commit is contained in:
Sowmya Aralguppe 2026-01-30 13:46:36 +05:30 committed by Matt DeVillier
commit 708b2b7779
2 changed files with 5 additions and 5 deletions

View file

@ -378,18 +378,18 @@ struct soc_intel_pantherlake_config {
* Fast Vmode I_TRIP Thresholds for VR Domains
*
* This two-dimensional array represents the Fast Vmode I_TRIP thresholds
* for various Voltage Regulator (VR) domains across different power limit
* configurations in Panther Lake SoCs.
* for various Voltage Regulator (VR) domains across different SKUs
* in Panther Lake SoCs.
*
* The Fast Vmode I_TRIP threshold is used to override the default current
* threshold settings, ensuring optimal power management by adapting to
* specific VR domain requirements under different power limit scenarios.
* specific VR domain requirements for each SKU's hardware capabilities.
*
* 0-255A in 1/4 A units. Example: 400 = 100A
* This setting overrides the default value set by FSPs when Fast VMode
* is enabled.
*/
uint16_t fast_vmode_i_trip[PTL_POWER_LIMITS_COUNT][NUM_VR_DOMAINS];
uint16_t fast_vmode_i_trip[MAX_PTL_SKUS][NUM_VR_DOMAINS];
/*
* Power state current threshold 1.

View file

@ -348,7 +348,7 @@ static void fill_fspm_vr_config_params(FSP_M_CONFIG *m_cfg,
m_cfg->CepEnable[i] = config->cep_enable[i];
if (config->enable_fast_vmode[i]) {
m_cfg->EnableFastVmode[i] = config->enable_fast_vmode[i];
m_cfg->IccLimit[i] = config->fast_vmode_i_trip[map->limits][i];
m_cfg->IccLimit[i] = config->fast_vmode_i_trip[map->sku][i];
}
}