Re: [PATCH] USB-Core, fix cardreader not found during init

Alan Stern <[email protected]>
Newsgroups gmane.linux.usb.devel
Message-ID <[email protected]>
On Mon, 13 Aug 2007, Alan Stern wrote:

> This patch is the wrong way to do it.  You should try this patch 
> instead.
> 
> Alan Stern
> 
> 
> Index: 2.6.22/drivers/usb/core/message.c
> ===================================================================
> --- 2.6.22.orig/drivers/usb/core/message.c
> +++ 2.6.22/drivers/usb/core/message.c
> @@ -623,12 +623,12 @@ int usb_get_descriptor(struct usb_device
>  	memset(buf,0,size);	// Make sure we parse really received data
>  
>  	for (i = 0; i < 3; ++i) {
> -		/* retry on length 0 or stall; some devices are flakey */
> +		/* retry on length 0 or error; some devices are flakey */
>  		result = usb_control_msg(dev, usb_rcvctrlpipe(dev, 0),
>  				USB_REQ_GET_DESCRIPTOR, USB_DIR_IN,
>  				(type << 8) + index, 0, buf, size,
>  				USB_CTRL_GET_TIMEOUT);
> -		if (result == 0 || result == -EPIPE)
> +		if (result <= 0)
>  			continue;

On further thought, perhaps we shouldn't retry on -ETIMEDOUT errors.

-		if (result == 0 || result == -EPIPE)
+		if (result <= 0 && result != -ETIMEDOUT)

Alan Stern


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.