Jérémy Compostella has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/70302 )
Change subject: cpu/intel/car/romstage: Clear graphics before exiting romstage ......................................................................
cpu/intel/car/romstage: Clear graphics before exiting romstage
Leaving the graphics configuration with the display on confuses the FSP GOP driver and can lead to undesired graphics artifacts.
This CL introduces the GRAPHICS_OFF_BEFORE_RAMSTAGE configuration flag to trigger graphic off procedure.
BUG=b:252792591 BRANCH=firmware-brya-14505.B TEST=TO-BE-COMPLETED
Change-Id: I31b6470478177938f988afe11febaadd165c4b52 Signed-off-by: Jeremy Compostella jeremy.compostella@intel.com --- M src/cpu/intel/car/romstage.c M src/device/Kconfig 2 files changed, 35 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/02/70302/1
diff --git a/src/cpu/intel/car/romstage.c b/src/cpu/intel/car/romstage.c index 7df512d..70948e9 100644 --- a/src/cpu/intel/car/romstage.c +++ b/src/cpu/intel/car/romstage.c @@ -6,6 +6,7 @@ #include <commonlib/helpers.h> #include <console/console.h> #include <cpu/x86/smm.h> +#include <intelblocks/early_graphics.h> #include <program_loading.h> #include <romstage_common.h> #include <security/vboot/vboot_common.h> @@ -65,6 +66,9 @@ if (CONFIG(SMM_TSEG)) smm_list_regions();
+ if (CONFIG(GRAPHICS_OFF_BEFORE_RAMSTAGE)) + early_graphics_stop(); + prepare_and_run_postcar(); /* We do not return here. */ } diff --git a/src/device/Kconfig b/src/device/Kconfig index b0000f6..2e0e529 100644 --- a/src/device/Kconfig +++ b/src/device/Kconfig @@ -146,6 +146,17 @@
endchoice
+config GRAPHICS_OFF_BEFORE_RAMSTAGE + bool "Turn off graphics before jumping to ramstage" + depends on MAINBOARD_USE_ROMSTAGE_LIBGFXINIT + default y if RUN_FSP_GOP + default n + help + Clear graphics configuration at the end of romstage. + Leaving graphic configuration performed by libgfxinit with + the display turned on confuses the FSP GOP driver and it can + lead to undesirable graphic artifacts. + config PRE_GRAPHICS_DELAY_MS int "Graphics initialization delay in ms" default 0