qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [RFC 00/23] PReP 40P emulation


From: Andreas Färber
Subject: [Qemu-devel] [RFC 00/23] PReP 40P emulation
Date: Tue, 14 Jun 2011 04:37:34 +0200

Hi,

Based mostly on earlier work by Hervé Poussineau, this RFC series adds
emulation of a real '40p' IBM PReP machine as an addition to the existing
'prep' machine. It does some general cleanups and qdev'ification
that will benefit further PReP machines, such as the BeBox.

This series supersedes my preparatory "ISA reconfigurability" series,
by adding the i82378 PCI-ISA bridge on which it is to be used. The qdev and
ISA device patches up to pc87312 should allow for cherry-picking.

The state of -M prep (on Darwin/ppc64 and OSol/amd64) is that my
2.4.36.1 Linux kernel hardly gets to the root prompt
("INIT: Id "n" respawning too fast: disabled for 5 minutes"),
both before and after.

Firmware for -M 40p can be downloaded here:
ftp://ftp.boulder.ibm.com/rs6000/firmware/7020-40p/P12H0456.IMG

With some additional patches on top of this series (memory-forced
I/O, a PCI BAR issue and a parallel ioport conflict) after about
one and a half minutes it gets to the graphical boot screen with
keyboard icon, after about seven and a half minutes to the floppy icon
and after a really looong time gets to a third, memory(?) icon.

TODOs:
* improve ISA ioport vs. IORange handling and naming
* fix a few -M prep System I/O ports broken by qdev'ification
* possibly make -M prep use i82378, too (broke Linux boot)
* IBM8514/A cleanup, RAMDAC support for colors
* 7020 had max. 6x 32 MB = 192 MB RAM

Regards,
Andreas

Cc: Hervé Poussineau <address@hidden>


Andreas Färber (21):
  prep: Refactor CPU initialization
  prep: qdev'ify PCI
  prep: Prepare emulation of an IBM RS/6000 6015 / 7020 (40p)
  40p: Add PCI host
  prep: Add i82374 DMA emulation
  prep: Add i82378 PCI-to-ISA bridge emulation
  40p: Add a PCI to ISA bridge (i82378)
  qdev: Add support for property type bool
  qdev: Add helpers for reading properties
  isa: Provide enable and disable callbacks
  isa: Allow to un-assign I/O ports
  isa: Allow to un-associate an IRQ
  parallel: Implement ISA state callbacks
  serial: Implement ISA state callbacks
  fdc: Implement ISA state callbacks
  ide: Allow to discard I/O ports
  ide: Implement ISA state callbacks
  prep: Add pc87312 Super I/O emulation
  40p: Add the Super I/O chip (pc87312)
  prep: qdev'ify System I/O (WIP)
  40p: Add an 8514/A graphics card

Hervé Poussineau (2):
  fdc: Parametrize ISA base, IRQ and DMA
  40p: Add an audio card and a keyboard

 Makefile.objs                   |    4 +
 Makefile.target                 |    1 +
 default-configs/ppc-softmmu.mak |    7 +
 hw/fdc.c                        |  118 ++++++-
 hw/hw.h                         |   15 +
 hw/i82374.c                     |  133 ++++++++
 hw/i82378.c                     |  298 +++++++++++++++++
 hw/ide/core.c                   |    8 +
 hw/ide/internal.h               |    1 +
 hw/ide/isa.c                    |   98 ++++++-
 hw/isa-bus.c                    |   71 ++++
 hw/isa.h                        |    8 +
 hw/parallel.c                   |   75 +++--
 hw/pc87312.c                    |  495 ++++++++++++++++++++++++++++
 hw/pci_ids.h                    |    4 +
 hw/ppc_prep.c                   |  316 ++++++++++--------
 hw/ppc_prep.h                   |   24 ++
 hw/prep_pci.c                   |  126 ++++++--
 hw/prep_systemio.c              |  335 +++++++++++++++++++
 hw/qdev-properties.c            |   96 ++++++-
 hw/qdev.h                       |   13 +
 hw/serial.c                     |   91 +++++-
 hw/vga-s3.c                     |  694 +++++++++++++++++++++++++++++++++++++++
 23 files changed, 2812 insertions(+), 219 deletions(-)
 create mode 100644 hw/i82374.c
 create mode 100644 hw/i82378.c
 create mode 100644 hw/pc87312.c
 create mode 100644 hw/ppc_prep.h
 create mode 100644 hw/prep_systemio.c
 create mode 100644 hw/vga-s3.c

-- 
1.7.5.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]