usb-hid: use qdev for -usbdevice

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Gerd Hoffmann 2009-10-26 15:56:46 +01:00 committed by Anthony Liguori
parent 0958b4cc8f
commit fa7c70c35a
3 changed files with 4 additions and 29 deletions

View File

@ -882,6 +882,7 @@ static struct USBDeviceInfo hid_info[] = {
{
.qdev.name = "QEMU USB Tablet",
.qdev.alias = "usb-tablet",
.usbdevice_name = "tablet",
.qdev.size = sizeof(USBHIDState),
.init = usb_tablet_initfn,
.handle_packet = usb_generic_handle_packet,
@ -892,6 +893,7 @@ static struct USBDeviceInfo hid_info[] = {
},{
.qdev.name = "QEMU USB Mouse",
.qdev.alias = "usb-mouse",
.usbdevice_name = "mouse",
.qdev.size = sizeof(USBHIDState),
.init = usb_mouse_initfn,
.handle_packet = usb_generic_handle_packet,
@ -902,6 +904,7 @@ static struct USBDeviceInfo hid_info[] = {
},{
.qdev.name = "QEMU USB Keyboard",
.qdev.alias = "usb-kbd",
.usbdevice_name = "keyboard",
.qdev.size = sizeof(USBHIDState),
.init = usb_keyboard_initfn,
.handle_packet = usb_generic_handle_packet,

View File

@ -411,6 +411,7 @@ static int usb_wacom_initfn(USBDevice *dev)
static struct USBDeviceInfo wacom_info = {
.qdev.name = "QEMU PenPartner Tablet",
.qdev.alias = "wacom-tablet",
.usbdevice_name = "wacom-tablet",
.qdev.size = sizeof(USBWacomState),
.init = usb_wacom_initfn,
.handle_packet = usb_generic_handle_packet,

29
vl.c
View File

@ -2527,31 +2527,10 @@ static void usb_msd_password_cb(void *opaque, int err)
dev->info->handle_destroy(dev);
}
static struct {
const char *name;
const char *qdev;
} usbdevs[] = {
{
.name = "mouse",
.qdev = "QEMU USB Mouse",
},{
.name = "tablet",
.qdev = "QEMU USB Tablet",
},{
.name = "keyboard",
.qdev = "QEMU USB Keyboard",
},{
.name = "wacom-tablet",
.qdev = "QEMU PenPartner Tablet",
}
};
static int usb_device_add(const char *devname, int is_hotplug)
{
const char *p;
USBBus *bus = usb_bus_find(-1 /* any */);
USBDevice *dev = NULL;
int i;
if (!usb_enabled)
return -1;
@ -2561,14 +2540,6 @@ static int usb_device_add(const char *devname, int is_hotplug)
if (dev)
goto done;
/* simple devices which don't need extra care */
for (i = 0; i < ARRAY_SIZE(usbdevs); i++) {
if (strcmp(devname, usbdevs[i].name) != 0)
continue;
dev = usb_create_simple(bus, usbdevs[i].qdev);
goto done;
}
/* the other ones */
if (strstart(devname, "host:", &p)) {
dev = usb_host_device_open(p);