
On Tue, Aug 19, 2014 at 09:08:00PM +0530, Kishon Vijay Abraham I wrote:
On Monday 18 August 2014 08:26 PM, Lukasz Majewski wrote:
Hi Kishon,
Explicity set the max packet size in the device descriptor to 0x40 as specified in the device class specification for device firmware upgrade. Also changed debug to printf to explicitly notify the user if the device has been enumerated.
It seems like this patch slipped without my attention ...
Hence, I'd like to ask why you must hardcode the packet size here?
http://www.usb.org/developers/devclass_docs/usbdfu10.pdf (in section 4.2.1 DFU Mode Device Descriptor), specifies the bMaxPacketSize0 can be 8,16,32,64. And the value we get from gadget is 512. So hard coded it.
as I mentioned, this should be changed on connection done interrupt. DFU has one of the poorest documentations for a USB Class and has some moronic definitions. What happens if you want ot run DFU with a superspeed controller (such as dwc3) when connected to a superspeed port. We cannot use ep0 packet size as 64, right ? That's why hardcoding is bad ;-)