soc/braswell: ensure ACPI opregion restored on S3 with GOP init
The Intel GMA ACPI opregion address needs to be set on S3 resume,
otherwise the Windows display driver fails to re-initialize correctly.
Fix by ensuring the address is set correctly regardless of display
init type used (GOP or VBIOS).
Test: build/boot on google/edgar, ensure internal display functional
following S3 resume under Windows 10.
Change-Id: I471c44e8ba4514e4a2ddf6739109b759145598ed
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/30233
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Rudolph <siro@das-labor.org>
diff --git a/src/soc/intel/braswell/Makefile.inc b/src/soc/intel/braswell/Makefile.inc
index ac1bacd..fabbc2b 100644
--- a/src/soc/intel/braswell/Makefile.inc
+++ b/src/soc/intel/braswell/Makefile.inc
@@ -22,9 +22,8 @@
ramstage-$(CONFIG_ELOG) += elog.c
ramstage-y += emmc.c
ramstage-y += gpio.c
-ifneq ($(CONFIG_RUN_FSP_GOP),y)
ramstage-y += gfx.c
-endif
+
ramstage-y += gpio_support.c
ramstage-y += hda.c
ramstage-y += iosf.c
diff --git a/src/soc/intel/braswell/gfx.c b/src/soc/intel/braswell/gfx.c
index 895d2ee..9417409 100644
--- a/src/soc/intel/braswell/gfx.c
+++ b/src/soc/intel/braswell/gfx.c
@@ -68,15 +68,16 @@
printk(BIOS_SPEW, "%s/%s (%s)\n",
__FILE__, __func__, dev_name(dev));
- /* Pre VBIOS Init */
- gfx_pre_vbios_init(dev);
+ if (!IS_ENABLED(CONFIG_RUN_FSP_GOP)) {
+ /* Pre VBIOS Init */
+ gfx_pre_vbios_init(dev);
- /* Run VBIOS */
- pci_dev_init(dev);
+ /* Run VBIOS */
+ pci_dev_init(dev);
- /* Post VBIOS Init */
- gfx_post_vbios_init(dev);
-
+ /* Post VBIOS Init */
+ gfx_post_vbios_init(dev);
+ }
intel_gma_restore_opregion();
}