The SuperspeedPlus Device Capability Descriptor has a variable size depending on the number of sublink speed attributes. This patch adds a macro to calculate that size. The macro takes one argument, the Sublink Speed Attribute Count (SSAC) as reported by the descriptor in bmAttributes[4:0]. See USB 3.1 9.6.2.5, Table 9-19.
Showing the changes to include/uapi (1 of 1 file). Show all
Unified · Split
| @@ -923,6 +923,12 @@ struct usb_ptm_cap_descriptor { · 922 unmodified lines | ||
| 923 | 923 | __u8 bDevCapabilityType; |
| 924 | 924 | } __attribute__((packed)); |
| 925 | 925 | |
| 926 | +/* | |
| 927 | + * The size of the descriptor for the Sublink Speed Attribute Count | |
| 928 | + * (SSAC) specified in bmAttributes[4:0]. | |
| 929 | + */ | |
| 930 | +#define USB_DT_USB_SSP_CAP_SIZE(ssac) (16 + ssac * 4) | |
| 931 | + | |
| 926 | 932 | /*-------------------------------------------------------------------------*/ |
| 927 | 933 | |
| 928 | 934 | /* USB_DT_WIRELESS_ENDPOINT_COMP: companion descriptor associated with |