RE: bcdUSB field check when fetching BOS descriptor?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: Clemens Ladisch [mailto:clemens@xxxxxxxxxx]
> Sent: Friday, July 22, 2011 4:24 PM
> To: Xu, Andiry
> Cc: Alan Stern; Sebastian Andrzej Siewior; greg@xxxxxxxxx; linux-
> usb@xxxxxxxxxxxxxxx
> Subject: Re: bcdUSB field check when fetching BOS descriptor?
> 
> Xu, Andiry wrote:
> > Thanks for the ack. However, I found that when connect a USB3 device
> > (Buffalo HD-HXU3) via a USB2 cable to a xHCI host, it's bcdUSB
> > field is 0x0201. Since the check condition is bcdUSB >= 0x0210,
> > driver does not fetch BOS descriptors. Another USB3 device (Kingston
> > DT Ultimate) reports 0x0210 when connected via USB2 cable, and
driver
> > fetches BOS descriptor.
> >
> > The value I used is from USB3 spec 9.2.6.6, which says "Devices with
> > a value of at least 0210H in the bcdUSB field of their device
> > descriptor shall support GetDescriptor (BOS descriptor) requests".
> 
> This does not forbid _other_ devices to support the BOS descriptor.
> 
> > However, I checked USB2 LPM spec Chapt 3, which says: "Devices that
> > support the BOS descriptor must have a bcdUSB value of 0201H or
> > larger."
> >
> > Is this a conflict?
> 
> No.
> 
> bcdUSB < 2.01: no BOS
> bcdUSB >= 2.01 and < 2.10: BOS optional
> bcdUSB >= 2.10: BOS required
> 

Thanks for the explanation. It is reasonable.

> > Which value should I use, 0x0201 or 0x0210?
> 
> 0x0201.
> 
> No sane firmware writer will allow his 2.01 device to crash when it
> revceives a BOS request.
> But what about the insane ones?  What does Windows do?
> 

I've run USB-IF CV test suite on Windows. When running GetDescriptor
(BOS descriptor) test, the test suite fetches BOS descriptor for 2.01
device and declines the request for 2.00 device. So I think 0x0201
is the right value. I'll resubmit the patch, thanks.

Thanks,
Andiry



--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux