bios: Use the correct mask to size the PCI option ROM BAR
authorAnthony Liguori <aliguori@us.ibm.com>
Fri, 22 May 2009 14:57:32 +0000 (09:57 -0500)
committerAnthony Liguori <aliguori@us.ibm.com>
Fri, 22 May 2009 15:50:37 +0000 (10:50 -0500)
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 <alex.williamson@hp.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>

pc-bios/bios-pq/0016-use-correct-mask-to-size-pci-option-rom-bar.patch [new file with mode: 0644]
pc-bios/bios-pq/series
pc-bios/bios.bin

diff --git a/pc-bios/bios-pq/0016-use-correct-mask-to-size-pci-option-rom-bar.patch b/pc-bios/bios-pq/0016-use-correct-mask-to-size-pci-option-rom-bar.patch
new file mode 100644 (file)
index 0000000..556a0bd
--- /dev/null
@@ -0,0 +1,33 @@
+Subject: [PATCH] bios: Use the correct mask to size the PCI option ROM BAR
+From:  Alex Williamson <alex.williamson@hp.com>
+
+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 <alex.williamson@hp.com>
+Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
+---
+
+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;
+
+
index aa5a375..c7c7f67 100644 (file)
@@ -13,3 +13,4 @@
 0013_fix-non-acpi-timer-interrupt-routing.patch
 0014_add-srat-acpi-table-support.patch
 0015_enable-power-button-even-generation.patch
+0016-use-correct-mask-to-size-pci-option-rom-bar.patch
index 8aa5b71..6c8bc9f 100644 (file)
Binary files a/pc-bios/bios.bin and b/pc-bios/bios.bin differ