Estoy escribiendo un controlador de dispositivo para un dispositivo usb que usa libusb. Cuando intento reclamar el dispositivo, aparece el código de error LIBUSB_ERROR_BUSY (-6). Según la documentación, eso significa que el dispositivo ya ha sido reclamado (link).interfaz libusb ya reclamada
¿Cómo puedo saber qué controlador/programa ha reclamado el dispositivo y, lo que es más importante, cómo puedo, mí mismo, reclamar el dispositivo una vez que se ha reclamado.
Fragmento de código:
r = libusb_claim_interface(handle[0], 0);
if (r < 0) {
fprintf(stderr, "libusb_claim_interface error %d\n", r);
goto out_release;
}
printf("claimed interface\n");
Salida:
libusb_claim_interface error -6
Encontré esta publicación buscando "_¿Cómo puedo averiguar qué controlador/programa ha reclamado el dispositivo_?", Así que quería vincular esta pregunta: [¿Hay alguna manera de averiguar qué está usando un módulo de kernel de Linux? ] (http://stackoverflow.com/questions/448999/is-there-a-way-to-figure-out-what-is-using-a-linux-kernel-module), que creo que es relevante, porque dice que no es posible ver qué programas reclaman un controlador/módulo. – sdaau