[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 2/5] usb: tag standalone uhci as hotpluggable
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PATCH 2/5] usb: tag standalone uhci as hotpluggable |
Date: |
Tue, 16 Sep 2014 08:43:36 +0200 |
uhci hostadapters in companion setups can't be hotplugged. So leave
hotplug disabled for all ich9 variants (which are already tagged with
unplug = true in the info struct). For the other variants we'll enable
hotplug and remove the companion setup properties.
Signed-off-by: Gerd Hoffmann <address@hidden>
---
hw/usb/hcd-uhci.c | 16 +++++++++++++---
1 file changed, 13 insertions(+), 3 deletions(-)
diff --git a/hw/usb/hcd-uhci.c b/hw/usb/hcd-uhci.c
index 3b3ebcd..5b88f30 100644
--- a/hw/usb/hcd-uhci.c
+++ b/hw/usb/hcd-uhci.c
@@ -1279,13 +1279,18 @@ static void usb_uhci_exit(PCIDevice *dev)
}
}
-static Property uhci_properties[] = {
+static Property uhci_properties_companion[] = {
DEFINE_PROP_STRING("masterbus", UHCIState, masterbus),
DEFINE_PROP_UINT32("firstport", UHCIState, firstport, 0),
DEFINE_PROP_UINT32("bandwidth", UHCIState, frame_bandwidth, 1280),
DEFINE_PROP_UINT32("maxframes", UHCIState, maxframes, 128),
DEFINE_PROP_END_OF_LIST(),
};
+static Property uhci_properties_standalone[] = {
+ DEFINE_PROP_UINT32("bandwidth", UHCIState, frame_bandwidth, 1280),
+ DEFINE_PROP_UINT32("maxframes", UHCIState, maxframes, 128),
+ DEFINE_PROP_END_OF_LIST(),
+};
static void uhci_class_init(ObjectClass *klass, void *data)
{
@@ -1300,9 +1305,14 @@ static void uhci_class_init(ObjectClass *klass, void
*data)
k->device_id = info->device_id;
k->revision = info->revision;
k->class_id = PCI_CLASS_SERIAL_USB;
- dc->hotpluggable = false;
dc->vmsd = &vmstate_uhci;
- dc->props = uhci_properties;
+ if (!info->unplug) {
+ /* uhci controllers in companion setups can't be hotplugged */
+ dc->hotpluggable = false;
+ dc->props = uhci_properties_companion;
+ } else {
+ dc->props = uhci_properties_standalone;
+ }
set_bit(DEVICE_CATEGORY_USB, dc->categories);
u->info = *info;
}
--
1.8.3.1
- [Qemu-devel] [PATCH 0/5] usb: make host adapters hot-pluggable, Gerd Hoffmann, 2014/09/16
- [Qemu-devel] [PATCH 4/5] [wip] usb: tag ohci as hotpluggable, Gerd Hoffmann, 2014/09/16
- [Qemu-devel] [PATCH 3/5] usb: tag standalone ehci as hotpluggable, Gerd Hoffmann, 2014/09/16
- [Qemu-devel] [PATCH 1/5] usb: tag xhci as hotpluggable, Gerd Hoffmann, 2014/09/16
- [Qemu-devel] [PATCH 2/5] usb: tag standalone uhci as hotpluggable,
Gerd Hoffmann <=
- [Qemu-devel] [PATCH 5/5] tests: add usb hcds hotplugging qtest, Gerd Hoffmann, 2014/09/16
- Re: [Qemu-devel] [PATCH 0/5] usb: make host adapters hot-pluggable, Gonglei (Arei), 2014/09/16