У меня довольно неприятная проблема с моей машиной Debian. Проблема в том, что указатель моей мыши USB зависает вскоре после того, как я начинаю воспроизводить звук через наушники, которые также являются USB.

Более подробно: я использую текущее ядро

3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-2+deb8u3 (2016-07-02) x86_64 GNU/Linux

Моя мышь - стандартная мышь Microsoft USB. Мои наушники - Microsoft LifeChat LX-3000. Вот вывод lsusb :

Bus 002 Device 002: ID 8087:8000 Intel Corp. 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:8008 Intel Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 003: ID 045b:0210 Hitachi, Ltd 
Bus 004 Device 002: ID 045b:0210 Hitachi, Ltd 
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 005: ID 045e:070f Microsoft Corp. 
Bus 003 Device 004: ID 045e:077d Microsoft Corp. 
Bus 003 Device 002: ID 045b:0209 Hitachi, Ltd 
Bus 003 Device 003: ID 045b:0209 Hitachi, Ltd 
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

Шина 3, устройство 4 - мышь, устройство 5 - наушники. Также есть встроенная звуковая карта Intel, выход arecord -l:

**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC898 Analog [ALC898 Analog]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC898 Digital [ALC898 Digital]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 2: ALC898 Alt Analog [ALC898 Alt Analog]
  Subdevices: 2/2
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
card 2: LX3000 [Microsoft LifeChat LX-3000], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

Жизнь прекрасна, пока я не начну воспроизводить звук через наушники. Звук работает, но указатель мыши зависает через некоторое время - иногда почти сразу, иногда через несколько секунд, но никогда не очень долго. Повторное подключение мыши заставляет ее работать снова, и я пытаюсь использовать код сброса USB, который также работает - сброс /dev/bus/usb/003/004 возвращает мышь к жизни, пока она не завис снова через несколько секунд. Если, конечно, я перестану проигрывать звук, в этом случае все нормально.

Я попытался отключить опцию autosuspend модуля usbcore без результата. Когда мышь зависает, в вывод dmesg не добавляется сообщение, поэтому я чувствую, что у меня закончились хорошие идеи.

1 ответ1

1

Попробуйте отладить проблему глубже. Во-первых, похоже, что подробность вашего журнала отладки может быть выше, если вы не получаете никаких сообщений, связанных с зависанием HID.

Во-вторых, попытайтесь "регрессировать" проблему. Попробуйте использовать концентратор USB 2.0 между вашей "машиной Debian" и вашими аудио и мышью. Попробуйте разные конфигурации дерева, скажем, мышь подключена к корневому порту, но наушники находятся за концентратором. Или наоборот. Или оба устройства находятся за концентратором.

Попробуйте использовать другие устройства, например беспроводную мышь Logitech типа FS вместо проводной мыши LS. Или наушники другой марки (обычно это устройство FS). Какую машину вы используете? Какой тип / версия контроллера USB он имеет?

Также полезно определить, используют ли порты USB какое-либо управление питанием в каналах. Это должно быть видно из журналов (должны быть сообщения WAKEUP и RESUME и соответствующие прерывания). След от анализатора протокола USB было бы неплохо иметь на неисправной ссылке.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .