diff --git a/drivers/usb/core/urb.c b/drivers/usb/core/urb.c index e62208356c8915d6fc565173f4561500cb5261a7..07c58af6b5c0ec9b73e26895952937dd5bbc738e 100644 --- a/drivers/usb/core/urb.c +++ b/drivers/usb/core/urb.c @@ -492,9 +492,9 @@ int usb_submit_urb(struct urb *urb, gfp_t mem_flags) /* too small? */ switch (dev->speed) { case USB_SPEED_WIRELESS: - if (urb->interval < 6) + if ((urb->interval < 6) + && (xfertype == USB_ENDPOINT_XFER_INT)) return -EINVAL; - break; default: if (urb->interval <= 0) return -EINVAL;