On Tue, Feb 21, 2023 at 7:44 PM BALATON Zoltan <bala...@eik.bme.hu> wrote:
> This series fixes PCI interrupts on the ppc/pegasos2 machine and adds > partial implementation of the via-ac97 sound part enough to get audio > output. I'd like this to be merged for QEMU 8.0. > > Regards, > BALATON Zoltan > > BALATON Zoltan (5): > hw/isa/vt82c686: Implement interrupt routing in via_isa_set_irq > hw/isa/vt82c686: Implement PIRQ pins > hw/ppc/pegasos2: Fix PCI interrupt routing > hw/audio/ac97: Split off some definitions to a header > hw/audio/via-ac97: Basic implementation of audio playback > > hw/audio/ac97.c | 43 +--- > hw/audio/ac97.h | 65 ++++++ > hw/audio/trace-events | 6 + > hw/audio/via-ac97.c | 436 ++++++++++++++++++++++++++++++++++++- > hw/ide/via.c | 2 +- > hw/isa/vt82c686.c | 61 +++++- > hw/pci-host/mv64361.c | 4 - > hw/ppc/pegasos2.c | 26 ++- > hw/usb/vt82c686-uhci-pci.c | 5 +- > include/hw/isa/vt82c686.h | 39 +++- > 10 files changed, 626 insertions(+), 61 deletions(-) > create mode 100644 hw/audio/ac97.h > > -- > 2.30.7 > > Wow, the MorphOS people paid attention to sound design. Thanks for presenting it to us, Zoltan! I've had a closer look at your series and I think it can be simplified: Patch 2 can be implemented quite straight-forward like I proposed in a private mail: https://github.com/shentok/qemu/commit/via-priq-routing. Then, in order to make patch 3 "hw/ppc/pegasos2: Fix PCI interrupt routing" working, one can expose the PCI interrupts with a single line like you do in patch 2. With this, patch 1 "hw/isa/vt82c686: Implement interrupt routing in via_isa_set_irq" isn't needed any longer and can be omitted. In via-ac97, rather than using via_isa_set_irq(), pci_set_irq() can be used instead. pci_set_irq() internally takes care of all the ISA interrupt level tracking patch 1 attempted to address. I might have further comments but I think it's enough for now. Thanks again for making via-ac97 work! Best regards, Bernhard