mbox series

[00/10] ppc/pnv: remove the use of qdev_get_machine() and get_system_memory()

Message ID 20191219073001.26790-1-clg@kaod.org (mailing list archive)
Headers show
Series ppc/pnv: remove the use of qdev_get_machine() and get_system_memory() | expand

Message

Cédric Le Goater Dec. 19, 2019, 7:29 a.m. UTC
Hello,

The PowerNV and sPAPR machine use qdev_get_machine() and
get_system_memory() in some places. This is not a good modeling
pratice and it should be avoided. This series replaces the uses of
these routines with a set of QOM properties and aliases.

The work is mostly complete. We still need to link the XiveTCTX to its
XiveRouter or XivePresenter under the sPAPR machine.

Thanks,

C.

Cédric Le Goater (4):
  ppc/pnv: Modify the powerdown notifier to get the PowerNV machine
  ppc/pnv: Introduce a "system-memory" property
  ppc/pnv: Introduce a "xics" property alias under the PSI model
  ppc/pnv: Introduce a "xics" property under the POWER8 chip

Greg Kurz (6):
  spapr/xive: Use device_class_set_parent_realize()
  pnv/xive: Use device_class_set_parent_realize()
  spapr, pnv, xive: Add a "xive-fabric" link to the XIVE router
  xive: Use the XIVE fabric link under the XIVE router
  ppc/pnv: Add an "nr-threads" property to the base chip class
  ppc/pnv: Add a "pnor" const link property to the BMC internal
    simulator

 include/hw/ppc/pnv.h        |  7 +++-
 include/hw/ppc/pnv_psi.h    |  1 +
 include/hw/ppc/pnv_xive.h   | 12 ++++++
 include/hw/ppc/spapr_xive.h | 10 +++++
 include/hw/ppc/xive.h       |  5 ++-
 hw/intc/pnv_xive.c          | 15 +++++++-
 hw/intc/spapr_xive.c        | 12 +++++-
 hw/intc/xive.c              | 22 +++++++++--
 hw/ppc/pnv.c                | 75 ++++++++++++++++++++++++++++---------
 hw/ppc/pnv_bmc.c            |  8 ++--
 hw/ppc/pnv_psi.c            | 22 +++++------
 hw/ppc/spapr_irq.c          |  2 +
 12 files changed, 151 insertions(+), 40 deletions(-)