diff options
author | Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> | 2020-10-11 09:13:47 +0100 |
---|---|---|
committer | Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> | 2020-10-28 07:59:26 +0000 |
commit | ef905eff421c5a06a01714e11ed67a92e4e7a9f1 (patch) | |
tree | 76f94ac6d611556b66592cb779a2ed0a117eb27b | |
parent | ae5643ecc672ca2f3716359e1bb9b5ce52c1518c (diff) |
sabre: increase number of PCI bus IRQs from 32 to 64
The rework of the sabre IRQs in commit 6864fa3897 "sun4u: update PCI topology to
include simba PCI bridges" changed the IRQ routing so that both PCI and legacy
OBIO IRQs are routed through the sabre PCI host bridge to the CPU.
Unfortunately this commit failed to increase the number of PCI bus IRQs
accordingly meaning that access to the legacy IRQs OBIO (irqnum >= 0x20) would
overflow the PCI bus IRQ array causing strange failures running qemu-system-sparc64
in NetBSD.
Cc: qemu-stable@nongnu.org
Reported-by: Harold Gutch <logix@foobar.franken.de>
Fixes: https://bugs.launchpad.net/qemu/+bug/1838658
Fixes: 6864fa3897 ("sun4u: update PCI topology to include simba PCI bridges")
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20201011081347.2146-1-mark.cave-ayland@ilande.co.uk>
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
-rw-r--r-- | hw/pci-host/sabre.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/pci-host/sabre.c b/hw/pci-host/sabre.c index 5394ad5cd0..edf48ea923 100644 --- a/hw/pci-host/sabre.c +++ b/hw/pci-host/sabre.c @@ -388,7 +388,7 @@ static void sabre_realize(DeviceState *dev, Error **errp) pci_sabre_set_irq, pci_sabre_map_irq, s, &s->pci_mmio, &s->pci_ioport, - 0, 32, TYPE_PCI_BUS); + 0, 0x40, TYPE_PCI_BUS); pci_create_simple(phb->bus, 0, TYPE_SABRE_PCI_DEVICE); |