aboutsummaryrefslogtreecommitdiff
path: root/src/arch/x86/car.ld
diff options
context:
space:
mode:
authorJeremy Compostella <jeremy.compostella@intel.com>2022-12-01 15:45:51 -0700
committerSubrata Banik <subratabanik@google.com>2023-01-11 13:59:54 +0000
commit765e5df0dddbb12927dbcc8a8315ed4c99357984 (patch)
tree571327fd8ebbcb5aec26981ef01848cb97a29883 /src/arch/x86/car.ld
parentea2dbdba2e5a27d47fb3b7834951cff2e0f40628 (diff)
drivers/intel/gma: Hook up libgfxinit in romstage
A mainboard port needs to: - select `CONFIG_MAINBOARD_HAS_EARLY_LIBGFXINIT' - implement the Ada package `GMA.Mainboard' with a single function `ports' that returns a list of ports to be probed for displays. - set the desired `GFX_GMA_DEFAULT_MMIO' IO memory address to use in romstage (and ramstage) for the graphic device. BUG=b:252792591 BRANCH=firmware-brya-14505.B TEST=libgfxinit compiles in romstage. libgfxinit successfully executes in romstage and ramstage using the requested MMIO setting on skolas. Change-Id: I3c2101de10dc5df54fe873e43bbe0f1c4dccff44 Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/70276 Reviewed-by: Tarun Tuli <taruntuli@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/arch/x86/car.ld')
-rw-r--r--src/arch/x86/car.ld7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/arch/x86/car.ld b/src/arch/x86/car.ld
index dc075c6801..87e3dbc849 100644
--- a/src/arch/x86/car.ld
+++ b/src/arch/x86/car.ld
@@ -73,6 +73,13 @@
#if CONFIG(ROMSTAGE_LIBHWBASE)
*(.data.hw__*_E)
#endif
+#if CONFIG(EARLY_GFX_GMA)
+ *(.data.gma*_E)
+ /* libgfxinit uses a boolean variable to track its initialization
+ * state. Since the initial value is False it can safely be placed in
+ * the _bss region. */
+ *(.data.hw__gfx__gma__initialized)
+#endif
. = ALIGN(ARCH_POINTER_ALIGN_SIZE);
_ebss = .;
RECORD_SIZE(bss)