From: Markus Armbruster Date: Tue, 19 Jan 2021 12:01:51 +0000 (+0100) Subject: hw/usb: Convert to qdev_realize() X-Git-Tag: v6.0.0-rc0~132^2~5 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c3585b600bae4e67867aac73e03a3edf38ec8f1f;p=thirdparty%2Fqemu.git hw/usb: Convert to qdev_realize() Device code shouldn't mess with QOM property "realized" since we have proper interfaces (merge commit 6675a653). Commit 8ddab8dd3d "usb/hcd-xhci: Split pci wrapper for xhci base model" and commit f00ff136ee "usb: hcd-xhci-sysbus: Attach xhci to sysbus device" reintroduced two instances. Clean them up. Note that s->xhci is a (bus-less) TYPE_XHCI device. Signed-off-by: Markus Armbruster Reviewed-by: Philippe Mathieu-Daudé Message-Id: <20210119120151.53757-1-armbru@redhat.com> Signed-off-by: Gerd Hoffmann --- diff --git a/hw/usb/hcd-xhci-pci.c b/hw/usb/hcd-xhci-pci.c index bba628d3d23..9421734d0fe 100644 --- a/hw/usb/hcd-xhci-pci.c +++ b/hw/usb/hcd-xhci-pci.c @@ -115,9 +115,7 @@ static void usb_xhci_pci_realize(struct PCIDevice *dev, Error **errp) object_property_set_link(OBJECT(&s->xhci), "host", OBJECT(s), NULL); s->xhci.intr_update = xhci_pci_intr_update; s->xhci.intr_raise = xhci_pci_intr_raise; - object_property_set_bool(OBJECT(&s->xhci), "realized", true, &err); - if (err) { - error_propagate(errp, err); + if (!qdev_realize(DEVICE(&s->xhci), NULL, errp)) { return; } if (strcmp(object_get_typename(OBJECT(dev)), TYPE_NEC_XHCI) == 0) { diff --git a/hw/usb/hcd-xhci-sysbus.c b/hw/usb/hcd-xhci-sysbus.c index 29185d2261f..42e2574c829 100644 --- a/hw/usb/hcd-xhci-sysbus.c +++ b/hw/usb/hcd-xhci-sysbus.c @@ -33,12 +33,9 @@ void xhci_sysbus_reset(DeviceState *dev) static void xhci_sysbus_realize(DeviceState *dev, Error **errp) { XHCISysbusState *s = XHCI_SYSBUS(dev); - Error *err = NULL; object_property_set_link(OBJECT(&s->xhci), "host", OBJECT(s), NULL); - object_property_set_bool(OBJECT(&s->xhci), "realized", true, &err); - if (err) { - error_propagate(errp, err); + if (!qdev_realize(DEVICE(&s->xhci), NULL, errp)) { return; } s->irq = g_new0(qemu_irq, s->xhci.numintrs);