[coreboot-gerrit] New patch to review for coreboot: intel/fsp1_1: Fix for passing VBT when vboot requests it

Patrick Georgi (pgeorgi@google.com) gerrit at coreboot.org
Thu Jan 21 09:24:20 CET 2016


Patrick Georgi (pgeorgi at google.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/13074

-gerrit

commit 6231a15ebda798f2c9cde2457b33be9ca0d515e9
Author: Duncan Laurie <dlaurie at chromium.org>
Date:   Wed Jan 20 13:21:32 2016 -0800

    intel/fsp1_1: Fix for passing VBT when vboot requests it
    
    In order to support vboot requesting graphics support in normal
    mode the VBT needs to be passed to FSP when it is requested
    outside of the usual developer/recovery path.
    
    To make this integrate cleaner use the generic bootmode provided
    display_init_required() function instead.  Also have it print a
    message indicating when it does not pass VBT to GOP so it is
    easier to see what happened in the console logs.
    
    BUG=chrome-os-partner:49560
    BRANCH=glados
    TEST=Enable EC_SLOW_UPDATE on chell and test that when vboot
    requests graphics support in normal mode FSP will get passed VBT
    and bring up the panel.
    
    Change-Id: I07bc54d37d687134b21baa60b5c278b5041241cf
    Signed-off-by: Patrick Georgi <pgeorgi at chromium.org>
    Original-Commit-Id: 41efd322951b8f3a8a687944832bfd89fd3014ca
    Original-Change-Id: I1b68760eabbf3af1d962cb2a3199e504a7852042
    Original-Signed-off-by: Duncan Laurie <dlaurie at chromium.org>
    Original-Reviewed-on: https://chromium-review.googlesource.com/322782
    Original-Reviewed-by: Aaron Durbin <adurbin at chromium.org>
---
 src/drivers/intel/fsp1_1/vbt.c | 25 ++++++++++---------------
 1 file changed, 10 insertions(+), 15 deletions(-)

diff --git a/src/drivers/intel/fsp1_1/vbt.c b/src/drivers/intel/fsp1_1/vbt.c
index 2f8f7e2..414b88d 100644
--- a/src/drivers/intel/fsp1_1/vbt.c
+++ b/src/drivers/intel/fsp1_1/vbt.c
@@ -14,34 +14,29 @@
  * GNU General Public License for more details.
  */
 
-#include <cbfs.h>
+#include <bootmode.h>
 #include <console/console.h>
 #include <fsp/ramstage.h>
 #include <fsp/util.h>
-#include <lib.h>
-#include <string.h>
-#include <vendorcode/google/chromeos/chromeos.h>
 
 /* Locate VBT and pass it to FSP GOP */
 void load_vbt(uint8_t s3_resume, SILICON_INIT_UPD *params)
 {
-	const optionrom_vbt_t *vbt_data;
+	const optionrom_vbt_t *vbt_data = NULL;
 	uint32_t vbt_len;
 
 	/* Check boot mode - for S3 resume path VBT loading is not needed */
 	if (s3_resume) {
-		vbt_data = NULL;
 		printk(BIOS_DEBUG, "S3 resume do not pass VBT to GOP\n");
+	} else if (display_init_required()) {
+		/* Get VBT data */
+		vbt_data = fsp_get_vbt(&vbt_len);
+		if (vbt_data != NULL)
+			printk(BIOS_DEBUG, "Passing VBT to GOP\n");
+		else
+			printk(BIOS_DEBUG, "VBT not found!\n");
 	} else {
-		if (developer_mode_enabled() || recovery_mode_enabled()) {
-			/* Get VBT data */
-			vbt_data = fsp_get_vbt(&vbt_len);
-			if (vbt_data != NULL)
-				printk(BIOS_DEBUG, "Passing VBT to GOP\n");
-			else
-				printk(BIOS_DEBUG, "VBT not found!\n");
-		} else
-			vbt_data = NULL;
+		printk(BIOS_DEBUG, "Not passing VBT to GOP\n");
 	}
 	params->GraphicsConfigPtr = (u32)vbt_data;
 }



More information about the coreboot-gerrit mailing list