On Wed, Aug 19, 2009 at 11:32:35PM +0400, Dmitry wrote: > Имеется USB-телефон SkypeMate USB-P1K. > > При подключении устройство определяется как USB HID. > ------ фрагмент /var/log/messages -------- > kernel: hiddev96hidraw0: USB HID v1.10 Device [Yealink Network Technology Ltd. VOIP USB Phone ] on usb-0000:00:1d.0-1 > kernel: usb 2-1: New USB device found, idVendor=6993, idProduct=b700 > kernel: usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 > kernel: usb 2-1: Product: VOIP USB Phone > kernel: usb 2-1: Manufacturer: Yealink Network Technology Ltd. > ------------------------------------------ > > Есть драйвер yealink для этого телефона. > > Каким образом можно определить порядок загрузки модулей: > 1. yealink > 2. usbhid > > Вариант с blacklist не подходит: при помещении usbhid в blacklist > перестают работать USB-клавиатура и USB-мышь. В модуле usbhid есть встроенный список "странных" устройств, в котором, в частности, перечислено большое количество устройств, выглядящих как HID, но на самом деле требующих использования других драйверов. Идентификатор устройств, поддерживаемых модулем yealink (6993:b001), входит в этот список очень давно - есть даже в 2.6.18. Настоящая проблема в данном случае в том, что у вас на самом деле новая версия устройства с другим идентификатором - 6993:b700, которая не поддерживается драйвером yealink в ядре (даже в 2.6.31-rc6+git). Версия драйвера с поддержкой таких новых устройств обнаружилась на http://www.devbase.at/svn/view.cgi/yealink-module/trunk/?root=voip (помимо самого драйвера yealink, также придётся либо добавить идентификатор в таблицу необслуживаемых устройств в usbhid, либо загружать новый модуль yealink принудительно до загрузки usbhid, например, вписав его имя в /etc/modules, или даже в initrd, если usbhid добавлен туда для возможности использования USB-клавиатуры в initramfs shell). Просто добавить в существующий драйвер yealink новый идентификатор (что в некоторых случаях можно сделать без пересборки), похоже, недостаточно - судя по изменениям в драйвере, в новых версиях устройства поменялся протокол обмена.