summaryrefslogtreecommitdiff
path: root/src/soc
diff options
context:
space:
mode:
Diffstat (limited to 'src/soc')
-rw-r--r--src/soc/intel/meteorlake/chip.h3
-rw-r--r--src/soc/intel/meteorlake/romstage/fsp_params.c5
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,