Previous work on PHB hotplug was last posted more than one year ago:

https://lists.gnu.org/archive/html/qemu-devel/2017-07/msg07906.html

Quite a few significant changes happened since then:
- fixed PHB indexes
- fixed IRQ numbers for LSIs
- SLOF capable of updating the FDT in QEMU
- XIVE

First step in this new series is to teach QEMU how to get the FDT from
SLOF thanks to the recent patch from Alexey, rebased against David's
ppc-for-4.0 branch (SHA1: 11ce774130e7).

Most of the other patches come from the previous version with minor
modifications, but I guess even the ones with Reviewed-by tags deserve
to be reviewed again in case I've missed something.

Finally, the XIVE and XICS backends are changed to expose the name of
the interrupt controller node in the device tree. The machine code can
then exploit this to reach out to its phandle property, in case it got
changed by SLOF. This is needed to wire up interrupts during hotplug.

This was only lightly tested at the moment. I'll post about that later.

Please comment.

Cheers,

--
Greg

---

Alexey Kardashevskiy (1):
      ppc/spapr: Receive and store device tree blob from SLOF

Greg Kurz (4):
      spapr: move spapr_create_phb() to core machine code
      spapr_pci: add proper rollback on PHB realize error path
      spapr_pci: Define SPAPR_MAX_PHBS in hw/pci-host/spapr.h
      spapr: Expose the name of the interrupt controller node

Michael Roth (9):
      pci: allow cleanup/unregistration of PCI buses
      spapr_pci: add PHB unrealize
      spapr: enable PHB hotplug for default pseries machine type
      spapr: create DR connectors for PHBs
      spapr_events: add support for phb hotplug events
      qdev: pass an Object * to qbus_set_hotplug_handler()
      spapr_pci: provide node start offset via spapr_populate_pci_dt()
      spapr_pci: add ibm, my-drc-index property for PHB hotplug
      spapr: add hotplug hooks for PHB hotplug

Nathan Fontenot (1):
      spapr: populate PHB DRC entries for root DT node


 configure                     |    2 
 hw/acpi/piix4.c               |    2 
 hw/char/virtio-serial-bus.c   |    2 
 hw/core/bus.c                 |   11 --
 hw/intc/spapr_xive.c          |    9 +-
 hw/intc/xics_spapr.c          |    9 +-
 hw/pci/pci.c                  |   33 ++++++
 hw/pci/pcie.c                 |    2 
 hw/pci/shpc.c                 |    2 
 hw/ppc/spapr.c                |  230 ++++++++++++++++++++++++++++++++++++++++-
 hw/ppc/spapr_drc.c            |   18 +++
 hw/ppc/spapr_events.c         |    3 +
 hw/ppc/spapr_hcall.c          |   42 +++++++
 hw/ppc/spapr_irq.c            |    3 +
 hw/ppc/spapr_pci.c            |  139 +++++++++++++++++++------
 hw/ppc/trace-events           |    3 +
 hw/s390x/css-bridge.c         |    2 
 hw/s390x/s390-pci-bus.c       |    6 +
 hw/scsi/virtio-scsi.c         |    2 
 hw/scsi/vmw_pvscsi.c          |    2 
 hw/usb/dev-smartcard-reader.c |    2 
 include/hw/pci-host/spapr.h   |   14 ++
 include/hw/pci/pci.h          |    3 +
 include/hw/ppc/spapr.h        |    9 +-
 include/hw/ppc/spapr_drc.h    |    8 +
 include/hw/ppc/spapr_irq.h    |    1 
 include/hw/ppc/spapr_xive.h   |    1 
 include/hw/ppc/xics.h         |    1 
 include/hw/qdev-core.h        |    3 -
 29 files changed, 491 insertions(+), 73 deletions(-)


Reply via email to