Re: [PATCH] usb: Wait before re-enabling a port that has been disabled due to EMI

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

 



On Sun, 20 Mar 2016, Guido Trentalancia wrote:

> Hello.
> 
> Considering that EM interference can last for a while (generally up to
> seconds), I am currently testing the following patch for module usbcore
> so that it is possible to specify an amount of time to wait before
> trying to re-enable a port that has been previously disabled by the hub
> (supposedly because of EM interference).
> 
> Hopefully, setting the right positive value (for example, 2000
> milliseconds) would help overcome situations such as the following:
> 
> [ 1295.575679] usb 6-2: FTDI USB Serial Device converter now attached
> to ttyUSB1
> [ 1302.204285] usb usb6-port2: disabled by hub (EMI?), re-enabling...
> 
> *** NOTE: EMI is probably still present here ***
> 
> [ 1303.205202] usb 6-2: USB disconnect, device number 6
> [ 1303.205907] ftdi_sio ttyUSB1: FTDI USB Serial Device converter now
> disconnected from ttyUSB1
> [ 1303.205950] ftdi_sio 6-2:1.0: device disconnected
> [ 1303.414089] usb 6-2: new full-speed USB device number 7 using
> uhci_hcd
> [ 1303.526226] usb 6-2: device descriptor read/64, error -71
> [ 1303.894228] usb 6-2: new full-speed USB device number 8 using
> uhci_hcd
> [ 1304.006185] usb 6-2: device descriptor read/64, error -71
> [ 1304.219089] usb 6-2: device descriptor read/64, error -71
> [ 1304.422107] usb 6-2: new full-speed USB device number 9 using
> uhci_hcd
> [ 1304.640020] usb 6-2: device not accepting address 9, error -71
> [ 1304.752024] usb 6-2: new full-speed USB device number 10 using
> uhci_hcd
> [ 1305.160020] usb 6-2: device not accepting address 10, error -71
> [ 1305.160038] hub 6-0:1.0: unable to enumerate USB device on port 2
> 
> *** NOTE: Device is permanently disabled at this point ***
> 
> I don't know whether my analysis is correct (and therefore the proposed
> solution appropriate), as reproducing the problem is very difficult...

Would it be better instead to provide a mechanism for re-enabling the
port after it has been "permanently" disabled?  After all, you don't
know how long the EMI is going to last, and so the kernel has to give
up at some point.  This means increasing the delay will make problems 
more infrequent but won't eliminate them completely.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



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

  Powered by Linux