Retry usb_device_claim_interface when it's connected to the kernel driver

usb_device_claim_interface is called solely for marking that a program
or a driver uses it and it does not trigger any signals over the bus.

usb_device_claim_interface has a possibility to be failed if the kernel
driver already connected to a usb device. When it happens, the function
call returns an error and errno is set to EBUSY. For that case, it is
necessary to disconnect to the kernel driver and retry to claim the
interface again.

Bug: 26845384
Change-Id: I4fae0e66ca1132f8cc16937cc6fb837ec4d5659f
1 file changed