device: Conditionally bypass oprom execution
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 <kyosti.malkki@gmail.com>
Reviewed-on: http://review.coreboot.org/5595
Tested-by: build bot (Jenkins)
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Aaron Durbin <adurbin@google.com>
diff --git a/src/device/pci_device.c b/src/device/pci_device.c
index dfc0898..f09fcaa 100644
--- a/src/device/pci_device.c
+++ b/src/device/pci_device.c
@@ -669,20 +669,18 @@
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;
}