Hi,
This series implements the suggestions from Markus analysis:
https://www.mail-archive.com/qemu-block@nongnu.org/msg84090.html
on the ISA bus.
There is still work to do (remove global get_system_io?) but
this is enough to convert a crash to an error message, and
the changes are simple, so posting now as RFC.
TBC...
Philippe Mathieu-Daudé (11):
hw/isa: Explode pci_create_simple() calls
hw/ide: Add PCIIDEState::isa_bus link
hw/ide/piix: Set the ISA-bus QOM link
hw/ide/via: Set the ISA-bus QOM link
hw/isa: Extract isa_bus_get_irq() from isa_get_irq()
hw/ide: Replace isa_get_irq() by isa_bus_get_irq()
hw/isa: Simplify isa_get_irq()
hw/isa: Extract bus part from isa_register_portio_list()
hw/ide: Let ide_init_ioport() take an ISA bus argument instead of
device
hw/isa: Remove use of global isa bus
hw/isa: Rename isabus singleton as 'g_isabus'
include/hw/ide/internal.h | 3 +-
include/hw/ide/pci.h | 1 +
include/hw/isa/isa.h | 5 ++++
hw/i386/pc_piix.c | 7 +++--
hw/ide/ioport.c | 11 +++----
hw/ide/isa.c | 3 +-
hw/ide/piix.c | 22 +++++++++++---
hw/ide/via.c | 18 ++++++++++--
hw/isa/isa-bus.c | 61 +++++++++++++++++++++++++++++----------
hw/isa/piix4.c | 13 ++++++---
hw/mips/fuloong2e.c | 7 ++++-
hw/ppc/pegasos2.c | 7 ++++-
12 files changed, 122 insertions(+), 36 deletions(-)
--
2.26.3