mirror of https://github.com/xemu-project/xemu.git
ppc/pnv: Remove PHB4 version property
Grab the PHB version from the PEC class directly when needed. Signed-off-by: Cédric Le Goater <clg@kaod.org> Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com> Message-Id: <20220117122753.1655504-4-clg@kaod.org> Signed-off-by: Cédric Le Goater <clg@kaod.org>
This commit is contained in:
parent
32a07887be
commit
ba49190107
|
@ -672,7 +672,7 @@ static uint64_t pnv_phb4_reg_read(void *opaque, hwaddr off, unsigned size)
|
||||||
|
|
||||||
switch (off) {
|
switch (off) {
|
||||||
case PHB_VERSION:
|
case PHB_VERSION:
|
||||||
return phb->version;
|
return PNV_PHB4_PEC_GET_CLASS(phb->pec)->version;
|
||||||
|
|
||||||
/* Read-only */
|
/* Read-only */
|
||||||
case PHB_PHB4_GEN_CAP:
|
case PHB_PHB4_GEN_CAP:
|
||||||
|
@ -1575,7 +1575,6 @@ static void pnv_phb4_realize(DeviceState *dev, Error **errp)
|
||||||
if (!phb->pec) {
|
if (!phb->pec) {
|
||||||
PnvMachineState *pnv = PNV_MACHINE(qdev_get_machine());
|
PnvMachineState *pnv = PNV_MACHINE(qdev_get_machine());
|
||||||
PnvChip *chip = pnv_get_chip(pnv, phb->chip_id);
|
PnvChip *chip = pnv_get_chip(pnv, phb->chip_id);
|
||||||
PnvPhb4PecClass *pecc;
|
|
||||||
BusState *s;
|
BusState *s;
|
||||||
|
|
||||||
if (!chip) {
|
if (!chip) {
|
||||||
|
@ -1589,11 +1588,6 @@ static void pnv_phb4_realize(DeviceState *dev, Error **errp)
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* All other phb properties are already set */
|
|
||||||
pecc = PNV_PHB4_PEC_GET_CLASS(phb->pec);
|
|
||||||
object_property_set_int(OBJECT(phb), "version", pecc->version,
|
|
||||||
&error_fatal);
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Reparent user created devices to the chip to build
|
* Reparent user created devices to the chip to build
|
||||||
* correctly the device tree.
|
* correctly the device tree.
|
||||||
|
@ -1688,7 +1682,6 @@ static void pnv_phb4_xive_notify(XiveNotifier *xf, uint32_t srcno)
|
||||||
static Property pnv_phb4_properties[] = {
|
static Property pnv_phb4_properties[] = {
|
||||||
DEFINE_PROP_UINT32("index", PnvPHB4, phb_id, 0),
|
DEFINE_PROP_UINT32("index", PnvPHB4, phb_id, 0),
|
||||||
DEFINE_PROP_UINT32("chip-id", PnvPHB4, chip_id, 0),
|
DEFINE_PROP_UINT32("chip-id", PnvPHB4, chip_id, 0),
|
||||||
DEFINE_PROP_UINT64("version", PnvPHB4, version, 0),
|
|
||||||
DEFINE_PROP_LINK("pec", PnvPHB4, pec, TYPE_PNV_PHB4_PEC,
|
DEFINE_PROP_LINK("pec", PnvPHB4, pec, TYPE_PNV_PHB4_PEC,
|
||||||
PnvPhb4PecState *),
|
PnvPhb4PecState *),
|
||||||
DEFINE_PROP_END_OF_LIST(),
|
DEFINE_PROP_END_OF_LIST(),
|
||||||
|
|
|
@ -117,7 +117,6 @@ static void pnv_pec_default_phb_realize(PnvPhb4PecState *pec,
|
||||||
Error **errp)
|
Error **errp)
|
||||||
{
|
{
|
||||||
PnvPHB4 *phb = PNV_PHB4(qdev_new(TYPE_PNV_PHB4));
|
PnvPHB4 *phb = PNV_PHB4(qdev_new(TYPE_PNV_PHB4));
|
||||||
PnvPhb4PecClass *pecc = PNV_PHB4_PEC_GET_CLASS(pec);
|
|
||||||
int phb_id = pnv_phb4_pec_get_phb_id(pec, stack_no);
|
int phb_id = pnv_phb4_pec_get_phb_id(pec, stack_no);
|
||||||
|
|
||||||
object_property_set_link(OBJECT(phb), "pec", OBJECT(pec),
|
object_property_set_link(OBJECT(phb), "pec", OBJECT(pec),
|
||||||
|
@ -126,8 +125,6 @@ static void pnv_pec_default_phb_realize(PnvPhb4PecState *pec,
|
||||||
&error_fatal);
|
&error_fatal);
|
||||||
object_property_set_int(OBJECT(phb), "index", phb_id,
|
object_property_set_int(OBJECT(phb), "index", phb_id,
|
||||||
&error_fatal);
|
&error_fatal);
|
||||||
object_property_set_int(OBJECT(phb), "version", pecc->version,
|
|
||||||
&error_fatal);
|
|
||||||
|
|
||||||
if (!sysbus_realize(SYS_BUS_DEVICE(phb), errp)) {
|
if (!sysbus_realize(SYS_BUS_DEVICE(phb), errp)) {
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in New Issue