usb: composite: Fix max packet size for USB3.0
authorSiva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com>
Thu, 13 Dec 2018 09:46:36 +0000 (15:16 +0530)
committerMarek Vasut <marex@denx.de>
Fri, 14 Dec 2018 16:59:10 +0000 (17:59 +0100)
commit771e76515ed5abe7eff73a54ccb0c9ae55f34388
tree59c5949a33e471532ed36fc66a3b18940497e075
parent5d060ec0dc02258608c8796a18d3f7bc45ff4494
usb: composite: Fix max packet size for USB3.0

For USB3.0, the max packetsize for GET_DESCRIPTOR should be
sent as exponent value for 2. This means for 512, max packet
size should be filled with 9(2^9=512). Also, fill the USB
version field with 3.0 if speed is negotiated to Superspeed.
This fixes the issue of DFU gadget download failure with
superspeed. Without this patch, the max packet size is
overflowed to zero as the bMaxPacketsize is of u8 and hence
host is not able to detect this device.

Signed-off-by: Siva Durga Prasad Paladugu <siva.durga.paladugu@xilinx.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
drivers/usb/gadget/composite.c