aboutsummaryrefslogtreecommitdiff
path: root/src/devices/pci_device.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/pci_device.c')
-rw-r--r--src/devices/pci_device.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/devices/pci_device.c b/src/devices/pci_device.c
index 7fa738448d..94f68ea1ab 100644
--- a/src/devices/pci_device.c
+++ b/src/devices/pci_device.c
@@ -656,6 +656,10 @@ void pci_dev_set_subsystem(struct device *dev, unsigned vendor, unsigned device)
((device & 0xffff) << 16) | (vendor & 0xffff));
}
+#if CONFIG_CHROMEOS
+int oprom_is_loaded = 0;
+#endif
+
/** Default handler: only runs the relevant PCI BIOS. */
void pci_dev_init(struct device *dev)
{
@@ -675,8 +679,11 @@ void pci_dev_init(struct device *dev)
* we 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())
+ if (!developer_mode_enabled() && !recovery_mode_enabled() &&
+ !vboot_wants_oprom()) {
+ printk(BIOS_DEBUG, "Not loading VGA Option ROM\n");
return;
+ }
#endif
rom = pci_rom_probe(dev);
@@ -696,6 +703,10 @@ void pci_dev_init(struct device *dev)
return;
#endif
run_bios(dev, (unsigned long)ram);
+#if CONFIG_CHROMEOS
+ oprom_is_loaded = 1;
+ printk(BIOS_DEBUG, "VGA Option ROM has been loaded\n");
+#endif
#endif /* CONFIG_PCI_ROM_RUN || CONFIG_VGA_ROM_RUN */
}