On 5/18/20 7:04 AM, Markus Armbruster wrote: > pnv_chip_power8_instance_init() creates a "pnv-psi-POWER8" sysbus > device in a way that leaves it unplugged. > pnv_chip_power9_instance_init() and pnv_chip_power10_instance_init() > do the same for "pnv-psi-POWER9" and "pnv-psi-POWER10", respectively. > > These devices aren't actually sysbus devices. Correct that.
I might have done things wrong regarding sysbus in the PowerNV machine. For some devices (PHBs), I have added : qdev_set_parent_bus(DEVICE(...), sysbus_get_default()); Should we do the same for the PSI device ? Thanks, C. > > Cc: "Cédric Le Goater" <c...@kaod.org> > Cc: David Gibson <da...@gibson.dropbear.id.au> > Cc: qemu-...@nongnu.org > Signed-off-by: Markus Armbruster <arm...@redhat.com> > --- > include/hw/ppc/pnv_psi.h | 2 +- > hw/ppc/pnv_psi.c | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/include/hw/ppc/pnv_psi.h b/include/hw/ppc/pnv_psi.h > index f0f5b55197..979fc59f33 100644 > --- a/include/hw/ppc/pnv_psi.h > +++ b/include/hw/ppc/pnv_psi.h > @@ -31,7 +31,7 @@ > #define PSIHB_XSCOM_MAX 0x20 > > typedef struct PnvPsi { > - SysBusDevice parent; > + DeviceState parent; > > MemoryRegion regs_mr; > uint64_t bar; > diff --git a/hw/ppc/pnv_psi.c b/hw/ppc/pnv_psi.c > index cfd5b7bc25..82f0769465 100644 > --- a/hw/ppc/pnv_psi.c > +++ b/hw/ppc/pnv_psi.c > @@ -943,7 +943,7 @@ static void pnv_psi_class_init(ObjectClass *klass, void > *data) > > static const TypeInfo pnv_psi_info = { > .name = TYPE_PNV_PSI, > - .parent = TYPE_SYS_BUS_DEVICE, > + .parent = TYPE_DEVICE, > .instance_size = sizeof(PnvPsi), > .class_init = pnv_psi_class_init, > .class_size = sizeof(PnvPsiClass), >