+ if (rom_address == 0x00000000 || rom_address == 0xffffffff) {
+#if defined(CONFIG_BOARD_EMULATION_QEMU_X86) && CONFIG_BOARD_EMULATION_QEMU_X86
+ if ((dev->class >> 8) == PCI_CLASS_DISPLAY_VGA)
+ rom_address = 0xc0000;
+ else
+#endif
+ return NULL;
+ } else {
+ /* Enable expansion ROM address decoding. */
+ pci_write_config32(dev, PCI_ROM_ADDRESS,
+ rom_address|PCI_ROM_ADDRESS_ENABLE);
+ }
+
+ printk(BIOS_DEBUG, "On card, ROM address for %s = %lx\n",
+ dev_path(dev), (unsigned long)rom_address);
+ rom_header = (struct rom_header *)rom_address;