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: