aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/soc/intel/broadwell/igd.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/soc/intel/broadwell/igd.c b/src/soc/intel/broadwell/igd.c
index 38189ddeeb..4257ff3cf7 100644
--- a/src/soc/intel/broadwell/igd.c
+++ b/src/soc/intel/broadwell/igd.c
@@ -530,6 +530,15 @@ static void igd_init(struct device *dev)
reg_script_run_on_dev(dev, haswell_late_init_script);
}
+ if (gfx_get_init_done()) {
+ /*
+ * Work around VBIOS issue that is not clearing first 64
+ * bytes of the framebuffer during VBE mode set.
+ */
+ struct resource *fb = find_resource(dev, PCI_BASE_ADDRESS_2);
+ memset((void *)((u32)fb->base), 0, 64);
+ }
+
if (!gfx_get_init_done() && acpi_slp_type != 3) {
/*
* Enable DDI-A if the Option ROM did not execute: