[coreboot] Broken VGA ROM init in QEMU

Myles Watson mylesgw at gmail.com
Thu Apr 24 22:02:18 CEST 2008


As of rev 657, the VGA ROM in QEMU doesn't get run.  Looking at the
code that was changed in device/pci_rom.c it looks like the problem is
that the VGA card is being treated like an onboard device, but the ROM
is not in the LAR.

Here's a snippet of the output from a working version (current head
but pci_rom.c at 656):

Phase 6: PCI: 00:02.0 init.
PCI: pci_dev_init
Probing for option ROM
ROM address for PCI: 00:02.0 = c0000
PCI Expansion ROM, signature 0xaa55, INIT size 0x8c00, data ptr 0x010f
PCI ROM Image, Vendor 1013, Device 00b8,
PCI ROM Image, Class Code 030000, Code Type 00
Copying VGA ROM image from 0x000c0000 to 0xc0000, 0x8c00 bytes
Phase 6: PCI: 00:03.0 init.
PCI: pci_dev_init
Probing for option ROM

Here's the same snippet from 665:

Phase 6: PCI: 00:02.0 init.
PCI: pci_dev_init
Probing for option ROM
LAR: Attempting to open 'pci1013,00b8.rom'.
LAR: Start 0xfffc0000 len 0x40000
LAR: seen member normal/option_table
LAR: seen member normal/initram/segment0
LAR: seen member normal/stage2/segment0
LAR: seen member normal/stage2/segment1
LAR: seen member normal/stage2/segment2
LAR: seen member normal/payload/segment0
LAR: seen member normal/payload/segment1
LAR: seen member normal/payload/segment2
LAR: seen member zerofill
LAR: seen member bootblock
LAR: File not found!
No option rom for onboard device.
Phase 6: PCI: 00:03.0 init.
PCI: pci_dev_init

Thanks,
Myles




More information about the coreboot mailing list