On 09/19/2012 12:50 PM, Julien Grall wrote: > This is the tenth version of patch series about ioport registration. > > Some part of QEMU still use register_ioport* functions to register ioport. > These functions doesn't allow to use Memory Listener on it. > > Modifications between V1 and V2: > - Remove the use of get_system_io. Instead of use isa and pci IO > address space; > - Avoid allocation of PortioList. Use the different device > structure; > - Still remove register_ioport* (hw/dma.c, hw/apm.c, hw/acpi_piix4.c); > - Use MemoryRegion when we have only a range of ioport; > - For some functions, add IO address space as argument; > - Add isa_address_space_io function. > > Modifications between V2 and V3: > - Remove some register_ioport_* on hw/vt82c686.c; > - Split smb ioport part in new patch; > - Still replace MemoryRegion when we have only a range of ioport; > - Fix read/write ioports prototype to be compliant with memory callback. > > Modifications between V3 and V4: > - Fix compilation in hw/dma.c; > - Fix address conversion (hw/dma.c, hw/acpi_piix4.c) with MemorySection. > Indeed the new version use offset from MemorySection start instead of 0. > > Modifications between V4 and V5: > - Rebase on qemu upstream; > - Forget some ioport_register_* in acpi_piix4.c; > - Register 0x3b0 - 0x3df range for cirrus instead of ioport by ioport. > > Modifications between V5 and V6: > - Add read function on cirrus ioport (forget on the previous patch); > - Rework PM memory range handling; > - Fix PCI_BASE in acpi_piix4.c (wrong conversion during port); > - Rewrite isa_address_space_io to use ISA bus address space; > - Fix compilation in vt82c686.c. > > Modifications between V6 and V7: > - acpi_piix4: use memory_region_set_enabled instead of a boolean. I'm not > sure about this modification (adviced by Avi); > - Fix device endianness in acpi_piix4 (reported by Avi); > - Avoid dependencies between patches and reorder it (reported by Jan). > Some code moved from acpi_piix4 patch to smb/apm patches; > > Modifications between V7 and V8: > - Fix device endianness in smb patch, I forgot some on previous version; > - Register pm io region at initialization with default value instead > of at first call to pm_io_space_update (reported by Jan). > > Modifications between V8 and V9: > - Fix size constraint in pm_io_ops (reported by Jan). > > Modifications between V9 and V10: > - Fix compile error with format string in hw/dma.c; > - Rebase on master as hw/pc.c and hw/cirrus_vga.c was modified. > > Julien Grall (8): > isa: add isa_address_space_io > hw/apm.c: replace register_ioport* > smb: replace_register_ioport* > hw/acpi_piix4.c: replace register_ioport* > hw/cirrus_vga.c: replace register_ioport* > hw/serial.c: replace register_ioport* > hw/pc.c: replace register_ioport* > hw/dma.c: replace register_ioport* > > hw/acpi_piix4.c | 174 > ++++++++++++++++++++++++++++++++++++++++------------- > hw/apm.c | 24 ++++++-- > hw/apm.h | 5 +- > hw/cirrus_vga.c | 48 +++++++++------ > hw/dma.c | 108 ++++++++++++++++++++++----------- > hw/isa-bus.c | 9 +++ > hw/isa.h | 1 + > hw/mips_mipssim.c | 3 +- > hw/pc.c | 49 ++++++++++++--- > hw/pc.h | 2 +- > hw/pm_smbus.c | 7 +- > hw/pm_smbus.h | 6 +- > hw/serial.c | 8 ++- > hw/vt82c686.c | 20 +++++- > 14 files changed, 339 insertions(+), 125 deletions(-) >
Hello, Is there any plan to apply this patch series in QEMU upstream? Sincerely yours,