qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [RFC 00/10] ISA reconfigurability


From: Andreas Färber
Subject: [Qemu-devel] [RFC 00/10] ISA reconfigurability
Date: Mon, 6 Jun 2011 18:20:49 +0200

Hello,

The current qdev model seems to assume that a PC is equipped with the 
controllers
and devices (part of the default config or) explicitly passed as parameters by
the user.

In reality though, a PC is usually equipped with a fixed set of internal 
devices,
which can be enabled/disabled and configured from the BIOS menu.

Similarly, the PC87312 Super I/O chipset used in IBM PReP machines aggregates
a number of PC-compatible devices and allows to reconfigure them through 
register
writes. This is actually done by the real IBM firmware we're trying to boot.

The original patch by Hervé unplugged and added new isa-parallel, etc. devices
for each reconfiguration. That failed because the devices are not meant to be
hot-pluggable.

This series proposes a new solution: helpers that reconfigure existing 
ISADevices.

It also contains a resend of a prerequisite patch with updated summary.

As for the remaining issue of enabling/disabling devices I'd like to hear
opinions on whether we should allow hot-plugging of these devices or
whether we should add an enabled/disabled state to a qdev device.
The latter would help avoid guest-triggerable qdev_init[_nofail]() failures but
would crowd the qtree and thus be a user-visible change.

Further, some qdev devices like isa-parallel and isa-serial seem to depend on a
valid char device. The runtime choice of whether to enable the parallel port is
obviously independent of whether the user supplied us with a valid chr property.
Do we have a nop char driver to use in such a case?

Thanks,

Andreas


Andreas Färber (9):
  isa: Allow to un-assign I/O ports
  isa: Allow to un-associate an IRQ
  parallel: Allow to reconfigure ISA I/O base
  parallel: Allow to reconfigure ISA IRQ
  serial: Allow to reconfigure ISA I/O base
  serial: Allow to reconfigure ISA IRQ
  fdc: Allow to reconfigure ISA I/O base
  ide: Allow to reconfigure ISA I/O base
  prep: Add pc87312 Super I/O emulation

Hervé Poussineau (1):
  fdc: Parametrize ISA base, IRQ and DMA

 Makefile.objs                   |    1 +
 default-configs/ppc-softmmu.mak |    2 +
 hw/fdc.c                        |   56 ++++--
 hw/fdc.h                        |    3 +
 hw/ide.h                        |    1 +
 hw/ide/core.c                   |    8 +
 hw/ide/internal.h               |    1 +
 hw/ide/isa.c                    |   28 +++-
 hw/isa-bus.c                    |   28 +++
 hw/isa.h                        |   10 +
 hw/parallel.c                   |   83 ++++++--
 hw/pc87312.c                    |  435 +++++++++++++++++++++++++++++++++++++++
 hw/serial.c                     |   34 +++-
 13 files changed, 647 insertions(+), 43 deletions(-)
 create mode 100644 hw/pc87312.c

-- 
1.7.5.3




reply via email to

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