aboutsummaryrefslogtreecommitdiff
path: root/hw/prep_pci.c
diff options
context:
space:
mode:
authorj_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162>2007-10-29 10:24:59 +0000
committerj_mayer <j_mayer@c046a42c-6fe2-441c-8c8c-71466251a162>2007-10-29 10:24:59 +0000
commit8c9d7f83bf1f2d61f0fdd5fbc030ab67c8f433e7 (patch)
treeb57391434a2e30eadc281d719a90a0c3628266e8 /hw/prep_pci.c
parentef397e88e96d4a798bd190bcd0c43865c3725ae2 (diff)
Fix PreP PCI IRQ mapping.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3483 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'hw/prep_pci.c')
-rw-r--r--hw/prep_pci.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/hw/prep_pci.c b/hw/prep_pci.c
index 6d6a1349cb..8c8a4988d0 100644
--- a/hw/prep_pci.c
+++ b/hw/prep_pci.c
@@ -117,7 +117,6 @@ static CPUReadMemoryFunc *PPC_PCIIO_read[] = {
&PPC_PCIIO_readl,
};
-/* Don't know if this matches real hardware, but it agrees with OHW. */
static int prep_map_irq(PCIDevice *pci_dev, int irq_num)
{
return (irq_num + (pci_dev->devfn >> 3)) & 1;
@@ -125,7 +124,7 @@ static int prep_map_irq(PCIDevice *pci_dev, int irq_num)
static void prep_set_irq(qemu_irq *pic, int irq_num, int level)
{
- qemu_set_irq(pic[irq_num ? 11 : 9], level);
+ qemu_set_irq(pic[(irq_num & 1) ? 11 : 9] , level);
}
PCIBus *pci_prep_init(qemu_irq *pic)