[U-Boot] [PATCH] usb:composite:fix Provide function data when addressing device with only one interface

Tom Rini
2013-03-01T16:46:40Z

On Fri, Mar 01, 2013 at 03:30:18PM +0100, Lukasz Majewski wrote:

> This commit fixes problems with some non-standard requests send with
> device address instead of interface address (bmRequestType.Receipent field).
>
> This happens with dfu-util (debian version: 0.5), which address non standard
> requests (like w_value=0x21 and bRequest=GET_DESCRIPTOR) to device.
> Without this fix, the above request is STALLED, and hence causes dfu-util
> to assume some standard configuration (packet size = 1024B instead of 4096B)
> In turn it displays following errors:
> Error obtaining DFU functional descriptor
> Warning: Assuming DFU version 1.0
> Warning: Transfer size can not be detected
> ...
> Warning: Trying default transfer size 1024
>
> This fix allows passing non-standard request to function setup code, where
> it shall be handled.
>
> Tested at: Trats (exynos4210)
> Tested with:DFU and UMS gadgets
>
> Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>

Tested-by: Tom Rini <trini@ti.com>
on am335x_evm with this patch replacing Pantelis' patch, in the stack of
things required for DFU on this board.

--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20130301/c3dd77b9/attachment.pgp>