SO: Debian 8
Problema: estoy escribiendo un módulo de controlador USB para mi microcontrolador, USB HID personalizado, pero cuando lo conecto a la computadora portátil se vincula al controlador USBhid, si lo hago rmmod usbhid
también desconecta un mouse y no es muy agradable). Puedo desvincularlo a través de
sudo sh -c 'echo -n "1-3:1.0" > /sys/bus/usb/drivers/usbhid/unbind'
, sin embargo, no es interesante hacerlo cada vez que conecto mi dispositivo. Incluso después de escribir un script, no me resulta divertido ejecutarlo una y otra vez. ¿Es posible desvincular mi dispositivo del controlador usbhid automáticamente?
Respuesta1
No fue fácil encontrar una solución realmente interesante, pero lo logré. La solución no tiene que ver con udev. Necesitamos decirle al núcleo oculto que no debería tocar nuestro dispositivo. Es posible hacerlo de 2 maneras dependiendo de si usbhid está compilado como módulo o no. Mira esto:
https://unix.stackexchange.com/questions/55495/prevent-usbhid-from-claiming-usb-device
PD "GRUB_CMDLINE_LINUX_DEFAULT contiene argumentos de línea de comando para el kernel de Linux. Puede poner tantos como desee allí, siempre que esténseparados por un espacio".
Con suerte, le ahorrará tiempo a alguien, ya que dediqué una gran cantidad de tiempo a encontrar esta, creo, excelente solución.
Saludos cordiales, anon
Respuesta2
Puede incluir el controlador en la lista negra para que no se cargue ni se vincule al dispositivo al arrancar. Si hay otros módulos que dependen de él, no se cargarán.
https://askubuntu.com/questions/110341/how-to-blacklist-kernel-modules