On Friday 26 October 2007 20:10, Roland Dreier wrote: > > Well it could be something quite simple, in the module loader it is > looping > through all modules to look for a device with the correct USB/PCI > ID. > Currently, after the first occurence it loads the module and doesn't > continue, > it should perhaps be relatively easy that it checks if the > driver returned -ENODEV > and continues looping to search for another > driver. > > But a driver (especially a driver for something as hot-pluggable as a > USB device) shouldn't return -ENODEV just because no devices are > present at the moment. It should just load successfully and wait for > a device to appear.
The function that is returning ENODEV is the driver probe function. According to Documentation/DocBook/writing_usb_driver/ch03.html when that function is called "The driver now needs to verify that this device is actually one that it can accept. If so, it returns 0. If not, or if any error occurs during initialization, an errorcode (such as -ENOMEM or -ENODEV) is returned from the probe function." It isn't a device the driver can accept so it returns -ENODEV Adam - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/