mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-23 23:42:32 +00:00
f654e6f02d
- improve NYET error handling - use split interrupt transaction hack - clear TT buffers in error situations Issue #3247
15 lines
618 B
Diff
15 lines
618 B
Diff
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
|
|
index 5bd400f..044c17c 100644
|
|
--- a/drivers/usb/core/hub.c
|
|
+++ b/drivers/usb/core/hub.c
|
|
@@ -841,7 +841,8 @@ int usb_hub_clear_tt_buffer(struct urb *urb)
|
|
clear->tt = tt->multi ? udev->ttport : 1;
|
|
clear->devinfo = usb_pipeendpoint (pipe);
|
|
clear->devinfo |= udev->devnum << 4;
|
|
- clear->devinfo |= usb_pipecontrol(pipe)
|
|
+ /* usb_pipeint(pipe) is only relevant for the 'dwc_otg' driver */
|
|
+ clear->devinfo |= (usb_pipecontrol(pipe) || usb_pipeint(pipe))
|
|
? (USB_ENDPOINT_XFER_CONTROL << 11)
|
|
: (USB_ENDPOINT_XFER_BULK << 11);
|
|
if (usb_pipein(pipe))
|