Subject: [PATCH] bios: Use the correct mask to size the PCI option ROM BAR From: Alex Williamson Bit 0 is the enable bit, which we not only don't want to set, but it will stick and make us think it's an I/O port resource. Signed-off-by: Alex Williamson Signed-off-by: Anthony Liguori --- diff --git a/bios/rombios32.c b/bios/rombios32.c index d7e18e9..f861f81 100644 --- a/bios/rombios32.c +++ b/bios/rombios32.c @@ -985,11 +985,13 @@ static void pci_bios_init_device(PCIDevice *d) int ofs; uint32_t val, size ; - if (i == PCI_ROM_SLOT) + if (i == PCI_ROM_SLOT) { ofs = 0x30; - else + pci_config_writel(d, ofs, 0xfffffffe); + } else { ofs = 0x10 + i * 4; - pci_config_writel(d, ofs, 0xffffffff); + pci_config_writel(d, ofs, 0xffffffff); + } val = pci_config_readl(d, ofs); if (val != 0) { size = (~(val & ~0xf)) + 1;