[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH V8 0/8] memory: unify ioport registration
From: |
Julien Grall |
Subject: |
[Qemu-devel] [PATCH V8 0/8] memory: unify ioport registration |
Date: |
Tue, 4 Sep 2012 08:28:05 +0100 |
This is the eighth 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).
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 | 165 +++++++++++++++++++++++++++++++++++++++++-----------
hw/apm.c | 24 ++++++--
hw/apm.h | 5 +-
hw/cirrus_vga.c | 50 ++++++++++-------
hw/dma.c | 108 +++++++++++++++++++++++------------
hw/isa-bus.c | 9 +++
hw/isa.h | 1 +
hw/mips_mipssim.c | 3 +-
hw/pc.c | 58 ++++++++++++++-----
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, 341 insertions(+), 125 deletions(-)
--
Julien Grall
- [Qemu-devel] [PATCH V8 0/8] memory: unify ioport registration,
Julien Grall <=
[Qemu-devel] [PATCH V8 5/8] hw/cirrus_vga.c: replace register_ioport*, Julien Grall, 2012/09/04
[Qemu-devel] [PATCH V8 3/8] smb: replace_register_ioport*, Julien Grall, 2012/09/04
[Qemu-devel] [PATCH V8 7/8] hw/pc.c: replace register_ioport*, Julien Grall, 2012/09/04
[Qemu-devel] [PATCH V8 2/8] hw/apm.c: replace register_ioport*, Julien Grall, 2012/09/04
[Qemu-devel] [PATCH V8 1/8] isa: add isa_address_space_io, Julien Grall, 2012/09/04