Re: [Rt2400-devel] [PATCH] rt2500usb - Don't claim 050d:705{0/a}

From: Adam Baker
Date: Fri Oct 26 2007 - 15:59:18 EST


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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/