aboutsummaryrefslogtreecommitdiff
path: root/hw/versatile_pci.c
diff options
context:
space:
mode:
authorpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2006-09-24 00:16:34 +0000
committerpbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162>2006-09-24 00:16:34 +0000
commitd2b5931756fdb9f839180e33898cd1e3e4fbdc90 (patch)
treee8e31fd9d7497dce68c6be46136a8bbfc37528d3 /hw/versatile_pci.c
parente69954b9fc698996c8416a2fb26c6b50ad9f49a9 (diff)
PCI shared IRQ fix (original patch by andrzej zaborowski).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2165 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/versatile_pci.c')
-rw-r--r--hw/versatile_pci.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/hw/versatile_pci.c b/hw/versatile_pci.c
index aac61c7b55..9addda8f01 100644
--- a/hw/versatile_pci.c
+++ b/hw/versatile_pci.c
@@ -79,7 +79,12 @@ static CPUReadMemoryFunc *pci_vpb_config_read[] = {
static int pci_vpb_irq;
-static void pci_vpb_set_irq(PCIDevice *d, void *pic, int irq_num, int level)
+static int pci_vpb_map_irq(PCIDevice *d, int irq_num)
+{
+ return irq_num;
+}
+
+static void pci_vpb_set_irq(void *pic, int irq_num, int level)
{
pic_set_irq_new(pic, pci_vpb_irq + irq_num, level);
}
@@ -100,7 +105,7 @@ PCIBus *pci_vpb_init(void *pic, int irq, int realview)
base = 0x40000000;
name = "Versatile/PB PCI Controller";
}
- s = pci_register_bus(pci_vpb_set_irq, pic, 11 << 3);
+ s = pci_register_bus(pci_vpb_set_irq, pci_vpb_map_irq, pic, 11 << 3);
/* ??? Register memory space. */
mem_config = cpu_register_io_memory(0, pci_vpb_config_read,