[PATCH v4 0/7] [RESEND] Pegasos2 fixes and audio output support

Bernhard Beschow posted 7 patches 1 year, 1 month ago
There is a newer version of this series
hw/audio/ac97.h           |  65 ++++++
include/hw/isa/vt82c686.h |  25 +++
hw/audio/ac97.c           |  43 +---
hw/audio/via-ac97.c       | 455 +++++++++++++++++++++++++++++++++++++-
hw/display/sm501.c        | 119 +++++++---
hw/isa/vt82c686.c         |   3 +-
hw/pci-host/mv64361.c     |   4 -
hw/ppc/pegasos2.c         |  20 +-
hw/audio/trace-events     |   6 +
hw/isa/trace-events       |   1 +
10 files changed, 662 insertions(+), 79 deletions(-)
create mode 100644 hw/audio/ac97.h
[PATCH v4 0/7] [RESEND] Pegasos2 fixes and audio output support
Posted by Bernhard Beschow 1 year, 1 month ago
On behalve of Zoltan BALATON:

Hello,

This is marked v3 to avoid confusion with previously separate patches
that already had v2, even if the series had no v2 yet.

This series now includes all patches needed to get AmigaOS 4.1 run
well on pegasos2 and add audio output to this board. It has 3 parts:
patches 1-3 improve hw/display/sm501 model to avoid graphics problems
that were present with AmigaOS; patches 4-6 fix PCI interrupt routing
in VIA VT8231 model and in pegasos2 board that fixes PCI cards such as
network or sound card not working before; finally patches 7-8 add
basic implementation of the via-ac97 audio part of VT8231 (also used
on VT82C686B) for output that is the default audio device on pegasos2.

This version was re-tested by Rene Engel with latest AmigaOS version
and runs as well as my original series did (posted a video with that
before). This works now on an M1 MacStudio on macOS where it was
unusable before. I've also tested it on Linux x86_64 with older
AmigaOS version that also boots and makes sound and verified MorphOS
still boots and also has sound now.

One known problem with this version that includes Berhard's
alternative vt82c686 patches is with MorphOS which uses level
sensitive mode of the i8259 PIC that QEMU does not support so it hangs
when multiple devices try to raise a shared IRQ. I could work around
that in my otiginal series (see here:
https://lists.nongnu.org/archive/html/qemu-ppc/2023-02/msg00403.html )
where this works and was also tested, that version is available here:
https://osdn.net/projects/qmiga/scm/git/qemu/tree/pegasos2/
but I could not convince Bernhard so I now expect him to provide a
work around for that. This isn't a blocker though as MorphOS already
runs on mac99 and sam460ex and only available as a time limited demo
(they only sell licenses for real hardware) so not really usable apart
from testing anyway so getting it running on pegasos2 would be nice
but not a prioriey, more important is that AmigaOS runs for which this
is the only viable machine as sam460ex version runs much slower. So
I'd like this to be merged for 8.0 as it is now or only minor chnages
(or alternatively we can return to my series which was also tested the
same way and apart from different VIA IRQ router modelling contains
the same patches).

Please review and let me know who will take care of merging this for 8.0.

Regards,
BALATON Zoltan

v4:
* Rebased onto "[PATCH v3 0/3] VT82xx PCI IRQ routing fixes"

Based-on: <20230227123316.18719-1-shentey@gmail.com>
          "[PATCH v3 0/3] VT82xx PCI IRQ routing fixes"

BALATON Zoltan (7):
  hw/display/sm501: Implement more 2D raster operations
  hw/display/sm501: Add fallbacks to pixman routines
  hw/display/sm501: Add debug property to control pixman usage
  hw/isa/vt82c686: Declare gpio inputs so it can be connected in board
    code
  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.h           |  65 ++++++
 include/hw/isa/vt82c686.h |  25 +++
 hw/audio/ac97.c           |  43 +---
 hw/audio/via-ac97.c       | 455 +++++++++++++++++++++++++++++++++++++-
 hw/display/sm501.c        | 119 +++++++---
 hw/isa/vt82c686.c         |   3 +-
 hw/pci-host/mv64361.c     |   4 -
 hw/ppc/pegasos2.c         |  20 +-
 hw/audio/trace-events     |   6 +
 hw/isa/trace-events       |   1 +
 10 files changed, 662 insertions(+), 79 deletions(-)
 create mode 100644 hw/audio/ac97.h

-- 
2.39.2