From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steve Rae Date: Tue, 26 Jan 2016 16:35:55 -0800 Subject: [U-Boot] question regarding USB gadget driver (dwc2) Message-ID: <56A810EB.6010102@broadcom.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Marek & Lukasz, I have an issue running fastboot on my board (which is USB_SPEED_HIGH): => fastboot0 failed to enable in ep failed to enable in ep failed to enable in ep Because of this, fastboot does not even initialize properly, and I need to "^C" to break out? I have traced this the following code in "drivers/usb/gadget/dwc2_udc_otg.c": 559/* hardware _could_ do smaller, but driver doesn't */ 560if ((desc->bmAttributes== USB_ENDPOINT_XFER_BULK 561&& le16_to_cpu(get_unaligned(&desc->wMaxPacketSize)) != 562ep_maxpacket(ep)) || !get_unaligned(&desc->wMaxPacketSize)) { 563 564debug("%s: bad %s maxpacket\n", __func__, _ep->name); 565return -ERANGE; 566} 567 568dev= ep->dev; 569if (!dev->driver || dev->gadget.speed== USB_SPEED_UNKNOWN) { 570 571debug("%s: bogus device state\n", __func__); 572return -ESHUTDOWN; 573} 574 575ep->stopped = 0; 576ep->desc= desc; 577ep->pio_irqs= 0; 578ep->ep.maxpacket= le16_to_cpu(get_unaligned(&desc->wMaxPacketSize)); The error message is because: line 561 wMaxPacketSize= 64, and line 562 ep_maxpacket(ep) = 512 I am questioning this logic, because at line 578, the ep.maxpacket is being changed to the wMaxPacketSize anyway! I am uncertain how to proceed - please advise! Thanks in advance, Steve