From 5d2b1e6e467d291b2aef9b192299692c5ad9c535 Mon Sep 17 00:00:00 2001 From: Sean Rhodes Date: Wed, 8 Jun 2022 12:29:01 +0100 Subject: soc/intel/apollolake: Let coreboot set the VendorID and Subsystem ID Set all FSP S UPDs that set IDs to 0, which allows them to be set by coreboot. Tested on StarLite Mk IV and LPC now has the correct device ID of 0x31e8, where previously it had 0x7270. The UPDs differ APL and GLK, but the ones configured in this patch have been there since their initial releases. Signed-off-by: Sean Rhodes Change-Id: I034c9dc9d81c4d775dfff0994c9a6be823689b1c Reviewed-on: https://review.coreboot.org/c/coreboot/+/65021 Tested-by: build bot (Jenkins) Reviewed-by: Nico Huber --- src/soc/intel/apollolake/chip.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/soc/intel/apollolake') diff --git a/src/soc/intel/apollolake/chip.c b/src/soc/intel/apollolake/chip.c index 40316a203d..bab39bb4b6 100644 --- a/src/soc/intel/apollolake/chip.c +++ b/src/soc/intel/apollolake/chip.c @@ -615,6 +615,11 @@ static void glk_fsp_silicon_init_params_cb( * Options to adjust PMIC Vdd2 voltage. */ silconfig->PmicVdd2Voltage = cfg->PmicVdd2Voltage; + + /* FSP should let coreboot set subsystem IDs, which are read/write-once */ + silconfig->SiSVID = 0; + silconfig->SiSSID = 0; + silconfig->HgSubSystemId = 0; #endif } @@ -724,6 +729,10 @@ void platform_fsp_silicon_init_params_cb(FSPS_UPD *silupd) bool use_8254 = get_uint_option("legacy_8254_timer", CONFIG(USE_LEGACY_8254_TIMER)); silconfig->Timer8254ClkSetting = use_8254; + /* FSP should let coreboot set subsystem IDs, which are read/write-once */ + silconfig->SubSystemVendorId = 0; + silconfig->SubSystemId = 0; + mainboard_silicon_init_params(silconfig); } -- cgit v1.2.3