aboutsummaryrefslogtreecommitdiff
path: root/src/soc/intel/cannonlake/fsp_params.c
diff options
context:
space:
mode:
authorChristian Walter <christian.walter@9elements.com>2020-05-23 15:54:43 +0200
committerPatrick Rudolph <siro@das-labor.org>2020-06-02 09:39:19 +0000
commit061cd78a1aba4a31ee61dc6f6bafc3a35537cf3e (patch)
treea14c029aef936dd3028f21b911e56fc6d3102957 /src/soc/intel/cannonlake/fsp_params.c
parent1f572b9276ae3d20b37dbdb52e466ecfe5bbe06b (diff)
soc/intel/cannonlake: Add RP configuration settings
Add RP configuration settings like Advanced Error Reporting(AER), Latency Tolerence Reporting (LTR), Max Payload and Active State Power Management (ASPM). Tested on CFL platform Change-Id: Ifaf0cc86ea412ce246723613f99908946d89ccb0 Signed-off-by: Christian Walter <christian.walter@9elements.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/41679 Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/intel/cannonlake/fsp_params.c')
-rw-r--r--src/soc/intel/cannonlake/fsp_params.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/soc/intel/cannonlake/fsp_params.c b/src/soc/intel/cannonlake/fsp_params.c
index 8788838c3f..a3b5588b77 100644
--- a/src/soc/intel/cannonlake/fsp_params.c
+++ b/src/soc/intel/cannonlake/fsp_params.c
@@ -319,10 +319,22 @@ void platform_fsp_silicon_init_params_cb(FSPS_UPD *supd)
sizeof(config->PcieClkSrcUsage));
memcpy(params->PcieClkSrcClkReq, config->PcieClkSrcClkReq,
sizeof(config->PcieClkSrcClkReq));
+
+ memcpy(params->PcieRpAdvancedErrorReporting,
+ config->PcieRpAdvancedErrorReporting,
+ sizeof(params->PcieRpAdvancedErrorReporting));
+
memcpy(params->PcieRpLtrEnable, config->PcieRpLtrEnable,
sizeof(config->PcieRpLtrEnable));
memcpy(params->PcieRpHotPlug, config->PcieRpHotPlug,
- sizeof(config->PcieRpHotPlug));
+ sizeof(params->PcieRpHotPlug));
+
+ for (i = 0; i < CONFIG_MAX_ROOT_PORTS; i++) {
+ params->PcieRpMaxPayload[i] = config->PcieRpMaxPayload[i];
+ if (config->PcieRpAspm[i])
+ params->PcieRpAspm[i] = config->PcieRpAspm[i] - 1;
+ };
+
/* eMMC and SD */
dev = pcidev_path_on_root(PCH_DEVFN_EMMC);