coreboot-kgpe-d16/src/mainboard
Duncan Laurie 1a1f00cf41 mb/google/sarien: Setup GPIOs again after FSP-S
Currently CoffeeLake FSP is incorrectly modifying GPIO pad configuration
if specific UPD variables are not set as it expects.

This affects the display-related SOC pads with the following UPD variables:

UINT8 DdiPortBHpd; // GPP_E13
UINT8 DdiPortCHpd; // GPP_E14
UINT8 DdiPortDHpd; // GPP_E15
UINT8 DdiPortFHpd; // GPP_E16
UINT8 DdiPortBDdc; // GPP_E18/GPP_E19
UINT8 DdiPortCDdc; // GPP_E20/GPP_E21
UINT8 DdiPortDDdc; // GPP_E22/GPP_E23
UINT8 DdiPortFDdc; // GPP_H16/GPP_H17

Until FSP is fixed to not touch the pad configuration this workaround
will reprogram the GPIO settings after FSP-S step so they are correct
when the OS attempts to use them.

This was found in CoffeLake FSP Gold release:
https://github.com/IntelFsp/FSP/tree/master/CoffeeLakeFspBinPkg

As well as the current top-of-tree for the FSP sources.

BUG=b:120686247,chromium:913216
TEST=verify correct GPIO configuration for GPP_E group in the kernel

Change-Id: I19550c4347cf65d409de6a8638619270372c4d0a
Signed-off-by: Duncan Laurie <dlaurie@google.com>
Reviewed-on: https://review.coreboot.org/c/30113
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Lijian Zhao <lijian.zhao@intel.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2018-12-10 08:53:57 +00:00
..
adi cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
adlink
advansus mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
amd soc/amd/stoneyridge: Name IO061 in ASL appropriately 2018-12-05 14:06:32 +00:00
aopen mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
apple cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
asrock sb/intel/lynxpoint: Move HAVE_SMI_HANDLER to southbridge Kconfig 2018-12-03 13:14:26 +00:00
asus mb/asus/am1i-a: add missing GPIO IO ports 2018-12-03 13:20:51 +00:00
avalue mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
bap mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
biostar mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
cavium src: Get rid of duplicated includes 2018-11-16 09:50:03 +00:00
compulab cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
cubietech {mb/cubieboard,soc/intel/quark}: Remove define __SIMPLE_DEVICE__ 2018-11-29 12:20:16 +00:00
elmex mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
emulation mb/emulation/spike-riscv: Implement mtime_init 2018-12-05 13:36:26 +00:00
esd cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
facebook mb: Set coreboot as DSDT's manufacturer model ID 2018-11-23 11:00:40 +00:00
foxconn mb: Set coreboot as DSDT's manufacturer model ID 2018-11-23 11:00:40 +00:00
getac mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
gigabyte cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
gizmosphere mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
google mb/google/sarien: Setup GPIOs again after FSP-S 2018-12-10 08:53:57 +00:00
hp cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
ibase mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
iei mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
intel sb/intel/lynxpoint: Move HAVE_SMI_HANDLER to southbridge Kconfig 2018-12-03 13:14:26 +00:00
jetway mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
kontron cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
lenovo mainboard/lenovo/t430s: Add ThinkPad T431s as a variant 2018-12-07 11:20:53 +00:00
lippert mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
msi mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
ocp mb: Set coreboot as DSDT's manufacturer model ID 2018-11-23 11:00:40 +00:00
opencellular mb/opencellular/elgon: Enable write protection 2018-12-04 07:11:56 +00:00
packardbell sb/intel/common: Create a common PCH finalise implementation 2018-12-03 13:14:06 +00:00
pcengines src/mb/pcengines/apu2/mainboard.c: Fix retrieving serial number 2018-12-03 13:03:32 +00:00
purism cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
roda cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
samsung cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
sapphire cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
scaleway cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
siemens cpu/intel/common: Use a common acpi/cpu.asl file 2018-11-30 22:02:35 +00:00
sifive mb/sifive/hifive-unleashed: Use if (IS_ENABLED(...)) 2018-12-03 13:19:38 +00:00
supermicro mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
ti mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
tyan mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
via mb/*/*/Kconfig: Remove useless comment 2018-11-28 13:53:51 +00:00
Kconfig src/mainboard/Kconfig: Add support for 10240 KiB ROM chips 2017-10-05 17:53:16 +00:00