Pergunta

Se eu usar um driver de esqueleto USB modificado no Linux e insmito o módulo com o dispositivo USB já conectado, a função da sonda não será chamada. Preciso desconectar e substituir o dispositivo para que o driver seja ativado. Este não é o caso, por exemplo, os drivers em série, fiz alguns testes. Existe uma razão para isso? Como faço para obter a função da sonda para ser chamada?

Foi útil?

Solução 3

Alguns softwares de nós estavam abrindo o dispositivo de/proc/BUS/USB e o dispositivo foi reivindicado pelo driver USBFS, para que o novo driver não pudesse reivindicar o dispositivo.

Outras dicas

Quase todos os dispositivos HID USB são gerenciados automaticamente pelo driver USBHID. Experimente o seguinte:

sudo rmmod usbhid
sudo insmod your_driver
sudo insmod usbhid

Você provavelmente precisa desviar seu dispositivo do USBHID e ligá -lo ao seu motorista:

  • Tente encontrar o motorista do ladrão em: /sys/bus/usb/drivers/usbhid/
  • desbastencê -lo: echo -n "1-1:1.0" > /sys/bus/usb/drivers/usbhid/unbind
  • Vincule seu dispositivo:
    • echo <vendor> <product> > /sys/bus/usb/drivers/my_driver/new_id Ou se você já possui um ID de ônibus:
    • echo -n "1-1:1.0" > /sys/bus/usb/drivers/my_driver/bind

Vejo http://www.ha19.no/usb/Vejo http://lwn.net/articles/143397/

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top