aboutsummaryrefslogtreecommitdiff
path: root/hw/usb/host-linux.c
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2012-09-06 12:03:41 +0200
committerGerd Hoffmann <kraxel@redhat.com>2012-09-12 08:09:48 +0200
commit63587e31353b6652cadfcfb869f5692a2b69daeb (patch)
treebbd31242ec0a5e5a3e04d1e846343ba11b48fd58 /hw/usb/host-linux.c
parente0a1e32dbc41e6b2aabb436a9417dfd32177a3dc (diff)
usb-host: allow emulated (non-async) control requests without USBPacket
xhci needs this for USB_REQ_SET_ADDRESS due to the way usb addressing is handled by the xhci hardware. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'hw/usb/host-linux.c')
-rw-r--r--hw/usb/host-linux.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/usb/host-linux.c b/hw/usb/host-linux.c
index 8df92074d3..44f1a64b35 100644
--- a/hw/usb/host-linux.c
+++ b/hw/usb/host-linux.c
@@ -1045,7 +1045,6 @@ static int usb_host_handle_control(USBDevice *dev, USBPacket *p,
/* Note request is (bRequestType << 8) | bRequest */
trace_usb_host_req_control(s->bus_num, s->addr, p, request, value, index);
- assert(p->result == 0);
switch (request) {
case DeviceOutRequest | USB_REQ_SET_ADDRESS:
@@ -1074,6 +1073,7 @@ static int usb_host_handle_control(USBDevice *dev, USBPacket *p,
}
/* The rest are asynchronous */
+ assert(p && p->result == 0);
if (length > sizeof(dev->data_buf)) {
fprintf(stderr, "husb: ctrl buffer too small (%d > %zu)\n",