summaryrefslogtreecommitdiff
path: root/hw/usb-hub.c
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2011-11-22 13:20:14 +0100
committerGerd Hoffmann <kraxel@redhat.com>2011-11-22 14:12:36 +0100
commit7401cb37497b98e5a693a91fd5db1682f57142a0 (patch)
tree116fadd38b45f5340188434330bd91c120461dfb /hw/usb-hub.c
parent6d56488eaa2a0d0704dcb8e0044e8863c896a713 (diff)
downloadqemu-7401cb37497b98e5a693a91fd5db1682f57142a0.tar.gz
qemu-7401cb37497b98e5a693a91fd5db1682f57142a0.tar.bz2
qemu-7401cb37497b98e5a693a91fd5db1682f57142a0.zip
usb-hub: wakeup on detach too.
When detaching devices from the usb hub we must wakeup too, otherwise the host misses the detach event. Commit 4a33a9ea06f6fbb08d8311a7cfed72975344f9ab does the same for device attach. Found by hkran@linux.vnet.ibm.com Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'hw/usb-hub.c')
-rw-r--r--hw/usb-hub.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/hw/usb-hub.c b/hw/usb-hub.c
index 3eb0f1aa0a..5b48763317 100644
--- a/hw/usb-hub.c
+++ b/hw/usb-hub.c
@@ -171,6 +171,8 @@ static void usb_hub_detach(USBPort *port1)
USBHubState *s = port1->opaque;
USBHubPort *port = &s->ports[port1->index];
+ usb_wakeup(&s->dev);
+
/* Let upstream know the device on this port is gone */
s->dev.port->ops->child_detach(s->dev.port, port1->dev);