Adding John Youn, as his patch to add USB 3.0 hub support to the USB
core had some of the same definitions added:
http://git.kernel.org/?p=linux/kernel/git/sarah/xhci.git;a=commit;h=0954d269be8c830858b593a712030e2e46886d3f

John, I'm still trying to get the xHCI roothub code correct, and then
I'll probably respin your patch to fit on top of this one.

Tatyana, the values look correct, I just have two comments below.

On Mon, Oct 18, 2010 at 05:02:30PM +0200, Tatyana Brokhman wrote:
> Adding hub SuperSpeed usb definitions as defined by ch10 of the USB3.0
> spec.
> This patch is a preparation for adding SuperSpeed support to the dummy_hcd.
> 
> Signed-off-by: Tatyana Brokhman <[email protected]>
> ---
>  include/linux/usb/ch11.h |   47 
> ++++++++++++++++++++++++++++++++++++++++++++++
>  include/linux/usb/hcd.h  |    4 +++
>  2 files changed, 51 insertions(+), 0 deletions(-)
> 
> diff --git a/include/linux/usb/ch11.h b/include/linux/usb/ch11.h
> index 119194c..7dabff0 100644
> --- a/include/linux/usb/ch11.h
> +++ b/include/linux/usb/ch11.h
> @@ -28,6 +28,13 @@
>  #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
>   * See USB 2.0 spec Table 11-17
>   */
> @@ -83,6 +90,21 @@ struct usb_port_status {
>  /* bits 13 to 15 are reserved */
>  #define USB_PORT_STAT_SUPER_SPEED    0x8000  /* Linux-internal */
>  
> +
> +/*
> + * 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
> +

Why not put these USB 3.0 hub port feature definitions next to the USB
2.0 definitions on line 56 (right after USB_PORT_FEAT_C_PORT_L1 is
defined)?

>  /*
>   * wPortChange bit field
>   * See USB 2.0 spec Table 11-22
> @@ -121,6 +143,31 @@ struct usb_hub_status {
>  #define HUB_CHANGE_LOCAL_POWER       0x0001
>  #define HUB_CHANGE_OVERCURRENT       0x0002
>  
> +/*
> + * 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

On a similar note, shouldn't these after line 84 with the other
USB_PORT_STAT_* definitions?

Thanks for adding these definitions. :)

Sarah Sharp
--
To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to