
On Friday, January 29, 2016 at 05:42:31 PM, Lukasz Majewski wrote:
Hi Steve,
From: Frank Wang frank.wang@rock-chips.com
In current high speed fastboot, fs_ep_in.wMaxPacketSize is configured 64 bytes as default, as a result, it failed to match the size at initialization stage in usb controller. Actually, hardware can support less than or equal to 512 bytes in high speed mode, so I changed the condition from '!=' to '>' to fix this issue.
Signed-off-by: Frank Wang frank.wang@rock-chips.com Tested-by: Steve Rae srae@broadcom.com
drivers/usb/gadget/dwc2_udc_otg.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/usb/gadget/dwc2_udc_otg.c b/drivers/usb/gadget/dwc2_udc_otg.c index 90ed5ff..19d6dcd 100644 --- a/drivers/usb/gadget/dwc2_udc_otg.c +++ b/drivers/usb/gadget/dwc2_udc_otg.c @@ -565,8 +565,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);
Acked-by: Lukasz Majewski l.majewski@samsung.com Tested-by: Lukasz Majewski l.majewski@samsung.com
Test HW: Trats - Exynos4210 (dwc2 udc controller).
@Marek:
Should I pick this patch or will you take it?
Pick it (and all the other udc stuff) and send me a PR please.
Best regards, Marek Vasut