qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH v3 00/16] ISA bus improvements


From: Hervé Poussineau
Subject: [Qemu-devel] [PATCH v3 00/16] ISA bus improvements
Date: Sun, 2 Oct 2011 18:10:12 +0200

Following patches aim to change ISA bus to a first-citizen class in Qemu.

They add ISA bus ops, like for scsi and usb buses.

Current ISA bridges (PIIX3, PIIX4, EBUS and VT82C686) are converted
to this new API, and a simple 'isabus-bridge' device is added.

isa_address_space() operation can probably be used to remove the
infamous isa_mem_base variable. However, some work is already done
in this direction on the ML, so I didn't change anything.

Finally, add bus argument to all ISA functions, so architectures
with multiple ISA buses (like some Alpha systems) can be emulated.

Patch 14 is a temporary patch, which should be reverted once i8259 is
qdevifed. Patches have already been sent to ML for this [1]. It can
also be dropped if Jan's series is merged.
However, patches 1 to 13 can be applied immediately.

I also was unable to reproduce the problem Anthony mentioned on [2],
using TCG on a 32-bit host.

Changes since v2:
- rebased
- add back spaces between function name and parenthesis on malc' request
- split some patches in two for easier bisecting
- add temporary workaround for non-qdevified i8259

Changes since v1:
- add ISA bus argument to all ISA functions
- remove default ISA bus concept as per Jan request

[1] http://lists.gnu.org/archive/html/qemu-devel/2011-09/msg03504.html
[2] http://lists.gnu.org/archive/html/qemu-devel/2011-09/msg03053.html

Hervé Poussineau (16):
  isa: rename isa_bus_new to isa_bus_bridge_init
  isa: rework ISA bus internals, and add ISA bus ops structure
  isa: correctly implement isa_address_space(), by calling a
    bus-specific function
  audio: give ISA bus to sound cards, instead of PIC
  pc: improve bus implementation of PIIX3 bridge
  fulong2e: improve bus implementation of vt82c bridge
  sun4u: improve bus implementation of EBus bridge
  malta: improve bus implementation of PIIX4 bridge
  isa: remove unused parameter to isa_bus_bridge_init()
  isa: give bus to isa_create() and isa_try_create() methods
  isa: use bus given in parameter to create device on specified ISA bus
  isa: give bus to isa_get_irq() and isa_bus_irqs()
  isa: use bus given in parameter to get/set irqs on specified ISA bus
  i8259: add ad-hock variables to please future changes in
    isa_register_ioport()
  isa: remove useless test in isa_register_ioport()
  isa: remove limitation of only one ISA bus

 Makefile.objs      |    2 +-
 arch_init.c        |   10 ++--
 arch_init.h        |    2 +-
 hw/adlib.c         |    2 +-
 hw/audiodev.h      |    8 ++--
 hw/cs4231a.c       |    4 +-
 hw/fdc.h           |    4 +-
 hw/gus.c           |    4 +-
 hw/i8254.c         |    2 +-
 hw/i8259.c         |   29 +++++++++++++-
 hw/ide.h           |   14 ++++--
 hw/ide/isa.c       |    4 +-
 hw/ide/piix.c      |   30 +++++++++++----
 hw/ide/via.c       |   18 +++++++--
 hw/isa-bridge.c    |   92 ++++++++++++++++++++++++++++++++++++++++++++
 hw/isa-bus.c       |  108 +++++++++++++++++++++++----------------------------
 hw/isa.h           |   36 ++++++++++++++---
 hw/m48t59.c        |    5 +-
 hw/mc146818rtc.c   |    4 +-
 hw/mc146818rtc.h   |    2 +-
 hw/mips_fulong2e.c |   25 +++++-------
 hw/mips_jazz.c     |   11 +++--
 hw/mips_malta.c    |   27 ++++++-------
 hw/mips_r4k.c      |   19 +++++----
 hw/nvram.h         |    3 +-
 hw/pc.c            |   34 ++++++++--------
 hw/pc.h            |   38 ++++++++++---------
 hw/pc_piix.c       |   27 +++++++------
 hw/pcspk.c         |    2 +-
 hw/piix4.c         |   41 ++++++++++++++++++-
 hw/piix_pci.c      |   45 +++++++++++++++++++--
 hw/ppc_prep.c      |   18 +++++----
 hw/sb16.c          |    4 +-
 hw/sun4u.c         |   54 ++++++++++++++++++++------
 hw/vt82c686.c      |   33 ++++++++++++++-
 hw/vt82c686.h      |    2 +-
 qemu-common.h      |    1 +
 37 files changed, 526 insertions(+), 238 deletions(-)
 create mode 100644 hw/isa-bridge.c

-- 
1.7.6.3




reply via email to

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