Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

usb: USB3.0 ch11 definitions

Adding hub SuperSpeed usb definitions as defined by ch10 of the USB3.0
spec.

Signed-off-by: Tatyana Brokhman <tlinder@codeaurora.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

authored by

Tatyana Brokhman and committed by
Greg Kroah-Hartman
0eadcc09 b73af61e

+51
+47
include/linux/usb/ch11.h
··· 28 28 #define HUB_STOP_TT 11 29 29 30 30 /* 31 + * Hub class additional requests defined by USB 3.0 spec 32 + * See USB 3.0 spec Table 10-6 33 + */ 34 + #define HUB_SET_DEPTH 12 35 + #define HUB_GET_PORT_ERR_COUNT 13 36 + 37 + /* 31 38 * Hub Class feature numbers 32 39 * See USB 2.0 spec Table 11-17 33 40 */ ··· 63 56 #define USB_PORT_FEAT_C_PORT_L1 23 64 57 65 58 /* 59 + * Port feature selectors added by USB 3.0 spec. 60 + * See USB 3.0 spec Table 10-7 61 + */ 62 + #define USB_PORT_FEAT_LINK_STATE 5 63 + #define USB_PORT_FEAT_U1_TIMEOUT 23 64 + #define USB_PORT_FEAT_U2_TIMEOUT 24 65 + #define USB_PORT_FEAT_C_LINK_STATE 25 66 + #define USB_PORT_FEAT_C_CONFIG_ERR 26 67 + #define USB_PORT_FEAT_REMOTE_WAKE_MASK 27 68 + #define USB_PORT_FEAT_BH_PORT_RESET 28 69 + #define USB_PORT_FEAT_C_BH_PORT_RESET 29 70 + #define USB_PORT_FEAT_FORCE_LINKPM_ACCEPT 30 71 + 72 + /* 66 73 * Hub Status and Hub Change results 67 74 * See USB 2.0 spec Table 11-19 and Table 11-20 68 75 */ ··· 103 82 #define USB_PORT_STAT_INDICATOR 0x1000 104 83 /* bits 13 to 15 are reserved */ 105 84 #define USB_PORT_STAT_SUPER_SPEED 0x8000 /* Linux-internal */ 85 + 86 + /* 87 + * Additions to wPortStatus bit field from USB 3.0 88 + * See USB 3.0 spec Table 10-10 89 + */ 90 + #define USB_PORT_STAT_LINK_STATE 0x01e0 91 + #define USB_SS_PORT_STAT_POWER 0x0200 92 + #define USB_PORT_STAT_SPEED_5GBPS 0x0000 93 + /* Valid only if port is enabled */ 94 + 95 + /* 96 + * Definitions for PORT_LINK_STATE values 97 + * (bits 5-8) in wPortStatus 98 + */ 99 + #define USB_SS_PORT_LS_U0 0x0000 100 + #define USB_SS_PORT_LS_U1 0x0020 101 + #define USB_SS_PORT_LS_U2 0x0040 102 + #define USB_SS_PORT_LS_U3 0x0060 103 + #define USB_SS_PORT_LS_SS_DISABLED 0x0080 104 + #define USB_SS_PORT_LS_RX_DETECT 0x00a0 105 + #define USB_SS_PORT_LS_SS_INACTIVE 0x00c0 106 + #define USB_SS_PORT_LS_POLLING 0x00e0 107 + #define USB_SS_PORT_LS_RECOVERY 0x0100 108 + #define USB_SS_PORT_LS_HOT_RESET 0x0120 109 + #define USB_SS_PORT_LS_COMP_MOD 0x0140 110 + #define USB_SS_PORT_LS_LOOPBACK 0x0160 106 111 107 112 /* 108 113 * wPortChange bit field
+4
include/linux/usb/hcd.h
··· 471 471 472 472 /*-------------------------------------------------------------------------*/ 473 473 474 + /* class requests from USB 3.0 hub spec, table 10-5 */ 475 + #define SetHubDepth (0x3000 | HUB_SET_DEPTH) 476 + #define GetPortErrorCount (0x8000 | HUB_GET_PORT_ERR_COUNT) 477 + 474 478 /* 475 479 * Generic bandwidth allocation constants/support 476 480 */