We are attempting to debug an issue that we are seeing with the 6/100 devices we are working with. The issue is that a UVC camera passed QA at the device manufacturer (took a photo), but now some of those devices constantly cannot open the UVC camera anymore.
With the devices that no longer take photos we get messages as shown below in the kernel log:
[ 20.153600] usb 1-1: new high-speed USB device number 2 using ci_hdrc
[ 20.398490] usb 1-1: unable to read config index 0 descriptor/all
[ 20.403538] usb 1-1: can't read configurations, error -32
[ 20.543572] usb 1-1: new high-speed USB device number 3 using ci_hdrc
[ 20.746370] usb 1-1: device descriptor read/all, error -71
[ 20.883987] usb 1-1: new high-speed USB device number 4 using ci_hdrc
[ 21.333593] usb 1-1: device not accepting address 4, error -71
some other devices will show
[ 20.243591] usb 1-1: new high-speed USB device number 2 using ci_hdrc
[ 20.448903] usb 1-1: unable to read config index 0 descriptor/start: -32
[ 20.454553] usb 1-1: chopping to 0 config(s)
[ 20.478077] usb 1-1: no configuration chosen from 0 choices
On the 94 functioning devices we see this instead
[ 19.933590] usb 1-1: new high-speed USB device number 2 using ci_hdrc
[ 20.294390] uvcvideo: Found UVC 1.00 device MikrOkularFullHD (053a:9230)
[ 20.308968] input: MikrOkularFullHD as /devices/soc0/soc/2100000.aips-bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1:1.0/input/input1
[ 20.320578] evbug: Connected device: input1 (MikrOkularFullHD at usb-ci_hdrc.1-1/button)
[ 20.327982] usbcore: registered new interface driver uvcvideo
[ 20.332528] USB Video Class driver (1.1.1)
We've tried rebooting the device, leaving it off for a few minutes then turning it back on (in case overcurrent was the issue) - but none of that has worked so far.
We are running Linux version 4.9.11-1.0.0+gc27010d
Any ideas on why this would be happening to a small portion of the devices we received ? And why it would have worked once and then stopped ?