Hi, This patchset (sent as RFC) adds an emulation of the IBM RS/6000 43p, also known as 7248.
Andreas did some preliminary patches for OpenBIOS to support PReP machines, available at git://repo.or.cz/openbios/afaerber.git branch prep. 43p emulation has been tested with this firmware, and also with the official firmware, named P93H1904.IMG. Command line may look like qemu-system-ppc -M 43p -readconfig ibm_43p.cfg -device ide-hd,drive=hd0 -drive if=none,id=hd0,cache=writeback,file="hda.qcow2" Changes RFC v1 -> RFC v2: - rebased on master - works with OpenBIOS - rework on m48t59 patches - remove rs6000 debug port emulation (not strictly required) - checkpatch.pl doesn't complain anymore Known bugs/missing parts: - incomplete MPC105 (PCI host bridge) emulation (memory controller) - no video card (should be a S3) - QEMU can't change endianness at runtime OpenBIOS status: - detects CPU and memory, then freezes with a "Dictionary space overflow" Official firmware status: - can boot from a IDE hard disk containing a PReP boot partition - can't boot from IDE cdroms (overlapping commands not supported by QEMU IDE emulation) - can't boot from floppies (READ commands are issued, but it seems completion is ignored) - can't boot from network (detects the netcard, but doesn't use it) - needs a hack to m48t59 device to work (patch 7/7) Please comment. Regards, Hervé Hervé Poussineau (7): pci: add MPC105 PCI host bridge emulation m48t59: move ISA ports registration to QOM constructor m48t59: register a QOM type for each nvram type we support m48t59: use DeviceState in public functions prep: add IBM RS/6000 7248 (43p) machine emulation prep: QOM'ify System I/O m48t59: hack(?) to make it work on IBM 43p default-configs/ppc-softmmu.mak | 1 + docs/ibm_43p.cfg | 42 ++++ hw/pci-host/Makefile.objs | 1 + hw/pci-host/mpc105.c | 487 +++++++++++++++++++++++++++++++++++++++ hw/ppc/Makefile.objs | 1 + hw/ppc/prep.c | 223 +++++++++++++++++- hw/ppc/prep_systemio.c | 290 +++++++++++++++++++++++ hw/sparc/sun4m.c | 7 +- hw/sparc64/sun4u.c | 6 +- hw/timer/m48t59.c | 257 +++++++++++++++------ include/hw/pci/pci_ids.h | 1 + include/hw/timer/m48t59.h | 14 +- trace-events | 11 + 13 files changed, 1248 insertions(+), 93 deletions(-) create mode 100644 docs/ibm_43p.cfg create mode 100644 hw/pci-host/mpc105.c create mode 100644 hw/ppc/prep_systemio.c -- 1.7.10.4