如果设备已插入,则不会调用Linux USB驱动程序探测器

时间:2010-03-29 13:12:16

标签: linux usb driver probe

如果我在Linux上使用修改过的usb骨架驱动程序,并且我已经插入了已插入USB设备的模块,则不会调用探测功能。我需要拔下并重新插入设备才能激活驱动程序。 例如,情况并非如此。串口驱动程序,我做了一些测试。 是否有一个原因?如何调用探针函数?

3 个答案:

答案 0 :(得分:3)

几乎所有USB HID设备都由usbhid驱动程序自动管理。请尝试以下方法:

sudo rmmod usbhid
sudo insmod your_driver
sudo insmod usbhid

答案 1 :(得分:2)

您可能需要将设备与usbhid取消绑定并将其绑定到您的驱动程序:

  • 尝试在/sys/bus/usb/drivers/usbhid/
  • 中找到小偷司机
  • 取消绑定:echo -n "1-1:1.0" > /sys/bus/usb/drivers/usbhid/unbind
  • 绑定您的设备:
    • echo <vendor> <product> > /sys/bus/usb/drivers/my_driver/new_id 或者如果你已经有一个公共汽车ID:
    • echo -n "1-1:1.0" > /sys/bus/usb/drivers/my_driver/bind

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

答案 2 :(得分:1)

我们的一些软件是从/ proc / bus / usb打开设备,而usbfs驱动程序声称设备已声明,因此新驱动程序无法声明设备。