From 9ab1c106c3ec88adfefc0dfe237e538e33f2750d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ky=C3=B6sti=20M=C3=A4lkki?= Date: Sun, 22 Dec 2013 00:22:49 +0200 Subject: [PATCH] device: Conditionally bypass oprom execution MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Builds with CHROMEOS can bypass VGA oprom when boot is not in developer or recovery modes. Have the same functionality available without CHROMEOS but with BOOTMODE_STRAPS. Change-Id: I97644364305dc05aad78a744599476ccc58db163 Signed-off-by: Kyösti Mälkki Reviewed-on: http://review.coreboot.org/5595 Tested-by: build bot (Jenkins) Reviewed-by: Paul Menzel Reviewed-by: Aaron Durbin --- src/device/pci_device.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/src/device/pci_device.c b/src/device/pci_device.c index dfc08987e7..f09fcaa8de 100644 --- a/src/device/pci_device.c +++ b/src/device/pci_device.c @@ -669,20 +669,18 @@ static int should_run_oprom(struct device *dev) if (should_run >= 0) return should_run; -#if CONFIG_CHROMEOS - /* In ChromeOS we want to boot blazingly fast. Therefore - * we don't run (VGA) option ROMs, unless we have to print + /* Don't run VGA option ROMs, unless we have to print * something on the screen before the kernel is loaded. */ - if (!developer_mode_enabled() && !recovery_mode_enabled() && - !vboot_wants_oprom()) { - printk(BIOS_DEBUG, "Not running VGA Option ROM\n"); - should_run = 0; - return should_run; - } -#endif - should_run = 1; + should_run = !IS_ENABLED(CONFIG_BOOTMODE_STRAPS) || + developer_mode_enabled() || recovery_mode_enabled(); +#if CONFIG_CHROMEOS + if (!should_run) + should_run = vboot_wants_oprom(); +#endif + if (!should_run) + printk(BIOS_DEBUG, "Not running VGA Option ROM\n"); return should_run; }