Hi, I'm looking through the code examples in the EZ-USB FX3 SDK. I noticed a lot of these examples use the value as part of the BOS Descriptor's USB 2.0 bmAttribute value:
0x1E,0x64,0x00,0x00,
For example in the file EZ-USB FX3 SDK\1.3\firmware\basic_examples\cyfxusbdebug\cyfxusbdscr.c:
/* USB 2.0 extension */
0x07, /* Descriptor size */
CY_U3P_DEVICE_CAPB_DESCR, /* Device capability type descriptor */
CY_U3P_USB2_EXTN_CAPB_TYPE, /* USB 2.0 extension capability type */
0x1E,0x64,0x00,0x00, /* Supported device level features: LPM support, BESL supported,
Baseline BESL=400 us, Deep BESL=1000 us. */
Some of them use what I would expect the value to be of 0x02, for example in EZ-USB FX3 SDK\1.3\firmware\serialif_examples\cyfxusbuart\cyfxusbuartdscr.c:
/* USB 2.0 extension */
0x07, /* Descriptor size */
CY_U3P_DEVICE_CAPB_DESCR, /* Device capability type descriptor */
CY_FX_USB2_EXTN_CAPB_TYPE, /* USB 2.0 extension capability type */
0x02,0x00,0x00,0x00, /* Supported device level features: LPM support */
The examples have the 0x1E values in 40 instances:
$ grep "2.0 extension capability" * -A2 -R | grep "0x1E" | wc -l
40
and the 0x02 values in 2 instances:
$ grep "2.0 extension capability" * -A2 -R | grep "0x02" | wc -l
2
Section 9.6.2.1 of the USB 3.2 Spec states:
Which means the only valid values would be
0x00, 0x00, 0x00, 0x00
and
0x02, 0x00, 0x00, 0x00
for bmAttributes - NOT 0x1E, 0x64, 0x00, 0x00
Is there an error in the examples or my understanding?
Thank you
Solved! Go to Solution.
Hi,
Please download USB 2.0 Specification from the below link:
USB 2.0 Specification | USB-IF
Following which, refer to the below:
Table 3-1 in usb_20_20190524\USB2_LinkPowerMangement_ECN[final].pdf
is changed to the one given in page 3 of the following doc:
usb_20_20190524\USB2-LPM-Errata-final.pdf
Regards,
Hemanth
Hi,
Please download USB 2.0 Specification from the below link:
USB 2.0 Specification | USB-IF
Following which, refer to the below:
Table 3-1 in usb_20_20190524\USB2_LinkPowerMangement_ECN[final].pdf
is changed to the one given in page 3 of the following doc:
usb_20_20190524\USB2-LPM-Errata-final.pdf
Regards,
Hemanth
I copied that table into the above image for reference.
So basically the USB 3.2 spec is out of date? and this table is the correct one for bmAttributes in the USB 2.0 Extension descriptor?
Hi,
We will have to associate the errata when considering the BOS 2.0 Extension Descriptor.
Regards,
Hemanth