Hervé Poussineau a écrit :
These proposed patches aim at removing the .old_portio member of MemoryRegionOps structure, and replacing their usage by .read/.write handlers.
Ping.
That way, faked I/O address space can be removed from architectures which don't have it (MIPS, PowerPC...), and commits like a178274efabcbbc5d44805b51def874e47051325 ("PPC: pseries: Remove hack for PIO window") can be reapplied. The first 4 patches do the cleanup and remove the old_portio handler in MemoryRegion structure. The last 4 patches are simplifications, now that Portio handlers can be called from memory core without limitation. Changes since v1: - handling of Portio has been moved to ioport.c (instead of isa-bus.c) This prevents creating an ISA bus on machines which don't have one - added last 4 patches to see benefits of removing old_portio Alexander Graf (1): PPC: pseries: Remove hack for PIO window Hervé Poussineau (7): isa: fix documentation of isa_register_portio_list memory: handle old_portio accesses in MMIO path ioport: register memory regions for I/O port lists memory: remove code dealing with old_portio ioport: reimplement cpu_in/cpu_out using address_space_rw ppc: simplify access to PReP I/O region isa_mmio: simplify access to system I/O region hw/isa/isa_mmio.c | 42 +++------ hw/ppc/prep.c | 65 ++----------- hw/ppc/spapr_pci.c | 44 +-------- include/exec/ioport.h | 3 +- include/exec/memory.h | 4 - include/hw/isa/isa.h | 2 +- include/hw/pci-host/spapr.h | 2 +- ioport.c | 215 ++++++++++++++++++++++--------------------- memory.c | 44 --------- 9 files changed, 137 insertions(+), 284 deletions(-)