Hi All,

So phase one was the QOMification of qemu_irq. This is the next step.
We start to setup GPIOs as proper QOM objects. Inputs are child objects
of their device. Outputs are settable Links and connection is made
via proper setting of a QOM link.

We then cleanup Sysbus to simply re-use device level GPIOs and get rid
of it's special IRQ handling code.

Depends of my pending QOM array property stuff (the "[*]" series):

https://lists.nongnu.org/archive/html/qemu-devel/2014-07/msg04116.html


Peter Crosthwaite (16):
  qdev: gpio: Don't allow name share between I and O
  qdev: gpio: Register GPIO inputs as child objects
  qdev: gpio: Register GPIO outputs as QOM links
  qmp: qstring: Handle NULL strings
  qom: Allow clearing of a Link property
  qom: Demote already-has-a-parent to a regular error
  qdev: gpio: Re-impement qdev_connect_gpio QOM style
  qdev: gpio: Add API for intercepting an IRQ
  qtest/irq: Rework IRQ interception
  irq: Remove qemu_irq_intercept_out
  qdev: gpio: delete NamedGPIOList::out
  qdev: gpio: Remove qdev_init_gpio_out x1 restriction
  qdev: gpio: Define qdev_pass_gpios()
  ssi: xilinx_spi: Initialise CS GPIOs as NULL
  ppc: convert g_new(qemu_irq usages to g_new0
  sysbus: Use TYPE_DEVICE GPIO functionality

 hw/core/irq.c          |  8 +----
 hw/core/qdev.c         | 89 ++++++++++++++++++++++++++++++++++++++++++++++----
 hw/core/sysbus.c       | 20 ++----------
 hw/intc/openpic.c      |  2 +-
 hw/ppc/e500.c          |  2 +-
 hw/ppc/mac_newworld.c  |  2 +-
 hw/ssi/xilinx_spi.c    |  2 +-
 include/hw/irq.h       |  1 -
 include/hw/qdev-core.h |  6 +++-
 include/hw/sysbus.h    |  6 ++--
 qobject/qstring.c      | 12 ++++---
 qom/object.c           | 10 ++++--
 qtest.c                | 11 ++++---
 13 files changed, 120 insertions(+), 51 deletions(-)

-- 
2.0.1.1.gfbfc394


Reply via email to