Re: USB reset problem

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

 



On Thu, Jun 06, 2019 at 01:55:37PM +0000, Bollinger, Seth wrote:
> Hello All,
> 
> Recently we saw a problem where the device reset will fail due to a configuration descriptor check in hub.c:5600.
> 
>         if (memcmp(buf, udev->rawdescriptors[index], old_length)
>                 != 0) {
>             dev_dbg(&udev->dev, "config index %d changed (#%d)\n",
>                 index,
>                 ((struct usb_config_descriptor *) buf)->
>                     bConfigurationValue);
>             changed = 1;
>             break;
>         }
> 
> The descriptors returned from the device have a different iInterface.  I checked the usb spec and couldn’t find anything that says iInterface can’t change.  I don’t have the source for the device, but I think it’s probably generating the interface string each reset and returning a different index for it (“ADB interface”).
> 
> Has anyone else seen this?  Does the spec guarantee that iInterface should never change between device resets?

If the descriptor changes between resets, that means that something
changed and we need to start over with it.  What is the problem that
this is causing?

thanks,

greg k-h



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux