public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Marek Vasut <marex@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 6/7] USB: SS: Add support for Super Speed USB interface
Date: Thu, 28 Mar 2013 15:35:20 +0100	[thread overview]
Message-ID: <201303281535.20404.marex@denx.de> (raw)
In-Reply-To: <1364376543-7526-7-git-send-email-gautam.vivek@samsung.com>

Dear Vivek Gautam,

> This adds usb framework support for super-speed usb, which will
> further facilitate to add stack support for xHCI.
> 
> Signed-off-by: Vikas C Sajjan <vikas.sajjan@samsung.com>
> Signed-off-by: Vivek Gautam <gautam.vivek@samsung.com>

[...]

> --- a/include/usb.h
> +++ b/include/usb.h
> @@ -67,6 +67,16 @@ struct devrequest {
>  	unsigned short	length;
>  } __attribute__ ((packed));
> 
> +struct usb_ep_desc {
> +	struct usb_endpoint_descriptor		ep_desc;
> +	/*
> +	 * Super Speed Device will have Super Speed Endpoint
> +	 * Companion Descriptor  (section 9.6.7 of usb 3.0 spec)
> +	 * Revision 1.0 June 6th 2011
> +	 */
> +	struct usb_ss_ep_comp_descriptor	ss_ep_comp;
> +};
> +
>  /* Interface */
>  struct usb_interface {
>  	struct usb_interface_descriptor desc;
> @@ -75,7 +85,7 @@ struct usb_interface {
>  	unsigned char	num_altsetting;
>  	unsigned char	act_altsetting;
> 
> -	struct usb_endpoint_descriptor ep_desc[USB_MAXENDPOINTS];
> +	struct usb_ep_desc ep_desc[USB_MAXENDPOINTS];

Do we really need this struct usb_ep_desc? Can we not just store the 
usb_ss_ep_comp_descriptor here as well?

>  } __attribute__ ((packed));
> 
>  /* Configuration information.. */
> diff --git a/include/usb_defs.h b/include/usb_defs.h
> index 0c78d9d..e2aaef3 100644
> --- a/include/usb_defs.h
> +++ b/include/usb_defs.h
> @@ -203,6 +203,8 @@
>  #define USB_PORT_FEAT_POWER          8
>  #define USB_PORT_FEAT_LOWSPEED       9
>  #define USB_PORT_FEAT_HIGHSPEED      10
> +#define USB_PORT_FEAT_FULLSPEED      11
> +#define USB_PORT_FEAT_SUPERSPEED     12
>  #define USB_PORT_FEAT_C_CONNECTION   16
>  #define USB_PORT_FEAT_C_ENABLE       17
>  #define USB_PORT_FEAT_C_SUSPEND      18
> @@ -218,8 +220,20 @@
>  #define USB_PORT_STAT_POWER         0x0100
>  #define USB_PORT_STAT_LOW_SPEED     0x0200
>  #define USB_PORT_STAT_HIGH_SPEED    0x0400	/* support for EHCI */
> +#define USB_PORT_STAT_FULL_SPEED    0x0800
> +#define USB_PORT_STAT_SUPER_SPEED   0x1000	/* support for XHCI */
>  #define USB_PORT_STAT_SPEED	\
> -	(USB_PORT_STAT_LOW_SPEED | USB_PORT_STAT_HIGH_SPEED)
> +	(USB_PORT_STAT_LOW_SPEED | USB_PORT_STAT_HIGH_SPEED | \
> +	USB_PORT_STAT_FULL_SPEED | USB_PORT_STAT_SUPER_SPEED)
> +
> +/*
> + * 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_SS_PORT_STAT_SPEED		0x1c00
> +#define USB_PORT_STAT_SPEED_5GBPS	0x0000
> 
>  /* wPortChange bits */
>  #define USB_PORT_STAT_C_CONNECTION  0x0001
> @@ -228,6 +242,14 @@
>  #define USB_PORT_STAT_C_OVERCURRENT 0x0008
>  #define USB_PORT_STAT_C_RESET       0x0010
> 
> +/*
> + * Addition to wPortChange bit fields form USB 3.0
> + * See USB 3.0 spec Table 10-11
> + */
> +#define USB_PORT_STAT_C_BH_RESET	0x0020
> +#define USB_PORT_STAT_C_LINK_STATE	0x0040
> +#define USB_PORT_STAT_C_CONFIG_ERROR	0x0080
> +
>  /* wHubCharacteristics (masks) */
>  #define HUB_CHAR_LPSM               0x0003
>  #define HUB_CHAR_COMPOUND           0x0004

  reply	other threads:[~2013-03-28 14:35 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-27  9:28 [U-Boot] [PATCH 0/7] usb: ss: Some fixes and cleanup for USB super-speed support Vivek Gautam
2013-03-27  9:28 ` [U-Boot] [PATCH 1/7] USB: Some cleanup prior to USB 3.0 interface addition Vivek Gautam
2013-03-28 14:26   ` Marek Vasut
2013-04-02  5:54     ` Vivek Gautam
2013-04-02  5:56       ` Vivek Gautam
2013-04-02  6:26       ` Marek Vasut
2013-04-02  6:37         ` Vivek Gautam
2013-04-02  6:46           ` Marek Vasut
2013-04-02  6:58             ` Vivek Gautam
2013-03-27  9:28 ` [U-Boot] [PATCH 2/7] usb: hub: Conditionally power on usb's root-hub ports Vivek Gautam
2013-03-28 14:28   ` Marek Vasut
2013-04-02  9:36     ` Vivek Gautam
2013-04-02 10:09       ` Marek Vasut
2013-04-02 10:29         ` Vivek Gautam
2013-04-02 10:33           ` Marek Vasut
2013-03-27  9:28 ` [U-Boot] [PATCH 3/7] usb: Update device class in usb device's descriptor Vivek Gautam
2013-03-28 14:28   ` Marek Vasut
2013-04-02  9:32     ` Vivek Gautam
2013-04-02 10:09       ` Marek Vasut
2013-04-02 10:30         ` Vivek Gautam
2013-03-27  9:29 ` [U-Boot] [PATCH 4/7] usb: hub: Fix enumration timeout Vivek Gautam
2013-03-28  3:33   ` Vipin Kumar
2013-04-01 20:13   ` Tom Rini
2013-04-02  4:55     ` Vivek Gautam
2013-04-02  5:12       ` Marek Vasut
2013-04-02  5:34         ` Vivek Gautam
2013-04-02  5:36           ` Vivek Gautam
2013-04-02  6:43             ` Marek Vasut
2013-03-27  9:29 ` [U-Boot] [PATCH 5/7] usb: hub: Increase device enumeration timeout for broken drives Vivek Gautam
2013-03-28 14:32   ` Marek Vasut
2013-04-02  9:33     ` Vivek Gautam
2013-04-02 13:53     ` Vivek Gautam
2013-04-04  3:58       ` Marek Vasut
2013-04-04 10:57         ` Vivek Gautam
2013-04-14 17:17           ` Marek Vasut
2013-03-27  9:29 ` [U-Boot] [PATCH 6/7] USB: SS: Add support for Super Speed USB interface Vivek Gautam
2013-03-28 14:35   ` Marek Vasut [this message]
2013-04-02  9:52     ` Vivek Gautam
2013-03-27  9:29 ` [U-Boot] [PATCH 7/7] usb: eth: Fix for updated usb interface descriptor structure Vivek Gautam

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201303281535.20404.marex@denx.de \
    --to=marex@denx.de \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox