It seems like hw bug, but I think we should change PCI BAR probing and disable
the regions before probing and restore them later to original values, same as
U-boot does.
One question about the following snippet, though:
+ /* disable I/O and memory decode, or it freezes PCI bus during BAR
sizing */
+ tmp = pci_read_config8(dev, PCI_COMMAND);
+ tmp &= ~0x3;
+ pci_write_config8(dev, PCI_COMMAND, tmp);
AFAICS that's a workaround for a hardware bug (more explanations in code
comments welcome). Do you reenable I/O and memory decode after BAR sizing?
Nope, because integrated VGA has no other then legacy ports. Second reason is
that if there would be some IO resources, the set resources would enable the
bridge anyway.
Thanks,
Rudolf
--
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot