usb: New usb_new(), usb_realize_and_unref()
I'm converting from qdev_create()/qdev_init_nofail() to qdev_new()/qdev_realize_and_unref(); recent commit "qdev: New qdev_new(), qdev_realize(), etc." explains why. USB devices use qdev_create() through usb_create(). Provide usb_new() and usb_realize_and_unref() for converting USB devices. Cc: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Gerd Hoffmann <kraxel@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Message-Id: <20200610053247.1583243-27-armbru@redhat.com>
This commit is contained in:
parent
7ce8d8c8d5
commit
32aaaebe56
10
hw/usb/bus.c
10
hw/usb/bus.c
@ -314,6 +314,16 @@ void usb_legacy_register(const char *typename, const char *usbdevice_name,
|
||||
}
|
||||
}
|
||||
|
||||
USBDevice *usb_new(const char *name)
|
||||
{
|
||||
return USB_DEVICE(qdev_new(name));
|
||||
}
|
||||
|
||||
bool usb_realize_and_unref(USBDevice *dev, USBBus *bus, Error **errp)
|
||||
{
|
||||
return qdev_realize_and_unref(&dev->qdev, &bus->qbus, errp);
|
||||
}
|
||||
|
||||
USBDevice *usb_create(USBBus *bus, const char *name)
|
||||
{
|
||||
DeviceState *dev;
|
||||
|
@ -504,6 +504,8 @@ USBBus *usb_bus_find(int busnr);
|
||||
void usb_legacy_register(const char *typename, const char *usbdevice_name,
|
||||
USBDevice *(*usbdevice_init)(USBBus *bus,
|
||||
const char *params));
|
||||
USBDevice *usb_new(const char *name);
|
||||
bool usb_realize_and_unref(USBDevice *dev, USBBus *bus, Error **errp);
|
||||
USBDevice *usb_create(USBBus *bus, const char *name);
|
||||
USBDevice *usb_create_simple(USBBus *bus, const char *name);
|
||||
USBDevice *usbdevice_create(const char *cmdline);
|
||||
|
Loading…
Reference in New Issue
Block a user