mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-03 03:16:43 +07:00
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>
This commit is contained in:
parent
b73af61e32
commit
0eadcc0920
@ -27,6 +27,13 @@
|
|||||||
#define HUB_GET_TT_STATE 10
|
#define HUB_GET_TT_STATE 10
|
||||||
#define HUB_STOP_TT 11
|
#define HUB_STOP_TT 11
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Hub class additional requests defined by USB 3.0 spec
|
||||||
|
* See USB 3.0 spec Table 10-6
|
||||||
|
*/
|
||||||
|
#define HUB_SET_DEPTH 12
|
||||||
|
#define HUB_GET_PORT_ERR_COUNT 13
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Hub Class feature numbers
|
* Hub Class feature numbers
|
||||||
* See USB 2.0 spec Table 11-17
|
* See USB 2.0 spec Table 11-17
|
||||||
@ -55,6 +62,20 @@
|
|||||||
#define USB_PORT_FEAT_INDICATOR 22
|
#define USB_PORT_FEAT_INDICATOR 22
|
||||||
#define USB_PORT_FEAT_C_PORT_L1 23
|
#define USB_PORT_FEAT_C_PORT_L1 23
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Port feature selectors added by USB 3.0 spec.
|
||||||
|
* See USB 3.0 spec Table 10-7
|
||||||
|
*/
|
||||||
|
#define USB_PORT_FEAT_LINK_STATE 5
|
||||||
|
#define USB_PORT_FEAT_U1_TIMEOUT 23
|
||||||
|
#define USB_PORT_FEAT_U2_TIMEOUT 24
|
||||||
|
#define USB_PORT_FEAT_C_LINK_STATE 25
|
||||||
|
#define USB_PORT_FEAT_C_CONFIG_ERR 26
|
||||||
|
#define USB_PORT_FEAT_REMOTE_WAKE_MASK 27
|
||||||
|
#define USB_PORT_FEAT_BH_PORT_RESET 28
|
||||||
|
#define USB_PORT_FEAT_C_BH_PORT_RESET 29
|
||||||
|
#define USB_PORT_FEAT_FORCE_LINKPM_ACCEPT 30
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Hub Status and Hub Change results
|
* Hub Status and Hub Change results
|
||||||
* See USB 2.0 spec Table 11-19 and Table 11-20
|
* See USB 2.0 spec Table 11-19 and Table 11-20
|
||||||
@ -83,6 +104,32 @@ struct usb_port_status {
|
|||||||
/* bits 13 to 15 are reserved */
|
/* bits 13 to 15 are reserved */
|
||||||
#define USB_PORT_STAT_SUPER_SPEED 0x8000 /* Linux-internal */
|
#define USB_PORT_STAT_SUPER_SPEED 0x8000 /* Linux-internal */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Additions to wPortStatus bit field from USB 3.0
|
||||||
|
* See USB 3.0 spec Table 10-10
|
||||||
|
*/
|
||||||
|
#define USB_PORT_STAT_LINK_STATE 0x01e0
|
||||||
|
#define USB_SS_PORT_STAT_POWER 0x0200
|
||||||
|
#define USB_PORT_STAT_SPEED_5GBPS 0x0000
|
||||||
|
/* Valid only if port is enabled */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Definitions for PORT_LINK_STATE values
|
||||||
|
* (bits 5-8) in wPortStatus
|
||||||
|
*/
|
||||||
|
#define USB_SS_PORT_LS_U0 0x0000
|
||||||
|
#define USB_SS_PORT_LS_U1 0x0020
|
||||||
|
#define USB_SS_PORT_LS_U2 0x0040
|
||||||
|
#define USB_SS_PORT_LS_U3 0x0060
|
||||||
|
#define USB_SS_PORT_LS_SS_DISABLED 0x0080
|
||||||
|
#define USB_SS_PORT_LS_RX_DETECT 0x00a0
|
||||||
|
#define USB_SS_PORT_LS_SS_INACTIVE 0x00c0
|
||||||
|
#define USB_SS_PORT_LS_POLLING 0x00e0
|
||||||
|
#define USB_SS_PORT_LS_RECOVERY 0x0100
|
||||||
|
#define USB_SS_PORT_LS_HOT_RESET 0x0120
|
||||||
|
#define USB_SS_PORT_LS_COMP_MOD 0x0140
|
||||||
|
#define USB_SS_PORT_LS_LOOPBACK 0x0160
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* wPortChange bit field
|
* wPortChange bit field
|
||||||
* See USB 2.0 spec Table 11-22
|
* See USB 2.0 spec Table 11-22
|
||||||
|
@ -471,6 +471,10 @@ extern void usb_ep0_reinit(struct usb_device *);
|
|||||||
|
|
||||||
/*-------------------------------------------------------------------------*/
|
/*-------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
/* class requests from USB 3.0 hub spec, table 10-5 */
|
||||||
|
#define SetHubDepth (0x3000 | HUB_SET_DEPTH)
|
||||||
|
#define GetPortErrorCount (0x8000 | HUB_GET_PORT_ERR_COUNT)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Generic bandwidth allocation constants/support
|
* Generic bandwidth allocation constants/support
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user