Зонд USB-драйвера Linux не вызывается, если устройство уже подключено

Если я использую модифицированный драйвер скелета USB в Linux и вставляю модуль с уже подключенным USB-устройством, функция probe не вызывается. Мне нужно отключить и снова подключить устройство, чтобы активировать драйвер. Это не так, например. последовательные драйверы, я сделал несколько тестов. Есть причина для этого? Как мне вызвать функцию probe?


person Metiu    schedule 29.03.2010    source источник


Ответы (3)


Почти все устройства USB HID автоматически управляются драйвером usbhid. Попробуйте следующее:

sudo rmmod usbhid
sudo insmod your_driver
sudo insmod usbhid
person Anton Chikin    schedule 17.11.2010

Вероятно, вам нужно отвязать ваше устройство от usbhid и привязать его к вашему драйверу:

  • попытайтесь найти водителя-вора в : /sys/bus/usb/drivers/usbhid/
  • развяжи : echo -n "1-1:1.0" > /sys/bus/usb/drivers/usbhid/unbind
  • bind your device :
    • echo <vendor> <product> > /sys/bus/usb/drivers/my_driver/new_id or if you already have a bus id :
    • echo -n "1-1:1.0" > /sys/bus/usb/drivers/my_driver/bind

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

person user2351408    schedule 05.05.2013

Некоторое наше программное обеспечение открывало устройство из /proc/bus/usb, и устройство было заявлено драйвером usbfs, поэтому новый драйвер не мог запросить устройство.

person Metiu    schedule 29.03.2010