aboutsummaryrefslogtreecommitdiff
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)
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);