[Top][All Lists]
[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
- [Qemu-devel] [PATCH v3 00/16] ISA bus improvements,
Hervé Poussineau <=
- [Qemu-devel] [PATCH v3 01/16] isa: rename isa_bus_new to isa_bus_bridge_init, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 03/16] isa: correctly implement isa_address_space(), by calling a bus-specific function, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 02/16] isa: rework ISA bus internals, and add ISA bus ops structure, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 04/16] audio: give ISA bus to sound cards, instead of PIC, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 05/16] pc: improve bus implementation of PIIX3 bridge, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 06/16] fulong2e: improve bus implementation of vt82c bridge, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 07/16] sun4u: improve bus implementation of EBus bridge, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 08/16] malta: improve bus implementation of PIIX4 bridge, Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 09/16] isa: remove unused parameter to isa_bus_bridge_init(), Hervé Poussineau, 2011/10/02
- [Qemu-devel] [PATCH v3 12/16] isa: give bus to isa_get_irq() and isa_bus_irqs(), Hervé Poussineau, 2011/10/02