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>