OSDN Git Service

hw/ppc/pegasos2: Fix PCI interrupt routing
authorBALATON Zoltan <balaton@eik.bme.hu>
Thu, 16 Feb 2023 20:27:32 +0000 (21:27 +0100)
committerPhilippe Mathieu-Daudé <philmd@linaro.org>
Tue, 7 Mar 2023 23:37:48 +0000 (00:37 +0100)
commitfb27a3e9e7c348eb77a3b8d967e3d432d2ef8070
treec89499df29f97f8ec1a308578f06913aca92d71a
parent2fdadd02e675caca4aba4ae26317701fe2c4c901
hw/ppc/pegasos2: Fix PCI interrupt routing

According to the PegasosII schematics the PCI interrupt lines are
connected to both the gpp pins of the Mv64361 north bridge and the
PINT pins of the VT8231 south bridge so guests can get interrupts from
either of these. So far we only had the MV64361 connections which
worked for on board devices but for additional PCI devices (such as
network or sound card added with -device) guest OSes expect interrupt
from the ISA IRQ 9 where the firmware routes these PCI interrupts in
VT8231 ISA bridge. After the previous patches we can now model this
and also remove the board specific connection from mv64361. Also
configure routing of these lines when using Virtual Open Firmware to
match board firmware for guests that expect this.

This fixes PCI interrupts on pegasos2 under Linux, MorphOS and AmigaOS.

Signed-off-by: BALATON Zoltan <balaton@eik.bme.hu>
Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Tested-by: Rene Engel <ReneEngel80@emailn.de>
Message-Id: <520ff9e6eeef600ee14a4116c0c7b11940cc499c.1678188711.git.balaton@eik.bme.hu>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
hw/pci-host/mv64361.c
hw/ppc/pegasos2.c