1

ОС: Debian 8

Проблема: я пишу модуль драйвера usb для моего микроконтроллера, пользовательский HID USB, но когда я подключаю его к ноутбуку, он привязывается к драйверу usbhid, если я выполняю rmmod usbhid он также отключает мышь, и это не очень приятно) Я могу отсоединить его с помощью

sudo sh -c 'echo -n "1-3:1.0" > /sys/bus/usb/drivers/usbhid/unbind'

Однако это не интересно делать каждый раз, когда я подключаю свое устройство. Даже после того, как я написал сценарий, я понял, что запускать его снова и снова неинтересно. Можно ли автоматически отсоединить мое устройство от драйвера usbhid?

2 ответа2

0

Найти настоящее крутое решение было нелегко, но я это сделал. Решение не касается udev. Чтобы скрыть ядро, нужно сказать, что оно не должно касаться нашего устройства. Это можно сделать двумя способами, в зависимости от того, usbhid скомпилирован как модуль, или нет. Проверьте это:

https://unix.stackexchange.com/questions/55495/prevent-usbhid-from-claiming-usb-device

https://askubuntu.com/questions/605251/dkms-installed-kernel-module-but-not-working-after-reboot/606359#606359

PS "GRUB_CMDLINE_LINUX_DEFAULT содержит аргументы командной строки для ядра Linux. Вы можете поместить столько, сколько хотите, если они разделены пробелом. "

Надеюсь, это сэкономит кому-то время, так как я потратил много времени, чтобы найти это, я думаю, отличное решение.

С наилучшими пожеланиями, скоро

0

Вы можете занести драйвер в черный список, чтобы он не загружался и не связывался с устройством при загрузке. Если другие модули, которые зависят от него, они не смогут загрузить.

https://askubuntu.com/questions/110341/how-to-blacklist-kernel-modules

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