summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJeremy Compostella <jeremy.compostella@intel.com>2023-01-05 12:59:02 -0700
committerSubrata Banik <subratabanik@google.com>2023-01-12 03:02:02 +0000
commitba2cef5b54938cce17871143ea9bbd3fc6868971 (patch)
treeaae0ad9eed78308006016148063e5346e2d89a08 /src
parent1f4d7c772e49b66133470cf3e854fb5771a9c900 (diff)
soc/intel/common/block/early_graphics: Introduce a 200 ms delay
It has been reported that the PEIM graphics driver may temporarily fail communication with the display if the time between libgfxinit turning off the displays and the PEIM driver initialization is too short. 200 ms has been identified as a safe delay. This is a temporary workaround and an investigation is in progress to come up with a better and long term solution. BUG=b:264526798 BRANCH=firmware-brya-14505.B TEST=Developer screen is systematically seen Change-Id: I4ea15123eed1a4355c5ff7d815925032d4151de1 Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/71656 Reviewed-by: Tarun Tuli <taruntuli@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src')
-rw-r--r--src/soc/intel/common/block/graphics/early_graphics.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/soc/intel/common/block/graphics/early_graphics.c b/src/soc/intel/common/block/graphics/early_graphics.c
index 6f6a421e81..3ae7697de3 100644
--- a/src/soc/intel/common/block/graphics/early_graphics.c
+++ b/src/soc/intel/common/block/graphics/early_graphics.c
@@ -1,5 +1,6 @@
/* SPDX-License-Identifier: GPL-2.0-or-later */
+#include <delay.h>
#include <device/pci.h>
#include <drivers/intel/gma/libgfxinit.h>
#include <intelblocks/early_graphics.h>
@@ -49,4 +50,20 @@ void early_graphics_stop(void)
return;
gma_gfxstop(&ret);
+
+ /*
+ * Temporary workaround
+ *
+ * It has been reported that the PEIM graphics driver may temporarily
+ * fail communication with the display if the time between libgfxinit
+ * turning off the displays and the PEIM driver initialization is too
+ * short. 200 ms has been identified as a safe delay.
+ *
+ * An investigation is in progress to come up with a better and long
+ * term solution.
+ *
+ * BUG:b:264526798
+ */
+ if (CONFIG(RUN_FSP_GOP))
+ mdelay(200);
}