summary refs log tree commit diff stats
path: root/hw/pci.c
diff options
context:
space:
mode:
authorIsaku Yamahata <yamahata@valinux.co.jp>2010-06-23 16:15:32 +0900
committerBlue Swirl <blauwirbel@gmail.com>2010-07-11 20:01:00 +0300
commit7c7b829e469d9ababc0a34ab2a033db965c57a50 (patch)
treea5444032f1bccde12d4da5e486eab6a745dbefb3 /hw/pci.c
parentfecb93c45c749a4c994d8d12bdee17ce2012de9e (diff)
downloadfocaccia-qemu-7c7b829e469d9ababc0a34ab2a033db965c57a50.tar.gz
focaccia-qemu-7c7b829e469d9ababc0a34ab2a033db965c57a50.zip
pci_bridge: make pci bridge aware of pci multi function bit.
make pci bridge aware of pci multi function property and let pci generic
code to set the bit.

Cc: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'hw/pci.c')
-rw-r--r--hw/pci.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/hw/pci.c b/hw/pci.c
index bbb14d3b0a..6d1cbb1778 100644
--- a/hw/pci.c
+++ b/hw/pci.c
@@ -1580,13 +1580,14 @@ static int pci_bridge_exitfn(PCIDevice *pci_dev)
     return 0;
 }
 
-PCIBus *pci_bridge_init(PCIBus *bus, int devfn, uint16_t vid, uint16_t did,
+PCIBus *pci_bridge_init(PCIBus *bus, int devfn, bool multifunction,
+                        uint16_t vid, uint16_t did,
                         pci_map_irq_fn map_irq, const char *name)
 {
     PCIDevice *dev;
     PCIBridge *s;
 
-    dev = pci_create(bus, devfn, "pci-bridge");
+    dev = pci_create_multifunction(bus, devfn, multifunction, "pci-bridge");
     qdev_prop_set_uint32(&dev->qdev, "vendorid", vid);
     qdev_prop_set_uint32(&dev->qdev, "deviceid", did);
     qdev_init_nofail(&dev->qdev);