Re: USB driver assignment with udev

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

 



On Wed, Mar 11, 2009 at 11:20:53PM +0000, Steve Calfee wrote:
> I am trying to understand how a USB driver gets assigned to a device.

Have you read the documentation on how this happens in the book, Linux
Device Drivers, third edition, which is free online?

> It seems that a udev rule does a modprobe for a driver to handle a device.
> In most cases the module is already in-kernel and this step does nothing.

Not really true, lots of times the module is not present.

> The module/driver probe routine is called by the kernel, only if there is a
> match in its registered usb_device_id table. If more than one driver
> matches, the first one installed gets called first. In 2.6.16, if the probe
> "failed" (returned non-zero), no more modules were probed. I think this is
> broken, and I am now trying 2.6.28, maybe it does the right thing and
> continues looking for a driver that wants a device.
> 
> I have a different situation, but a classic issue is if a user wants to
> have ub handle one device and usb-storage handle others. How can this be
> done? udev loads the driver, but the driver itself grabs the devices. The
> first module loaded will hog all the devices. USBIP will also sooner or
> later hit this problem, some devices might need to be local and some placed
> remotely.  Presumably separate drivers will be needed.

See the libusual code for how this is handled.

> So right now, a Linux USB driver will in-kernel determine if it wants to
> bind to a particular device. This is weakly controlled by userspace by the
> order of module registering (usually by order of insmod). But there is no
> way for userspace to determine a mapping between devices and drivers. Is
> there a udev solution for this?

Not really, but I fail to see the problem that you are trying to solve
here.

What exactly are you trying to do?

thanks,

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

[Index of Archives]     [Linux Kernel]     [Linux DVB]     [Asterisk Internet PBX]     [DCCP]     [Netdev]     [X.org]     [Util Linux NG]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux