lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20101019004530.GA2574@xanatos>
Date:	Mon, 18 Oct 2010 17:45:30 -0700
From:	Sarah Sharp <sarah.a.sharp@...ux.intel.com>
To:	Tatyana Brokhman <tlinder@...eaurora.org>
Cc:	linux-usb@...r.kernel.org, linux-arm-msm@...r.kernel.org,
	Greg Kroah-Hartman <gregkh@...e.de>,
	Alan Stern <stern@...land.harvard.edu>,
	Jacob Pan <jacob.jun.pan@...el.com>,
	linux-kernel@...r.kernel.org, John Youn <John.Youn@...opsys.com>
Subject: Re: [PATCH 1/3] usb: USB3.0 ch11 definitions

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 <tlinder@...eaurora.org>
> ---
>  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-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