Re: usbhid driver gets loaded instead of the useful driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 11 Jun 2012, Noam Yorav-Raphael wrote:

> Hello,
> 
> I have a device (a microscope automation controller) which has a USB
> port which uses a standard RS232 to USB converter, by Cypress. They
> just changed their vendor id and product id from the standard cypress
> ID. I added their IDs to the cypress_m8 source, compiled, and put the
> updated cypress_m8.ko file in /lib/modules/.
> 
> When I plug the device the cypress_m8 driver isn't being used.
> Instead, the generic usbhid driver is used, which isn't what I wanted.

That doesn't make much sense.  The usbhid driver binds only to devices 
that advertise an HID interface, whereas you're talking about a serial 
interface.

> If I run:
> 
> modprobe -r usbhid cypress_m8
> modprobe cypress_m8
> modprobe usbhid
> 
> then when I plug the device, the cypress_m8 driver is being used, and
> I can use /dev/ttyUSB0, just as I wanted.
> 
> It seems that the order in which drivers are loaded affects the
> priority: the driver which was loaded first gets to catch the device.

There is no priority; it's simply a matter of order.

> So my question is, is there a way to permanently change the driver
> priority, so that the right driver will be loaded by default?

There is not, since there are no priorities.  However, there _is_ a way
to permanently change the usbhid driver and prevent it from ever
binding to your device.  You merely have to add an entry to the
hid_ignore_list array in drivers/hid/hid-core.c.

Alan Stern

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux