Re: bcdUSB field check when fetching BOS descriptor?

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

 



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

> 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?


Regards,
Clemens
--
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