On Mon, 22 Feb 2021, Philippe Mathieu-Daudé wrote:
On 2/22/21 4:22 PM, BALATON Zoltan wrote:
The Marvell Discovery II aka. MV64361 is a PowerPC system controller
chip that is used on the pegasos2 PPC board. This adds emulation of it
that models the device enough to boot guests on this board. The
mv643xx.h header with register definitions is taken from Linux 4.15.10
only fixing end of line white space errors and removing not needed
parts, it's otherwise keeps Linux formatting.
Signed-off-by: BALATON Zoltan <bala...@eik.bme.hu>
---
hw/pci-host/Kconfig | 3 +
hw/pci-host/meson.build | 2 +
hw/pci-host/mv64361.c | 966 ++++++++++++++++++++++++++++++++++
hw/pci-host/mv643xx.h | 919 ++++++++++++++++++++++++++++++++
hw/pci-host/trace-events | 6 +
include/hw/pci-host/mv64361.h | 8 +
include/hw/pci/pci_ids.h | 1 +
7 files changed, 1905 insertions(+)
create mode 100644 hw/pci-host/mv64361.c
create mode 100644 hw/pci-host/mv643xx.h
create mode 100644 include/hw/pci-host/mv64361.h
Is this the datasheet for this controller?
ftp://ftp.freecalypso.org/PowerPC/support_ics/mv64360/datasheets/DS_64360_1_2.pdf.zip
It seems to have common parts with the GT64120.
Yes, as noted on https://osdn.net/projects/qmiga/wiki/SubprojectPegasos2
the GT64120 seems to be an older (and MIPS specific) version of this chip
that Marvell bought and likely made this PPC version based on that. (The
whole pegasos2 seems to be like a MIPS board with a PPC CPU even down to
the firmware which looks quite like PMON just has SmartFirmware instead of
the commands of PMON. So whoever designed it, might have taken inspiration
from some MIPS hardware.) However the emulation of GT64xxx in QEMU seemed
to be not complete and different enough so I haven't looked at that when
implementing this so I don't know how much commonality is there and if
that would worth reusing. (If you think there could be some reuse then
that should be done separate of this series, afterwards it's merged.)
Regards,
BALATON Zoltan