From mboxrd@z Thu Jan 1 00:00:00 1970 From: Heiko Schocher Date: Mon, 25 Aug 2014 07:49:30 +0200 Subject: [U-Boot] dfu: some wrong usb_qualifier_descriptor settings? In-Reply-To: <20140822141109.14f99144@amdc2363> References: <53F582B9.40705@denx.de> <20140822141109.14f99144@amdc2363> Message-ID: <53FACE6A.5010304@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hello Lukasz, Am 22.08.2014 14:11, schrieb Lukasz Majewski: > Hi Heiko, > >> Hello Lukasz, >> >> In the dfu spez [1] chapter 4.2.1 the following fields are specified: >> >> bDeviceClass = 00h (Description: ?see interface?), currently set in >> U-Boot to 2. >> >> bDeviceSubClass = 00h (Description: ?see interface?), currently set in >> U-Boot to 2. >> >> bcdUSB = xxxxh (Description: USB specification release number in >> binary coded decimal -> 0110h) Currently set to 0x200 >> >> If I look in ./drivers/usb/gadget/f_dfu.c: >> >> static const struct usb_qualifier_descriptor dev_qualifier = { >> .bLength = sizeof dev_qualifier, >> .bDescriptorType = USB_DT_DEVICE_QUALIFIER, >> .bcdUSB = __constant_cpu_to_le16(0x0200), >> .bDeviceClass = USB_CLASS_VENDOR_SPEC, >> .bNumConfigurations = 1, >> }; >> >> bDeviceClass = USB_CLASS_VENDOR_SPEC = 0xff ? >> >> Hmm... why states the doc this should be set to 0 = >> USB_CLASS_PER_INTERFACE? 2 is USB_CLASS_COMM ... which seems more >> appropriate ... > > The bDeviceClass seems to be set to wrong value. I think that it should > have values as they are specified by the standard. > >> >> bDeviceSubClass is not defined ... >> bcdUSB = 0x0200 which should be 0x0110 ... oh, as [1] is the dfu 1.1 >> specification it should be 0x0110 but the spec [1] says 0100 ... is >> the spec here buggy? is there a dfu 2.0 specification availiable? > > The 2.0 value is a reminiscent of the original DFU code (once prepared > for Linux) and was wrongly set to indicate USB 2.0. > > I think that we should have 0x0110, which indicates supported DFU > version 1.1. > >> >> Has this differences to the spec some reason? Or can we change them >> to the values specified in the spec? > > I think that values which you have pointed out are wrong and should be > changed to the one from spec. Thanks! Changed. I send a patch soon. bye, Heiko -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany