summaryrefslogtreecommitdiffstats
path: root/hw/ppc/pnv_psi.c
diff options
context:
space:
mode:
Diffstat (limited to 'hw/ppc/pnv_psi.c')
-rw-r--r--hw/ppc/pnv_psi.c22
1 files changed, 7 insertions, 15 deletions
diff --git a/hw/ppc/pnv_psi.c b/hw/ppc/pnv_psi.c
index 75b8ae9703..5bdeec700e 100644
--- a/hw/ppc/pnv_psi.c
+++ b/hw/ppc/pnv_psi.c
@@ -501,18 +501,14 @@ static void pnv_psi_power8_realize(DeviceState *dev, Error **errp)
{
PnvPsi *psi = PNV_PSI(dev);
ICSState *ics = &PNV8_PSI(psi)->ics;
- Error *err = NULL;
unsigned int i;
/* Create PSI interrupt control source */
- object_property_set_int(OBJECT(ics), PSI_NUM_INTERRUPTS, "nr-irqs", &err);
- if (err) {
- error_propagate(errp, err);
+ if (!object_property_set_int(OBJECT(ics), "nr-irqs", PSI_NUM_INTERRUPTS,
+ errp)) {
return;
}
- qdev_realize(DEVICE(ics), NULL, &err);
- if (err) {
- error_propagate(errp, err);
+ if (!qdev_realize(DEVICE(ics), NULL, errp)) {
return;
}
@@ -842,18 +838,14 @@ static void pnv_psi_power9_realize(DeviceState *dev, Error **errp)
{
PnvPsi *psi = PNV_PSI(dev);
XiveSource *xsrc = &PNV9_PSI(psi)->source;
- Error *local_err = NULL;
int i;
/* This is the only device with 4k ESB pages */
- object_property_set_int(OBJECT(xsrc), XIVE_ESB_4K, "shift",
+ object_property_set_int(OBJECT(xsrc), "shift", XIVE_ESB_4K, &error_fatal);
+ object_property_set_int(OBJECT(xsrc), "nr-irqs", PSIHB9_NUM_IRQS,
&error_fatal);
- object_property_set_int(OBJECT(xsrc), PSIHB9_NUM_IRQS, "nr-irqs",
- &error_fatal);
- object_property_set_link(OBJECT(xsrc), OBJECT(psi), "xive", &error_abort);
- qdev_realize(DEVICE(xsrc), NULL, &local_err);
- if (local_err) {
- error_propagate(errp, local_err);
+ object_property_set_link(OBJECT(xsrc), "xive", OBJECT(psi), &error_abort);
+ if (!qdev_realize(DEVICE(xsrc), NULL, errp)) {
return;
}