X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=src%2Fdevices%2Fpci_device.c;h=f54e2620bf78c6e6564cf14523bb4a54d587881b;hb=35e912cef3aac245202694736281aa8475e977f1;hp=0a870b84cfe63ee5e57e24a0ec1f122be34853fe;hpb=0a50084e4d7535c5eb86dc3bf18c357eec4aa69a;p=coreboot.git diff --git a/src/devices/pci_device.c b/src/devices/pci_device.c index 0a870b84c..f54e2620b 100644 --- a/src/devices/pci_device.c +++ b/src/devices/pci_device.c @@ -54,6 +54,9 @@ #if CONFIG_HAVE_ACPI_RESUME && !CONFIG_S3_VGA_ROM_RUN #include #endif +#if CONFIG_CHROMEOS +#include +#endif u8 pci_moving_config8(struct device *dev, unsigned int reg) { @@ -667,6 +670,15 @@ void pci_dev_init(struct device *dev) ((dev->class >> 8) == PCI_CLASS_DISPLAY_VGA)) return; +#if CONFIG_CHROMEOS + /* In ChromeOS we want to boot blazingly fast. Therefore + * 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()) + return; +#endif + rom = pci_rom_probe(dev); if (rom == NULL) return; @@ -1043,7 +1055,7 @@ unsigned int pci_scan_bus(struct bus *bus, unsigned min_devfn, "devfn %x\n", min_devfn, max_devfn); printk(BIOS_ERR, "PCI: pci_scan_bus upper limit too big. " "Using 0xff.\n"); - max_devfn=0xff; + max_devfn=0x08; } old_devices = bus->children; @@ -1059,10 +1071,14 @@ unsigned int pci_scan_bus(struct bus *bus, unsigned min_devfn, struct device *dev; /* First thing setup the device structure. */ + printk(BIOS_INFO, "%s: before pci_scan_get_dev! devfn: %d\n", __func__, devfn); dev = pci_scan_get_dev(&old_devices, devfn); + printk(BIOS_INFO, "%s: after pci_scan_get_dev!\n", __func__); /* See if a device is present and setup the device structure. */ + printk(BIOS_INFO, "%s: before pci_probe_dev!\n", __func__); dev = pci_probe_dev(dev, bus, devfn); + printk(BIOS_INFO, "%s: after pci_probe_dev!\n", __func__); /* * If this is not a multi function device, or the device is