diff mbox series

hw/usb: Convert to qdev_realize()

Message ID 20210119120151.53757-1-armbru@redhat.com (mailing list archive)
State New, archived
Headers show
Series hw/usb: Convert to qdev_realize() | expand

Commit Message

Markus Armbruster Jan. 19, 2021, 12:01 p.m. UTC
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 <armbru@redhat.com>
---
 hw/usb/hcd-xhci-pci.c    | 4 +---
 hw/usb/hcd-xhci-sysbus.c | 5 +----
 2 files changed, 2 insertions(+), 7 deletions(-)

Comments

Philippe Mathieu-Daudé Jan. 19, 2021, 2 p.m. UTC | #1
On 1/19/21 1:01 PM, Markus Armbruster wrote:
> 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 <armbru@redhat.com>
> ---
>  hw/usb/hcd-xhci-pci.c    | 4 +---
>  hw/usb/hcd-xhci-sysbus.c | 5 +----
>  2 files changed, 2 insertions(+), 7 deletions(-)

Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Gerd Hoffmann Jan. 19, 2021, 4:14 p.m. UTC | #2
On Tue, Jan 19, 2021 at 01:01:51PM +0100, Markus Armbruster wrote:
> 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.

Added to usb queue.

thanks,
  Gerd
diff mbox series

Patch

diff --git a/hw/usb/hcd-xhci-pci.c b/hw/usb/hcd-xhci-pci.c
index bba628d3d2..9421734d0f 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 29185d2261..42e2574c82 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);