diff mbox

[05/14] pcbios: rombios32: make pci memory space assignment 64bit aware.

Message ID 1254305929-14993-6-git-send-email-yamahata@valinux.co.jp
State Superseded
Headers show

Commit Message

Isaku Yamahata Sept. 30, 2009, 10:18 a.m. UTC
make pci memory space assignment 64bit aware.
This patch is preparation for q35 chipset initialization which
has 64bit bar.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
---
 rombios32.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)
diff mbox

Patch

diff --git a/rombios32.c b/rombios32.c
index 624f39f..19d3579 100644
--- a/rombios32.c
+++ b/rombios32.c
@@ -681,6 +681,9 @@  void smp_probe(void)
 
 #define PCI_ADDRESS_SPACE_MEM		0x00
 #define PCI_ADDRESS_SPACE_IO		0x01
+#define PCI_ADDRESS_SPACE_TYPE_MASK	0x06
+#define PCI_ADDRESS_SPACE_TYPE_32	0x00
+#define PCI_ADDRESS_SPACE_TYPE_64	0x04
 #define PCI_ADDRESS_SPACE_MEM_PREFETCH	0x08
 
 #define PCI_ROM_SLOT 6
@@ -1012,6 +1015,13 @@  static void pci_bios_init_device(PCIDevice *d)
                 pci_set_io_region_addr(d, i, *paddr);
                 *paddr += size;
             }
+
+            /* 64bit bar */
+            if (!(val & PCI_ADDRESS_SPACE_IO) &&
+                (val & PCI_ADDRESS_SPACE_TYPE_MASK) ==
+                PCI_ADDRESS_SPACE_TYPE_64) {
+                i++;
+            }
         }
         break;
     }