Message ID | 20211202144235.1276352-13-clg@kaod.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ppc/pnv: Add support for user created PHB3/PHB4 devices | expand |
On 12/2/21 11:42, Cédric Le Goater wrote: > This is not useful and will be in the way for support of user created > PHB4 devices. > > Signed-off-by: Cédric Le Goater <clg@kaod.org> > --- Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com> > hw/pci-host/pnv_phb4_pec.c | 6 +----- > hw/ppc/pnv.c | 2 -- > 2 files changed, 1 insertion(+), 7 deletions(-) > > diff --git a/hw/pci-host/pnv_phb4_pec.c b/hw/pci-host/pnv_phb4_pec.c > index a7dd4173d598..dfed2af0f7df 100644 > --- a/hw/pci-host/pnv_phb4_pec.c > +++ b/hw/pci-host/pnv_phb4_pec.c > @@ -124,7 +124,7 @@ static uint64_t pnv_pec_stk_nest_xscom_read(void *opaque, hwaddr addr, > static void pnv_pec_stk_update_map(PnvPhb4PecStack *stack) > { > PnvPhb4PecState *pec = stack->pec; > - MemoryRegion *sysmem = pec->system_memory; > + MemoryRegion *sysmem = get_system_memory(); > uint64_t bar_en = stack->nest_regs[PEC_NEST_STK_BAR_EN]; > uint64_t bar, mask, size; > char name[64]; > @@ -394,8 +394,6 @@ static void pnv_pec_realize(DeviceState *dev, Error **errp) > char name[64]; > int i; > > - assert(pec->system_memory); > - > if (pec->index >= PNV_CHIP_GET_CLASS(pec->chip)->num_pecs) { > error_setg(errp, "invalid PEC index: %d", pec->index); > return; > @@ -486,8 +484,6 @@ static Property pnv_pec_properties[] = { > DEFINE_PROP_UINT32("chip-id", PnvPhb4PecState, chip_id, 0), > DEFINE_PROP_LINK("chip", PnvPhb4PecState, chip, TYPE_PNV_CHIP, > PnvChip *), > - DEFINE_PROP_LINK("system-memory", PnvPhb4PecState, system_memory, > - TYPE_MEMORY_REGION, MemoryRegion *), > DEFINE_PROP_END_OF_LIST(), > }; > > diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c > index f8b0b2a28383..3a550eed0f36 100644 > --- a/hw/ppc/pnv.c > +++ b/hw/ppc/pnv.c > @@ -1383,8 +1383,6 @@ static void pnv_chip_power9_phb_realize(PnvChip *chip, Error **errp) > &error_fatal); > object_property_set_link(OBJECT(pec), "chip", OBJECT(chip), > &error_fatal); > - object_property_set_link(OBJECT(pec), "system-memory", > - OBJECT(get_system_memory()), &error_abort); > if (!qdev_realize(DEVICE(pec), NULL, errp)) { > return; > } >
On 02/12/2021 15:42, Cédric Le Goater wrote: > This is not useful and will be in the way for support of user created > PHB4 devices. > > Signed-off-by: Cédric Le Goater <clg@kaod.org> > --- I doubt I see all the implications here, but it doesn't look wrong to me, so: Reviewed-by: Frederic Barrat <fbarrat@linux.ibm.com> Fred > hw/pci-host/pnv_phb4_pec.c | 6 +----- > hw/ppc/pnv.c | 2 -- > 2 files changed, 1 insertion(+), 7 deletions(-) > > diff --git a/hw/pci-host/pnv_phb4_pec.c b/hw/pci-host/pnv_phb4_pec.c > index a7dd4173d598..dfed2af0f7df 100644 > --- a/hw/pci-host/pnv_phb4_pec.c > +++ b/hw/pci-host/pnv_phb4_pec.c > @@ -124,7 +124,7 @@ static uint64_t pnv_pec_stk_nest_xscom_read(void *opaque, hwaddr addr, > static void pnv_pec_stk_update_map(PnvPhb4PecStack *stack) > { > PnvPhb4PecState *pec = stack->pec; > - MemoryRegion *sysmem = pec->system_memory; > + MemoryRegion *sysmem = get_system_memory(); > uint64_t bar_en = stack->nest_regs[PEC_NEST_STK_BAR_EN]; > uint64_t bar, mask, size; > char name[64]; > @@ -394,8 +394,6 @@ static void pnv_pec_realize(DeviceState *dev, Error **errp) > char name[64]; > int i; > > - assert(pec->system_memory); > - > if (pec->index >= PNV_CHIP_GET_CLASS(pec->chip)->num_pecs) { > error_setg(errp, "invalid PEC index: %d", pec->index); > return; > @@ -486,8 +484,6 @@ static Property pnv_pec_properties[] = { > DEFINE_PROP_UINT32("chip-id", PnvPhb4PecState, chip_id, 0), > DEFINE_PROP_LINK("chip", PnvPhb4PecState, chip, TYPE_PNV_CHIP, > PnvChip *), > - DEFINE_PROP_LINK("system-memory", PnvPhb4PecState, system_memory, > - TYPE_MEMORY_REGION, MemoryRegion *), > DEFINE_PROP_END_OF_LIST(), > }; > > diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c > index f8b0b2a28383..3a550eed0f36 100644 > --- a/hw/ppc/pnv.c > +++ b/hw/ppc/pnv.c > @@ -1383,8 +1383,6 @@ static void pnv_chip_power9_phb_realize(PnvChip *chip, Error **errp) > &error_fatal); > object_property_set_link(OBJECT(pec), "chip", OBJECT(chip), > &error_fatal); > - object_property_set_link(OBJECT(pec), "system-memory", > - OBJECT(get_system_memory()), &error_abort); > if (!qdev_realize(DEVICE(pec), NULL, errp)) { > return; > } >
On 02/12/2021 15:42, Cédric Le Goater wrote: > This is not useful and will be in the way for support of user created > PHB4 devices. > > Signed-off-by: Cédric Le Goater <clg@kaod.org> > --- I forgot to mention the typo in the commit title: "he PHB4". Fred > hw/pci-host/pnv_phb4_pec.c | 6 +----- > hw/ppc/pnv.c | 2 -- > 2 files changed, 1 insertion(+), 7 deletions(-) > > diff --git a/hw/pci-host/pnv_phb4_pec.c b/hw/pci-host/pnv_phb4_pec.c > index a7dd4173d598..dfed2af0f7df 100644 > --- a/hw/pci-host/pnv_phb4_pec.c > +++ b/hw/pci-host/pnv_phb4_pec.c > @@ -124,7 +124,7 @@ static uint64_t pnv_pec_stk_nest_xscom_read(void *opaque, hwaddr addr, > static void pnv_pec_stk_update_map(PnvPhb4PecStack *stack) > { > PnvPhb4PecState *pec = stack->pec; > - MemoryRegion *sysmem = pec->system_memory; > + MemoryRegion *sysmem = get_system_memory(); > uint64_t bar_en = stack->nest_regs[PEC_NEST_STK_BAR_EN]; > uint64_t bar, mask, size; > char name[64]; > @@ -394,8 +394,6 @@ static void pnv_pec_realize(DeviceState *dev, Error **errp) > char name[64]; > int i; > > - assert(pec->system_memory); > - > if (pec->index >= PNV_CHIP_GET_CLASS(pec->chip)->num_pecs) { > error_setg(errp, "invalid PEC index: %d", pec->index); > return; > @@ -486,8 +484,6 @@ static Property pnv_pec_properties[] = { > DEFINE_PROP_UINT32("chip-id", PnvPhb4PecState, chip_id, 0), > DEFINE_PROP_LINK("chip", PnvPhb4PecState, chip, TYPE_PNV_CHIP, > PnvChip *), > - DEFINE_PROP_LINK("system-memory", PnvPhb4PecState, system_memory, > - TYPE_MEMORY_REGION, MemoryRegion *), > DEFINE_PROP_END_OF_LIST(), > }; > > diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c > index f8b0b2a28383..3a550eed0f36 100644 > --- a/hw/ppc/pnv.c > +++ b/hw/ppc/pnv.c > @@ -1383,8 +1383,6 @@ static void pnv_chip_power9_phb_realize(PnvChip *chip, Error **errp) > &error_fatal); > object_property_set_link(OBJECT(pec), "chip", OBJECT(chip), > &error_fatal); > - object_property_set_link(OBJECT(pec), "system-memory", > - OBJECT(get_system_memory()), &error_abort); > if (!qdev_realize(DEVICE(pec), NULL, errp)) { > return; > } >
On 12/7/21 11:08, Frederic Barrat wrote: > > > On 02/12/2021 15:42, Cédric Le Goater wrote: >> This is not useful and will be in the way for support of user created >> PHB4 devices. >> >> Signed-off-by: Cédric Le Goater <clg@kaod.org> >> --- > > > I doubt I see all the implications here, It is good practice to avoid statics in models or calls like get_system_memory() or qdev_get_machine(). With dynamic models, it becomes more complex. Thanks, C. > but it doesn't look wrong to me, so: > Reviewed-by: Frederic Barrat <fbarrat@linux.ibm.com> > > Fred > > >> hw/pci-host/pnv_phb4_pec.c | 6 +----- >> hw/ppc/pnv.c | 2 -- >> 2 files changed, 1 insertion(+), 7 deletions(-) >> >> diff --git a/hw/pci-host/pnv_phb4_pec.c b/hw/pci-host/pnv_phb4_pec.c >> index a7dd4173d598..dfed2af0f7df 100644 >> --- a/hw/pci-host/pnv_phb4_pec.c >> +++ b/hw/pci-host/pnv_phb4_pec.c >> @@ -124,7 +124,7 @@ static uint64_t pnv_pec_stk_nest_xscom_read(void *opaque, hwaddr addr, >> static void pnv_pec_stk_update_map(PnvPhb4PecStack *stack) >> { >> PnvPhb4PecState *pec = stack->pec; >> - MemoryRegion *sysmem = pec->system_memory; >> + MemoryRegion *sysmem = get_system_memory(); >> uint64_t bar_en = stack->nest_regs[PEC_NEST_STK_BAR_EN]; >> uint64_t bar, mask, size; >> char name[64]; >> @@ -394,8 +394,6 @@ static void pnv_pec_realize(DeviceState *dev, Error **errp) >> char name[64]; >> int i; >> - assert(pec->system_memory); >> - >> if (pec->index >= PNV_CHIP_GET_CLASS(pec->chip)->num_pecs) { >> error_setg(errp, "invalid PEC index: %d", pec->index); >> return; >> @@ -486,8 +484,6 @@ static Property pnv_pec_properties[] = { >> DEFINE_PROP_UINT32("chip-id", PnvPhb4PecState, chip_id, 0), >> DEFINE_PROP_LINK("chip", PnvPhb4PecState, chip, TYPE_PNV_CHIP, >> PnvChip *), >> - DEFINE_PROP_LINK("system-memory", PnvPhb4PecState, system_memory, >> - TYPE_MEMORY_REGION, MemoryRegion *), >> DEFINE_PROP_END_OF_LIST(), >> }; >> diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c >> index f8b0b2a28383..3a550eed0f36 100644 >> --- a/hw/ppc/pnv.c >> +++ b/hw/ppc/pnv.c >> @@ -1383,8 +1383,6 @@ static void pnv_chip_power9_phb_realize(PnvChip *chip, Error **errp) >> &error_fatal); >> object_property_set_link(OBJECT(pec), "chip", OBJECT(chip), >> &error_fatal); >> - object_property_set_link(OBJECT(pec), "system-memory", >> - OBJECT(get_system_memory()), &error_abort); >> if (!qdev_realize(DEVICE(pec), NULL, errp)) { >> return; >> } >>
diff --git a/hw/pci-host/pnv_phb4_pec.c b/hw/pci-host/pnv_phb4_pec.c index a7dd4173d598..dfed2af0f7df 100644 --- a/hw/pci-host/pnv_phb4_pec.c +++ b/hw/pci-host/pnv_phb4_pec.c @@ -124,7 +124,7 @@ static uint64_t pnv_pec_stk_nest_xscom_read(void *opaque, hwaddr addr, static void pnv_pec_stk_update_map(PnvPhb4PecStack *stack) { PnvPhb4PecState *pec = stack->pec; - MemoryRegion *sysmem = pec->system_memory; + MemoryRegion *sysmem = get_system_memory(); uint64_t bar_en = stack->nest_regs[PEC_NEST_STK_BAR_EN]; uint64_t bar, mask, size; char name[64]; @@ -394,8 +394,6 @@ static void pnv_pec_realize(DeviceState *dev, Error **errp) char name[64]; int i; - assert(pec->system_memory); - if (pec->index >= PNV_CHIP_GET_CLASS(pec->chip)->num_pecs) { error_setg(errp, "invalid PEC index: %d", pec->index); return; @@ -486,8 +484,6 @@ static Property pnv_pec_properties[] = { DEFINE_PROP_UINT32("chip-id", PnvPhb4PecState, chip_id, 0), DEFINE_PROP_LINK("chip", PnvPhb4PecState, chip, TYPE_PNV_CHIP, PnvChip *), - DEFINE_PROP_LINK("system-memory", PnvPhb4PecState, system_memory, - TYPE_MEMORY_REGION, MemoryRegion *), DEFINE_PROP_END_OF_LIST(), }; diff --git a/hw/ppc/pnv.c b/hw/ppc/pnv.c index f8b0b2a28383..3a550eed0f36 100644 --- a/hw/ppc/pnv.c +++ b/hw/ppc/pnv.c @@ -1383,8 +1383,6 @@ static void pnv_chip_power9_phb_realize(PnvChip *chip, Error **errp) &error_fatal); object_property_set_link(OBJECT(pec), "chip", OBJECT(chip), &error_fatal); - object_property_set_link(OBJECT(pec), "system-memory", - OBJECT(get_system_memory()), &error_abort); if (!qdev_realize(DEVICE(pec), NULL, errp)) { return; }
This is not useful and will be in the way for support of user created PHB4 devices. Signed-off-by: Cédric Le Goater <clg@kaod.org> --- hw/pci-host/pnv_phb4_pec.c | 6 +----- hw/ppc/pnv.c | 2 -- 2 files changed, 1 insertion(+), 7 deletions(-)