This series is v2 of [1] ("[PATCH 0/5] Pegasos2 fixes and audio output
support"). It makes PCI interrupt routing on the VIA south bridges more
compliant to the PCI specification and adds partial implementation of the
via-ac97 sound part enough to get audio output working on the ppc/pegasos2
machine.
All credits for implementing AC'97 support go to Zoltan who would like this
series to be merged for QEMU 8.0.
v2:
* Rework PCI IRQ routing in the VIA south bridges
* Use pci_set_irq() rather than via_isa_set_irq() in via-ac97
Testing done:
* `make check`
* `qemu-system-ppc -M pegasos2 -rtc base=localtime -device
ati-vga,guest_hwcursor=true,romfile="" -cdrom morphos-3.17.iso -kernel
morphos-3.17/boot.img`
-> There is a nice sound when the Desktop becomes visible.
* `qemu-system-ppc -M pegasos2 -bios pegasos2.rom -rtc base=localtime -device
ati-vga,guest_hwcursor=true,romfile="" -cdrom morphos-3.17.iso`
-> There is a nice sound when the Desktop becomes visible.
* `qemu-system-ppc -M pegasos2 -bios pegasos2.rom -rtc base=localtime -device
ati-vga,guest_hwcursor=true,romfile="" -cdrom morphos-3.17.iso -device
usb-mouse -device usb-kbd`
-> The machine hangs when audio is supposed to play while the mouse is moved.
This behavior can also be reproduced in v1.
[1] https://lore.kernel.org/qemu-devel/cover.1677004414.git.balaton@eik.bme.hu/
BALATON Zoltan (2):
hw/audio/ac97: Split off some definitions to a header
hw/audio/via-ac97: Basic implementation of audio playback
Bernhard Beschow (3):
hw/ppc/pegasos2: Initialize VT8231 PCI IRQ router
hw/isa/vt82c686: Implement PCI IRQ routing
hw/usb/vt82c686-uhci-pci: Use PCI IRQ routing
hw/audio/ac97.h | 65 ++++++
include/hw/isa/vt82c686.h | 25 +++
hw/audio/ac97.c | 43 +---
hw/audio/via-ac97.c | 436 ++++++++++++++++++++++++++++++++++++-
hw/isa/vt82c686.c | 46 +++-
hw/ppc/pegasos2.c | 6 +
hw/usb/vt82c686-uhci-pci.c | 12 -
hw/audio/trace-events | 6 +
8 files changed, 580 insertions(+), 59 deletions(-)
create mode 100644 hw/audio/ac97.h
--
2.39.2