[coreboot-gerrit] Change in coreboot[master]: drivers/fsp1_1: decouple VBT from execution of GOP driver

Matt DeVillier (Code Review) gerrit at coreboot.org
Wed Jun 14 00:08:08 CEST 2017


Matt DeVillier has uploaded this change for review. ( https://review.coreboot.org/20210


Change subject: drivers/fsp1_1: decouple VBT from execution of GOP driver
......................................................................

drivers/fsp1_1: decouple VBT from execution of GOP driver

Commit 2e7f6cc introduced the 'no graphics init' option for
FSP 1.1 SoCs using a GOP driver to init the display, but selecting
that option breaks compilation for Braswell and Skylake devices
because the VBT and GOP driver are intertwined.

This patch decouples the VBT from the GOP driver execution,
allowing the 'no graphics init' option to compile (and work)
properly.

Change-Id: Ifbcf32805177c290c4781b32bbcca679bcb0c297
Signed-off-by: Matt DeVillier <matt.devillier at gmail.com>
---
M src/drivers/intel/fsp1_1/Makefile.inc
M src/drivers/intel/fsp1_1/fsp_gop.c
M src/drivers/intel/fsp1_1/vbt.c
3 files changed, 40 insertions(+), 40 deletions(-)



  git pull ssh://review.coreboot.org:29418/coreboot refs/changes/10/20210/1

diff --git a/src/drivers/intel/fsp1_1/Makefile.inc b/src/drivers/intel/fsp1_1/Makefile.inc
index d0e2856..22d24ee 100644
--- a/src/drivers/intel/fsp1_1/Makefile.inc
+++ b/src/drivers/intel/fsp1_1/Makefile.inc
@@ -38,7 +38,7 @@
 ramstage-y += hob.c
 ramstage-y += ramstage.c
 ramstage-y += stage_cache.c
-ramstage-$(CONFIG_RUN_FSP_GOP) += vbt.c
+ramstage-$(CONFIG_ADD_VBT_DATA_FILE) += vbt.c
 ramstage-$(CONFIG_MMA) += mma_core.c
 
 CPPFLAGS_common += -Isrc/drivers/intel/fsp1_1/include
diff --git a/src/drivers/intel/fsp1_1/fsp_gop.c b/src/drivers/intel/fsp1_1/fsp_gop.c
index dd19014..c5aae5c 100644
--- a/src/drivers/intel/fsp1_1/fsp_gop.c
+++ b/src/drivers/intel/fsp1_1/fsp_gop.c
@@ -14,48 +14,9 @@
  */
 
 #include <boot/coreboot_tables.h>
-#include <cbfs.h>
 #include <console/console.h>
 #include <fsp/util.h>
 #include <lib.h>
-
-/* Reading VBT table from flash */
-const optionrom_vbt_t *fsp_get_vbt(uint32_t *vbt_len)
-{
-	size_t vbt_size;
-	union {
-		const optionrom_vbt_t *data;
-		uint32_t *signature;
-	} vbt;
-
-	/* Locate the vbt file in cbfs */
-	vbt.data = cbfs_boot_map_with_leak("vbt.bin", CBFS_TYPE_RAW, &vbt_size);
-	if (!vbt.data) {
-		printk(BIOS_INFO,
-			"FSP_INFO: VBT data file (vbt.bin) not found in CBFS");
-		return NULL;
-	}
-
-	/* Validate the vbt file */
-	if (*vbt.signature != VBT_SIGNATURE) {
-		printk(BIOS_WARNING,
-			"FSP_WARNING: Invalid signature in VBT data file (vbt.bin)!\n");
-		return NULL;
-	}
-	*vbt_len = vbt_size;
-	printk(BIOS_DEBUG, "FSP_INFO: VBT found at %p, 0x%08x bytes\n",
-		vbt.data, *vbt_len);
-
-#if IS_ENABLED(CONFIG_DISPLAY_VBT)
-	/* Display the vbt file contents */
-	printk(BIOS_DEBUG, "VBT Data:\n");
-	hexdump(vbt.data, *vbt_len);
-	printk(BIOS_DEBUG, "\n");
-#endif
-
-	/* Return the pointer to the vbt file data */
-	return vbt.data;
-}
 
 int fill_lb_framebuffer(struct lb_framebuffer *framebuffer)
 {
diff --git a/src/drivers/intel/fsp1_1/vbt.c b/src/drivers/intel/fsp1_1/vbt.c
index 414b88d..5cac150 100644
--- a/src/drivers/intel/fsp1_1/vbt.c
+++ b/src/drivers/intel/fsp1_1/vbt.c
@@ -15,10 +15,49 @@
  */
 
 #include <bootmode.h>
+#include <cbfs.h>
 #include <console/console.h>
 #include <fsp/ramstage.h>
 #include <fsp/util.h>
 
+/* Reading VBT table from flash */
+const optionrom_vbt_t *fsp_get_vbt(uint32_t *vbt_len)
+{
+	size_t vbt_size;
+	union {
+		const optionrom_vbt_t *data;
+		uint32_t *signature;
+	} vbt;
+
+	/* Locate the vbt file in cbfs */
+	vbt.data = cbfs_boot_map_with_leak("vbt.bin", CBFS_TYPE_RAW, &vbt_size);
+	if (!vbt.data) {
+		printk(BIOS_INFO,
+			"FSP_INFO: VBT data file (vbt.bin) not found in CBFS");
+		return NULL;
+	}
+
+	/* Validate the vbt file */
+	if (*vbt.signature != VBT_SIGNATURE) {
+		printk(BIOS_WARNING,
+			"FSP_WARNING: Invalid signature in VBT data file (vbt.bin)!\n");
+		return NULL;
+	}
+	*vbt_len = vbt_size;
+	printk(BIOS_DEBUG, "FSP_INFO: VBT found at %p, 0x%08x bytes\n",
+		vbt.data, *vbt_len);
+
+#if IS_ENABLED(CONFIG_DISPLAY_VBT)
+	/* Display the vbt file contents */
+	printk(BIOS_DEBUG, "VBT Data:\n");
+	hexdump(vbt.data, *vbt_len);
+	printk(BIOS_DEBUG, "\n");
+#endif
+
+	/* Return the pointer to the vbt file data */
+	return vbt.data;
+}
+
 /* Locate VBT and pass it to FSP GOP */
 void load_vbt(uint8_t s3_resume, SILICON_INIT_UPD *params)
 {

-- 
To view, visit https://review.coreboot.org/20210
To unsubscribe, visit https://review.coreboot.org/settings

Gerrit-Project: coreboot
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: Ifbcf32805177c290c4781b32bbcca679bcb0c297
Gerrit-Change-Number: 20210
Gerrit-PatchSet: 1
Gerrit-Owner: Matt DeVillier <matt.devillier at gmail.com>



More information about the coreboot-gerrit mailing list