Pregunta

Si uso un controlador USB esqueleto modificado en Linux y que insmod el módulo con el dispositivo USB ya está enchufado, la función de la sonda no ser llamado. Necesito desconectar y vuelva a conectar el dispositivo con el fin de que el conductor puede activar. Esto no es el caso de, por ejemplo, los controladores serie, hice algunas pruebas. ¿Hay alguna razón para esto? ¿Cómo consigo la función de sonda para ser llamado?

¿Fue útil?

Solución 3

Algunos software de nosotros estaba abriendo el dispositivo de / proc / bus / usb y el dispositivo fue demandada por el conductor usbfs, por lo que el nuevo conductor no podría reclamar el dispositivo.

Otros consejos

Casi todos los dispositivos USB HID son manejados automáticamente por el conductor usbhid. Intente lo siguiente:

sudo rmmod usbhid
sudo insmod your_driver
sudo insmod usbhid

Es probable que necesita para desenlazar su dispositivo de usbhid y enlazarlo a su conductor:

  • tratar de encontrar el controlador ladrón en: /sys/bus/usb/drivers/usbhid/
  • desvincularla: echo -n "1-1:1.0" > /sys/bus/usb/drivers/usbhid/unbind
  • unen su dispositivo:
    • echo <vendor> <product> > /sys/bus/usb/drivers/my_driver/new_id o si ya tiene un identificador de bus:
    • echo -n "1-1:1.0" > /sys/bus/usb/drivers/my_driver/bind

http://www.ha19.no/usb/ ver http://lwn.net/Articles/143397/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top