diff options
Diffstat (limited to 'src/soc/intel')
-rw-r--r-- | src/soc/intel/apollolake/chip.c | 7 | ||||
-rw-r--r-- | src/soc/intel/apollolake/chip.h | 6 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/soc/intel/apollolake/chip.c b/src/soc/intel/apollolake/chip.c index 9ee6dbb96d..e6904da75f 100644 --- a/src/soc/intel/apollolake/chip.c +++ b/src/soc/intel/apollolake/chip.c @@ -567,6 +567,13 @@ static void glk_fsp_silicon_init_params_cb( * has set up. Hence skipping in FSP. */ silconfig->SkipSpiPCP = 1; + + /* + * FSP provides UPD interface to execute IPC command. In order to + * improve boot performance, configure PmicPmcIpcCtrl for PMC to program + * PMIC PCH_PWROK delay. + */ + silconfig->PmicPmcIpcCtrl = cfg->PmicPmcIpcCtrl; #endif } diff --git a/src/soc/intel/apollolake/chip.h b/src/soc/intel/apollolake/chip.h index 8ad622f684..202f2acf1e 100644 --- a/src/soc/intel/apollolake/chip.h +++ b/src/soc/intel/apollolake/chip.h @@ -156,6 +156,12 @@ struct soc_intel_apollolake_config { * (1) Power * (2) Power & Performance */ enum pnp_settings pnp_settings; + + /* PMIC PCH_PWROK delay configuration - IPC Configuration + * Upd for changing PCH_PWROK delay configuration : I2C_Slave_Address + * (31:24) + Register_Offset (23:16) + OR Value (15:8) + AND Value (7:0) + */ + uint32_t PmicPmcIpcCtrl; }; typedef struct soc_intel_apollolake_config config_t; |