summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/soc/intel/skylake/chip.c9
-rw-r--r--src/soc/intel/skylake/chip.h4
-rw-r--r--src/soc/intel/skylake/chip_fsp20.c11
3 files changed, 16 insertions, 8 deletions
diff --git a/src/soc/intel/skylake/chip.c b/src/soc/intel/skylake/chip.c
index 92c3addf8a..9d9ca01d6d 100644
--- a/src/soc/intel/skylake/chip.c
+++ b/src/soc/intel/skylake/chip.c
@@ -159,8 +159,13 @@ void soc_silicon_init_params(SILICON_INIT_UPD *params)
params->LockDownConfigBiosLock = 0;
params->LockDownConfigSpiEiss = 0;
}
- params->PchConfigSubSystemVendorId = config->PchConfigSubSystemVendorId;
- params->PchConfigSubSystemId = config->PchConfigSubSystemId;
+ /* only replacing preexisting subsys ID defaults when non-zero */
+#if defined(CONFIG_SUBSYSTEM_VENDOR_ID) && CONFIG_SUBSYSTEM_VENDOR_ID
+ params->PchConfigSubSystemVendorId = CONFIG_SUBSYSTEM_VENDOR_ID;
+#endif
+#if defined(CONFIG_SUBSYSTEM_DEVICE_ID) && CONFIG_SUBSYSTEM_DEVICE_ID
+ params->PchConfigSubSystemId = CONFIG_SUBSYSTEM_DEVICE_ID;
+#endif
params->WakeConfigWolEnableOverride =
config->WakeConfigWolEnableOverride;
params->WakeConfigPcieWakeFromDeepSx =
diff --git a/src/soc/intel/skylake/chip.h b/src/soc/intel/skylake/chip.h
index a147d9234d..8e3c472db6 100644
--- a/src/soc/intel/skylake/chip.h
+++ b/src/soc/intel/skylake/chip.h
@@ -324,10 +324,6 @@ struct soc_intel_skylake_config {
* in the upper and and lower 128-byte bank of RTC RAM.
*/
u8 LockDownConfigRtcLock;
- /* Subsystem Vendor ID of the PCH devices*/
- u16 PchConfigSubSystemVendorId;
- /* Subsystem ID of the PCH devices*/
- u16 PchConfigSubSystemId;
/*
* Determine if WLAN wake from Sx, corresponds to the
diff --git a/src/soc/intel/skylake/chip_fsp20.c b/src/soc/intel/skylake/chip_fsp20.c
index f51559f2fb..d5f543302f 100644
--- a/src/soc/intel/skylake/chip_fsp20.c
+++ b/src/soc/intel/skylake/chip_fsp20.c
@@ -374,8 +374,15 @@ void platform_fsp_silicon_init_params_cb(FSPS_UPD *supd)
*/
params->SpiFlashCfgLockDown = 0;
}
- params->PchSubSystemVendorId = config->PchConfigSubSystemVendorId;
- params->PchSubSystemId = config->PchConfigSubSystemId;
+ /* only replacing preexisting subsys ID defaults when non-zero */
+#if defined(CONFIG_SUBSYSTEM_VENDOR_ID) && CONFIG_SUBSYSTEM_VENDOR_ID
+ params->DefaultSvid = CONFIG_SUBSYSTEM_VENDOR_ID;
+ params->PchSubSystemVendorId = CONFIG_SUBSYSTEM_VENDOR_ID;
+#endif
+#if defined(CONFIG_SUBSYSTEM_DEVICE_ID) && CONFIG_SUBSYSTEM_DEVICE_ID
+ params->DefaultSid = CONFIG_SUBSYSTEM_DEVICE_ID;
+ params->PchSubSystemId = CONFIG_SUBSYSTEM_DEVICE_ID;
+#endif
params->PchPmWolEnableOverride = config->WakeConfigWolEnableOverride;
params->PchPmPcieWakeFromDeepSx = config->WakeConfigPcieWakeFromDeepSx;
params->PchPmDeepSxPol = config->PmConfigDeepSxPol;