Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Sep 2017 10:56:27 +0200
From:      Hans Petter Selasky <hps@selasky.org>
To:        Mark Millard <markmi@dsl-only.net>, freebsd-arm <freebsd-arm@freebsd.org>
Subject:   Re: Part of why Pine64+ 2GB gets "uhub_attach: getting USB 2.0 HUB descriptor failed,error=USB_ERR_SHORT_XFER" (and so USB fails)
Message-ID:  <46d91194-84ff-50e3-97e6-6f9cef3ea2e7@selasky.org>
In-Reply-To: <AF0AC3CE-5B33-4E28-B091-FCE9EAC87642@dsl-only.net>
References:  <AF0AC3CE-5B33-4E28-B091-FCE9EAC87642@dsl-only.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 09/17/17 10:09, Mark Millard wrote:
> . . .
>          uint16_t length;
>          uint16_t temp;
> . . .
>          length = UGETW(req->wLength);
> . . .
>                  USB_BUS_LOCK(udev->bus);
>                  err = (hr_func) (udev, req, &desc, &temp);
>                  USB_BUS_UNLOCK(udev->bus);
> 
>                  if (err)
>                          goto done;
> 
>                  if (length > temp) {
>                          if (!(flags & USB_SHORT_XFER_OK)) {
>                                  err = USB_ERR_SHORT_XFER;
>                                  goto done;
>                          }
>                          length = temp;
>                  }

Can you dump the length arguments. Usually short transfer means that the 
descriptor was shorter than expected.

--HPS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?46d91194-84ff-50e3-97e6-6f9cef3ea2e7>