qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/22] isa: Resolve unneeded IRQ attributes from ISADevice
@ 2022-02-22 17:37 Bernhard Beschow
  2022-02-22 17:37 ` [PATCH 01/22] hw/rtc/mc146818rtc: QOM'ify IRQ number Bernhard Beschow
                   ` (21 more replies)
  0 siblings, 22 replies; 25+ messages in thread
From: Bernhard Beschow @ 2022-02-22 17:37 UTC (permalink / raw)
  To: qemu-devel; +Cc: Bernhard Beschow

The IRQ attributes of ISADevice are hardcoded to support up to two IRQs per
device which creates an artificial limit. By not having the attributes in the
first place, this limitation can be avoided altogether.

The IRQ attributes are mostly used for printing ('info qtree') and there is one
user, hw/ppc/pnv, to use the attributes directly. As it turns out, the printing
is redundant if the IRQ numbers are exposed as QOM properties and hw/ppc/pnv
can be easily ported away.

The patch series is structured as follows: Patch 1-3 QOM'ify the last devices
which rely on printing their IRQ numbers via the ISADevice attributes. Patch
4 and 5 remove the last users of the ISADevice attributes such that they can be
removed in patch 6. The remainder of the patch series is cleanup.

Patch 6 turns isa_init_irq() into a trivial wrapper for isa_get_irq(). That is,
the former function becomes redundant. All users are therefore converted to use
isa_get_irq() directly. Finally, the last patch removes the now unused
isa_init_irq().

Bernhard Beschow (22):
  hw/rtc/mc146818rtc: QOM'ify IRQ number
  hw/rtc/m48t59-isa: QOM'ify IRQ number
  hw/input/pckbd: QOM'ify IRQ numbers
  hw/isa/isa-bus: Remove isabus_dev_print()
  hw/ppc/pnv: Determine ns16550's IRQ number from QOM property
  isa: Drop unused attributes from ISADevice
  hw/audio/cs4231a: Disuse isa_init_irq()
  hw/audio/gus: Disuse isa_init_irq()
  hw/audio/sb16: Disuse isa_init_irq()
  hw/block/fdc-isa: Disuse isa_init_irq()
  hw/char/parallel: Disuse isa_init_irq()
  hw/char/serial-isa: Disuse isa_init_irq()
  hw/ide/isa: Disuse isa_init_irq()
  hw/input/pckbd: Disuse isa_init_irq()
  hw/ipmi/isa_ipmi_bt: Disuse isa_init_irq()
  hw/ipmi/isa_ipmi_kcs: Disuse isa_init_irq()
  hw/isa/piix4: Disuse isa_init_irq()
  hw/net/ne2000-isa: Disuse isa_init_irq()
  hw/rtc/m48t59-isa: Disuse isa_init_irq()
  hw/tpm/tpm_tis_isa: Disuse isa_init_irq()
  hw/isa/isa-bus: Disuse isa_init_irq()
  isa: Remove unused isa_init_irq()

 hw/audio/cs4231a.c           |  2 +-
 hw/audio/gus.c               |  2 +-
 hw/audio/sb16.c              |  2 +-
 hw/block/fdc-isa.c           |  2 +-
 hw/char/parallel.c           |  2 +-
 hw/char/serial-isa.c         |  2 +-
 hw/ide/isa.c                 |  2 +-
 hw/input/pckbd.c             | 13 +++++++++----
 hw/ipmi/isa_ipmi_bt.c        |  2 +-
 hw/ipmi/isa_ipmi_kcs.c       |  2 +-
 hw/isa/isa-bus.c             | 37 +-----------------------------------
 hw/isa/piix4.c               |  2 +-
 hw/net/ne2000-isa.c          |  2 +-
 hw/ppc/pnv.c                 |  5 ++++-
 hw/rtc/m48t59-isa.c          |  4 +++-
 hw/rtc/mc146818rtc.c         |  8 ++++++--
 hw/tpm/tpm_tis_isa.c         |  2 +-
 include/hw/isa/isa.h         |  3 ---
 include/hw/rtc/mc146818rtc.h |  1 +
 tests/qemu-iotests/172.out   | 26 -------------------------
 20 files changed, 36 insertions(+), 85 deletions(-)

-- 
2.35.1



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

end of thread, other threads:[~2022-02-22 18:04 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-02-22 17:37 [PATCH 00/22] isa: Resolve unneeded IRQ attributes from ISADevice Bernhard Beschow
2022-02-22 17:37 ` [PATCH 01/22] hw/rtc/mc146818rtc: QOM'ify IRQ number Bernhard Beschow
2022-02-22 17:37 ` [PATCH 02/22] hw/rtc/m48t59-isa: " Bernhard Beschow
2022-02-22 17:47   ` Peter Maydell
2022-02-22 17:54     ` Bernhard Beschow
2022-02-22 17:38 ` [PATCH 03/22] hw/input/pckbd: QOM'ify IRQ numbers Bernhard Beschow
2022-02-22 17:38 ` [PATCH 04/22] hw/isa/isa-bus: Remove isabus_dev_print() Bernhard Beschow
2022-02-22 17:38 ` [PATCH 05/22] hw/ppc/pnv: Determine ns16550's IRQ number from QOM property Bernhard Beschow
2022-02-22 17:38 ` [PATCH 06/22] isa: Drop unused attributes from ISADevice Bernhard Beschow
2022-02-22 17:38 ` [PATCH 07/22] hw/audio/cs4231a: Disuse isa_init_irq() Bernhard Beschow
2022-02-22 17:38 ` [PATCH 08/22] hw/audio/gus: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 09/22] hw/audio/sb16: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 10/22] hw/block/fdc-isa: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 11/22] hw/char/parallel: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 12/22] hw/char/serial-isa: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 13/22] hw/ide/isa: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 14/22] hw/input/pckbd: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 15/22] hw/ipmi/isa_ipmi_bt: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 16/22] hw/ipmi/isa_ipmi_kcs: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 17/22] hw/isa/piix4: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 18/22] hw/net/ne2000-isa: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 19/22] hw/rtc/m48t59-isa: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 20/22] hw/tpm/tpm_tis_isa: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 21/22] hw/isa/isa-bus: " Bernhard Beschow
2022-02-22 17:38 ` [PATCH 22/22] isa: Remove unused isa_init_irq() Bernhard Beschow

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).