History

USB: clarify USB_DT_USB_SSP_CAP_SIZE(ssac) definition

USB_DT_USB_SSP_CAP_SIZE(ssac) gives the size of the SSP capability descriptor. The descriptor consists of 12 bytes plus a array of SSA entries. The number of SSA entries is stored in a SSAC value in the first 12 bytes, The USB3.1 specification 9.6.2.5 defines SSAC as zero based: "The number of Sublink Speed Attributes = SSAC + 1." This is not intuitive and has already caused some confusion. Make a small modifiaction to the USB_DT_USB_SSP_CAP_SIZE(ssac) definition to make it a bit clearer

Mathias Nyman committed 8 years ago

Commit 7c014311 parent e142dc11 file · +2 −2Browse files

Showing the changes to include/uapi/linux (1 of 1 file). Show all

Unified · Split

include/uapi/linux/usb/ch9.h+2−2
@@ -1077,9 +1077,9 @@ struct usb_ptm_cap_descriptor { · 1076 unmodified lines
1077#define USB_DT_USB_PTM_ID_SIZE 31077#define USB_DT_USB_PTM_ID_SIZE 3
1078/*1078/*
1079 * The size of the descriptor for the Sublink Speed Attribute Count1079 * The size of the descriptor for the Sublink Speed Attribute Count
1080 * (SSAC) specified in bmAttributes[4:0].1080 * (SSAC) specified in bmAttributes[4:0]. SSAC is zero-based
1081 */1081 */
1082#define USB_DT_USB_SSP_CAP_SIZE(ssac) (16 + ssac * 4)1082#define USB_DT_USB_SSP_CAP_SIZE(ssac) (12 + (ssac + 1) * 4)
1083 1083
1084/*-------------------------------------------------------------------------*/1084/*-------------------------------------------------------------------------*/
1085 1085