qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/18] hw/ide: Untangle ISA/PCI abuses of ide_init_ioport()
@ 2023-02-15 16:16 Philippe Mathieu-Daudé
  2023-02-15 16:16 ` [PATCH v2 01/18] hw/isa: Rename isa_get_dma() -> isa_bus_get_dma() Philippe Mathieu-Daudé
                   ` (18 more replies)
  0 siblings, 19 replies; 35+ messages in thread
From: Philippe Mathieu-Daudé @ 2023-02-15 16:16 UTC (permalink / raw)
  To: qemu-devel
  Cc: Hervé Poussineau, Philippe Mathieu-Daudé, qemu-block,
	John Snow, Eduardo Habkost, Paolo Bonzini, Kevin Wolf, qemu-ppc,
	Hanna Reitz, Michael S. Tsirkin, Richard Henderson, Gerd Hoffmann

Background thread:
https://lore.kernel.org/qemu-devel/5095dffc-309b-6c72-d255-8cdaa6fd3d52@ilande.co.uk/

This series:
- contains few ISA cleanups
- exposes PIIX IDE output IRQs and wires them in parent (PC/Malta)
- renames the current ide_init_ioport() as ide_init_ioport_isa()
- adds a generic ide_init_ioport() which works with PCI devices
- remove ISA bus singleton.

This is required to proceed with more PIIX cleanups.

ide_drive_get() will be remove in a future series.

Based-on: <20230215112712.23110-1-philmd@linaro.org>
          "hw/ide: QOM/QDev housekeeping"
https://lore.kernel.org/qemu-devel/20230215112712.23110-1-philmd@linaro.org/

v1: https://lore.kernel.org/qemu-devel/20230208000743.79415-1-philmd@linaro.org/

Philippe Mathieu-Daudé (18):
  hw/isa: Rename isa_get_dma() -> isa_bus_get_dma()
  hw/isa: Factor isa_bus_get_irq() out of isa_get_irq()
  hw: Replace isa_get_irq() by isa_bus_get_irq() when ISABus is
    available
  hw/ide/piix: Expose output IRQ as properties for late object
    population
  hw/i386/pc_piix: Wire PIIX3 IDE ouput IRQs to ISA bus IRQs 14/15
  hw/isa/piix4: Wire PIIX4 IDE ouput IRQs to ISA bus IRQs 14/15
  hw/ide/piix: Ensure IDE output IRQs are wired at realization
  hw/isa: Deprecate isa_get_irq() in favor of isa_bus_get_irq()
  hw/isa: Simplify isa_address_space[_io]()
  hw/isa: Use isa_address_space_io() in isa_register_ioport()
  hw/ide: Declare ide_get_[geometry/bios_chs_trans] in
    'hw/ide/internal.h'
  hw/ide: Rename ISA specific ide_init_ioport -> ide_bus_init_ioport_isa
  hw/ide: Introduce generic ide_init_ioport()
  hw/ide/piix: Use generic ide_bus_init_ioport()
  hw/isa: Ensure isa_register_portio_list() do not get NULL ISA device
  hw/isa: Reduce 'isabus' singleton scope to isa_bus_new()
  hw/isa: Un-inline isa_bus_from_device()
  hw/isa: Remove empty ISADeviceClass structure

 hw/audio/cs4231a.c                |  5 +--
 hw/audio/gus.c                    |  5 +--
 hw/audio/sb16.c                   |  7 ++--
 hw/block/fdc-isa.c                |  5 +--
 hw/dma/i82374.c                   |  2 +-
 hw/i386/pc.c                      |  3 +-
 hw/i386/pc_piix.c                 |  8 ++++-
 hw/ide/ioport.c                   | 16 +++++++--
 hw/ide/isa.c                      |  2 +-
 hw/ide/piix.c                     | 33 ++++++++++++-------
 hw/isa/isa-bus.c                  | 55 ++++++++++++++++---------------
 hw/isa/piix4.c                    |  2 ++
 hw/rtc/m48t59-isa.c               |  2 +-
 include/hw/ide.h                  |  4 ---
 include/hw/ide/internal.h         |  7 +++-
 include/hw/ide/isa.h              |  3 ++
 include/hw/ide/pci.h              |  1 +
 include/hw/ide/piix.h             |  4 +++
 include/hw/isa/i8259_internal.h   |  2 +-
 include/hw/isa/isa.h              | 26 ++++++++-------
 include/hw/isa/superio.h          |  2 +-
 include/hw/timer/i8254.h          |  3 +-
 include/hw/timer/i8254_internal.h |  2 +-
 23 files changed, 122 insertions(+), 77 deletions(-)

-- 
2.38.1



^ permalink raw reply	[flat|nested] 35+ messages in thread

end of thread, other threads:[~2023-02-27 22:28 UTC | newest]

Thread overview: 35+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-15 16:16 [PATCH v2 00/18] hw/ide: Untangle ISA/PCI abuses of ide_init_ioport() Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 01/18] hw/isa: Rename isa_get_dma() -> isa_bus_get_dma() Philippe Mathieu-Daudé
2023-02-24  8:42   ` Thomas Huth
2023-02-15 16:16 ` [PATCH v2 02/18] hw/isa: Factor isa_bus_get_irq() out of isa_get_irq() Philippe Mathieu-Daudé
2023-02-24  8:44   ` Thomas Huth
2023-02-15 16:16 ` [PATCH v2 03/18] hw: Replace isa_get_irq() by isa_bus_get_irq() when ISABus is available Philippe Mathieu-Daudé
2023-02-24  8:51   ` Thomas Huth
2023-02-15 16:16 ` [PATCH v2 04/18] hw/ide/piix: Expose output IRQ as properties for late object population Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 05/18] hw/i386/pc_piix: Wire PIIX3 IDE ouput IRQs to ISA bus IRQs 14/15 Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 06/18] hw/isa/piix4: Wire PIIX4 " Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 07/18] hw/ide/piix: Ensure IDE output IRQs are wired at realization Philippe Mathieu-Daudé
2023-02-16 14:43   ` Bernhard Beschow
2023-02-16 15:33     ` Philippe Mathieu-Daudé
2023-02-16 17:10       ` Bernhard Beschow
2023-02-19 21:54       ` Philippe Mathieu-Daudé
2023-02-20 23:49         ` Bernhard Beschow
2023-02-20 23:58           ` BALATON Zoltan
2023-02-21 11:45         ` Daniel P. Berrangé
2023-02-15 16:16 ` [PATCH v2 08/18] hw/isa: Deprecate isa_get_irq() in favor of isa_bus_get_irq() Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 09/18] hw/isa: Simplify isa_address_space[_io]() Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 10/18] hw/isa: Use isa_address_space_io() in isa_register_ioport() Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 11/18] hw/ide: Declare ide_get_[geometry/bios_chs_trans] in 'hw/ide/internal.h' Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 12/18] hw/ide: Rename ISA specific ide_init_ioport -> ide_bus_init_ioport_isa Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 13/18] hw/ide: Introduce generic ide_init_ioport() Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 14/18] hw/ide/piix: Use generic ide_bus_init_ioport() Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 15/18] hw/isa: Ensure isa_register_portio_list() do not get NULL ISA device Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 16/18] hw/isa: Reduce 'isabus' singleton scope to isa_bus_new() Philippe Mathieu-Daudé
2023-02-15 16:16 ` [PATCH v2 17/18] hw/isa: Un-inline isa_bus_from_device() Philippe Mathieu-Daudé
2023-02-16 15:28   ` Bernhard Beschow
2023-02-15 16:16 ` [PATCH v2 18/18] hw/isa: Remove empty ISADeviceClass structure Philippe Mathieu-Daudé
2023-02-16 15:28   ` Bernhard Beschow
2023-02-20  8:00 ` [PATCH v2 06.5/18] hw/ide/piix: Allow using PIIX3-IDE as standalone PCI function Philippe Mathieu-Daudé
2023-02-20  9:10   ` Gerd Hoffmann
2023-02-20  9:52     ` Philippe Mathieu-Daudé
2023-02-27 22:26       ` Philippe Mathieu-Daudé

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).