Re: [PATCH 2/2] USB: host: hub: Adjust device speed after every port reset

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Aug 28, 2018 at 11:33:33PM -0700, Andrey Smirnov wrote:
> To account for the possibility of a device coming out of second reset
> operating at different speed compared to first, move the code that
> stores device speed to be a part of hub_port_reset(). This way any
> speed change happening as a result of port reset could be accounted
> for.
> 
> The above behaviour was observed on i.MX51 ZII RDU1, on USBH2 port
> connected to SMSC2660 USB Hub/SD card reader. For reasons unclear,
> first reset would put it into Full Speed mode whereas second would
> result in switch to High Speed. Artifically disabling second reset
> would result in the device operating at Full Speed.
> 
> Not doing second speed adjustement on that board result would result
> in un-processed control transfer and failure to execute
> usb_set_address().
> 
> Signed-off-by: Andrey Smirnov <andrew.smirnov@xxxxxxxxx>
> ---
>  drivers/usb/core/hub.c | 54 +++++++++++++++++++++---------------------
>  drivers/usb/core/hub.h |  4 ++--
>  drivers/usb/core/usb.c |  3 +--
>  3 files changed, 30 insertions(+), 31 deletions(-)
> 
> diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
> index 70f633ed8..39e5fe67d 100644
> --- a/drivers/usb/core/hub.c
> +++ b/drivers/usb/core/hub.c
> @@ -112,32 +112,31 @@ static inline char *portspeed(int portstatus)
>  		return "12 Mb/s";
>  }
>  
> -int hub_port_reset(struct usb_device *dev, int port,
> -			unsigned short *portstat)
> +int hub_port_reset(struct usb_device *hub, int port, struct usb_device *usb)
>  {

I created a separate patch from the renaming from "dev" to "hub" and
applied this series. Thanks

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux