|
@@ -557,8 +557,8 @@ static int dwc2_ep_enable(struct usb_ep *_ep,
|
|
|
}
|
|
|
|
|
|
/* hardware _could_ do smaller, but driver doesn't */
|
|
|
- if ((desc->bmAttributes == USB_ENDPOINT_XFER_BULK
|
|
|
- && le16_to_cpu(get_unaligned(&desc->wMaxPacketSize)) !=
|
|
|
+ if ((desc->bmAttributes == USB_ENDPOINT_XFER_BULK &&
|
|
|
+ le16_to_cpu(get_unaligned(&desc->wMaxPacketSize)) >
|
|
|
ep_maxpacket(ep)) || !get_unaligned(&desc->wMaxPacketSize)) {
|
|
|
|
|
|
debug("%s: bad %s maxpacket\n", __func__, _ep->name);
|