[PATCH v11 0/7] Pegasos2 emulation

BALATON Zoltan posted 7 patches 3 years ago
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/cover.1616680239.git.balaton@eik.bme.hu
Maintainers: Jiaxun Yang <jiaxun.yang@flygoat.com>, "Philippe Mathieu-Daudé" <f4bug@amsat.org>, "Michael S. Tsirkin" <mst@redhat.com>, Huacai Chen <chenhuacai@kernel.org>, Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
MAINTAINERS                             |  10 +
default-configs/devices/ppc-softmmu.mak |   2 +
hw/isa/Kconfig                          |   1 +
hw/isa/vt82c686.c                       | 422 +++++++++--
hw/pci-host/Kconfig                     |   4 +
hw/pci-host/meson.build                 |   2 +
hw/pci-host/mv64361.c                   | 951 ++++++++++++++++++++++++
hw/pci-host/mv643xx.h                   | 918 +++++++++++++++++++++++
hw/pci-host/trace-events                |   6 +
hw/ppc/Kconfig                          |   9 +
hw/ppc/meson.build                      |   2 +
hw/ppc/pegasos2.c                       | 144 ++++
include/hw/isa/vt82c686.h               |   2 +-
include/hw/pci-host/mv64361.h           |   8 +
include/hw/pci/pci_ids.h                |   4 +-
15 files changed, 2403 insertions(+), 82 deletions(-)
create mode 100644 hw/pci-host/mv64361.c
create mode 100644 hw/pci-host/mv643xx.h
create mode 100644 hw/ppc/pegasos2.c
create mode 100644 include/hw/pci-host/mv64361.h
[PATCH v11 0/7] Pegasos2 emulation
Posted by BALATON Zoltan 3 years ago
Hello,

This is adding a new PPC board called pegasos2. More info on it can be
found at:

https://osdn.net/projects/qmiga/wiki/SubprojectPegasos2

Currently it needs a firmware ROM image that I cannot include due to
original copyright holder (bPlan) did not release it under a free
licence but I have plans to write a replacement in the future. With
the original board firmware it can boot MorphOS now as:

qemu-system-ppc -M pegasos2 -cdrom morphos.iso -device ati-vga,romfile="" -serial stdio

then enter "boot cd boot.img" at the firmware "ok" prompt as described
in the MorphOS.readme. To boot Linux use same command line with e.g.
-cdrom debian-8.11.0-powerpc-netinst.iso then enter
"boot cd install/pegasos"

The last patch adds the actual board code after previous patches
adding VT8231 and MV64361 system controller chip emulation.

Regards,
BALATON Zoltan

v11: Changes to last two patches David asked for during review

v10: Updated comments and added R-b from Mark

v9: Rebased to master

v8: Do not emulate setting of serial port address via register, just
    hard code a default address instead

v7: Fix errp usage in patch 2

v6: Rebased on master, updated commit message about migration change

v5: Changes for review comments from David and Philippe

V4: Rename pegasos2_reset to pegasos2_cpu_reset
    Add new files to MAINTAINERS

BALATON Zoltan (6):
  vt82c686: QOM-ify superio related functionality
  vt82c686: Add VT8231_SUPERIO based on VIA_SUPERIO
  vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it
  vt82c686: Add emulation of VT8231 south bridge
  hw/pci-host: Add emulation of Marvell MV64361 PPC system controller
  hw/ppc: Add emulation of Genesi/bPlan Pegasos II

Philippe Mathieu-Daudé (1):
  hw/isa/Kconfig: Add missing dependency VIA VT82C686 -> APM

 MAINTAINERS                             |  10 +
 default-configs/devices/ppc-softmmu.mak |   2 +
 hw/isa/Kconfig                          |   1 +
 hw/isa/vt82c686.c                       | 422 +++++++++--
 hw/pci-host/Kconfig                     |   4 +
 hw/pci-host/meson.build                 |   2 +
 hw/pci-host/mv64361.c                   | 951 ++++++++++++++++++++++++
 hw/pci-host/mv643xx.h                   | 918 +++++++++++++++++++++++
 hw/pci-host/trace-events                |   6 +
 hw/ppc/Kconfig                          |   9 +
 hw/ppc/meson.build                      |   2 +
 hw/ppc/pegasos2.c                       | 144 ++++
 include/hw/isa/vt82c686.h               |   2 +-
 include/hw/pci-host/mv64361.h           |   8 +
 include/hw/pci/pci_ids.h                |   4 +-
 15 files changed, 2403 insertions(+), 82 deletions(-)
 create mode 100644 hw/pci-host/mv64361.c
 create mode 100644 hw/pci-host/mv643xx.h
 create mode 100644 hw/ppc/pegasos2.c
 create mode 100644 include/hw/pci-host/mv64361.h

