History

usb: ch9: Add USB 3.2 SSP attributes

In preparation for USB 3.2 dual-lane support, add sublink speed attribute macros and enum usb_ssp_rate. A USB device that operates in SuperSpeed Plus may operate at different speed and lane count. These additional macros and enum values help specifying that.

Thinh Nguyen committed 5 years ago

Commit f2fc9ff1 parent 7766caf2 files · +22 −0Browse files

Showing the changes to include/uapi (1 of 2 files). Show all

Unified · Split

include/uapi/linux/usb/ch9.h+13−0
@@ -968,9 +968,22 @@ struct usb_ssp_cap_descriptor { · 967 unmodified lines
968968 __le32 bmSublinkSpeedAttr[1]; /* list of sublink speed attrib entries */
969969 #define USB_SSP_SUBLINK_SPEED_SSID (0xf) /* sublink speed ID */
970970 #define USB_SSP_SUBLINK_SPEED_LSE (0x3 << 4) /* Lanespeed exponent */
971+#define USB_SSP_SUBLINK_SPEED_LSE_BPS 0
972+#define USB_SSP_SUBLINK_SPEED_LSE_KBPS 1
973+#define USB_SSP_SUBLINK_SPEED_LSE_MBPS 2
974+#define USB_SSP_SUBLINK_SPEED_LSE_GBPS 3
975+
971976 #define USB_SSP_SUBLINK_SPEED_ST (0x3 << 6) /* Sublink type */
977+#define USB_SSP_SUBLINK_SPEED_ST_SYM_RX 0
978+#define USB_SSP_SUBLINK_SPEED_ST_ASYM_RX 1
979+#define USB_SSP_SUBLINK_SPEED_ST_SYM_TX 2
980+#define USB_SSP_SUBLINK_SPEED_ST_ASYM_TX 3
981+
972982 #define USB_SSP_SUBLINK_SPEED_RSVD (0x3f << 8) /* Reserved */
973983 #define USB_SSP_SUBLINK_SPEED_LP (0x3 << 14) /* Link protocol */
984+#define USB_SSP_SUBLINK_SPEED_LP_SS 0
985+#define USB_SSP_SUBLINK_SPEED_LP_SSP 1
986+
974987 #define USB_SSP_SUBLINK_SPEED_LSM (0xff << 16) /* Lanespeed mantissa */
975988 } __attribute__((packed));
976989