diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/soc/intel/meteorlake/chip.h | 3 | ||||
-rw-r--r-- | src/soc/intel/meteorlake/romstage/fsp_params.c | 5 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/soc/intel/meteorlake/chip.h b/src/soc/intel/meteorlake/chip.h index 6210406fc9..1e75019eab 100644 --- a/src/soc/intel/meteorlake/chip.h +++ b/src/soc/intel/meteorlake/chip.h @@ -448,6 +448,9 @@ struct soc_intel_meteorlake_config { * Set this to 1 in order to reduce BasicMemoryTest size */ bool lower_basic_mem_test_size; + + /* Platform Power Pmax in Watts. Zero means automatic. */ + uint16_t psys_pmax_watts; }; typedef struct soc_intel_meteorlake_config config_t; diff --git a/src/soc/intel/meteorlake/romstage/fsp_params.c b/src/soc/intel/meteorlake/romstage/fsp_params.c index d53a0d4da0..2d8a6c77a0 100644 --- a/src/soc/intel/meteorlake/romstage/fsp_params.c +++ b/src/soc/intel/meteorlake/romstage/fsp_params.c @@ -257,6 +257,11 @@ static void fill_fspm_misc_params(FSP_M_CONFIG *m_cfg, m_cfg->SkipMbpHob = !CONFIG(FSP_PUBLISH_MBP_HOB); m_cfg->SkipExtGfxScan = config->skip_ext_gfx_scan; + + /* Set PsysPmax if it is available in DT. + PsysPmax is in unit of 1/8 Watt */ + if (config->psys_pmax_watts) + m_cfg->PsysPmax = config->psys_pmax_watts * 8; } static void fill_fspm_audio_params(FSP_M_CONFIG *m_cfg, |