-- 
2.21.4


Re: [PATCH v11 0/7] Pegasos2 emulation
Posted by David Gibson 3 years ago
On Thu, Mar 25, 2021 at 02:50:39PM +0100, BALATON Zoltan wrote:
> Hello,
> 
> This is adding a new PPC board called pegasos2. More info on it can be
> found at:
> 
> https://osdn.net/projects/qmiga/wiki/SubprojectPegasos2
> 
> Currently it needs a firmware ROM image that I cannot include due to
> original copyright holder (bPlan) did not release it under a free
> licence but I have plans to write a replacement in the future. With
> the original board firmware it can boot MorphOS now as:
> 
> qemu-system-ppc -M pegasos2 -cdrom morphos.iso -device ati-vga,romfile="" -serial stdio
> 
> then enter "boot cd boot.img" at the firmware "ok" prompt as described
> in the MorphOS.readme. To boot Linux use same command line with e.g.
> -cdrom debian-8.11.0-powerpc-netinst.iso then enter
> "boot cd install/pegasos"
> 
> The last patch adds the actual board code after previous patches
> adding VT8231 and MV64361 system controller chip emulation.

Applied to ppc-for-6.1, thanks.

> 
> Regards,
> BALATON Zoltan
> 
> v11: Changes to last two patches David asked for during review
> 
> v10: Updated comments and added R-b from Mark
> 
> v9: Rebased to master
> 
> v8: Do not emulate setting of serial port address via register, just
>     hard code a default address instead
> 
> v7: Fix errp usage in patch 2
> 
> v6: Rebased on master, updated commit message about migration change
> 
> v5: Changes for review comments from David and Philippe
> 
> V4: Rename pegasos2_reset to pegasos2_cpu_reset
>     Add new files to MAINTAINERS
> 
> BALATON Zoltan (6):
>   vt82c686: QOM-ify superio related functionality
>   vt82c686: Add VT8231_SUPERIO based on VIA_SUPERIO
>   vt82c686: Introduce abstract TYPE_VIA_ISA and base vt82c686b_isa on it
>   vt82c686: Add emulation of VT8231 south bridge
>   hw/pci-host: Add emulation of Marvell MV64361 PPC system controller
>   hw/ppc: Add emulation of Genesi/bPlan Pegasos II
> 
> Philippe Mathieu-Daudé (1):
>   hw/isa/Kconfig: Add missing dependency VIA VT82C686 -> APM
> 
>  MAINTAINERS                             |  10 +
>  default-configs/devices/ppc-softmmu.mak |   2 +
>  hw/isa/Kconfig                          |   1 +
>  hw/isa/vt82c686.c                       | 422 +++++++++--
>  hw/pci-host/Kconfig                     |   4 +
>  hw/pci-host/meson.build                 |   2 +
>  hw/pci-host/mv64361.c                   | 951 ++++++++++++++++++++++++
>  hw/pci-host/mv643xx.h                   | 918 +++++++++++++++++++++++
>  hw/pci-host/trace-events                |   6 +
>  hw/ppc/Kconfig                          |   9 +
>  hw/ppc/meson.build                      |   2 +
>  hw/ppc/pegasos2.c                       | 144 ++++
>  include/hw/isa/vt82c686.h               |   2 +-
>  include/hw/pci-host/mv64361.h           |   8 +
>  include/hw/pci/pci_ids.h                |   4 +-
>  15 files changed, 2403 insertions(+), 82 deletions(-)
>  create mode 100644 hw/pci-host/mv64361.c
>  create mode 100644 hw/pci-host/mv643xx.h
>  create mode 100644 hw/ppc/pegasos2.c
>  create mode 100644 include/hw/pci-host/mv64361.h
> 

-- 
David Gibson			| I'll have my music baroque, and my code
david AT gibson.dropbear.id.au	| minimalist, thank you.  NOT _the_ _other_
				| _way_ _around_!
http://www.ozlabs.org/~dgibson