Dzuy Nguyen wrote:
Hello,

that many other USB drivers don't handle multiple config i.e.

if(dev->descriptor.bNumConfiguration != 1) return NULL

A better solution would be to check whether the active configuration is the one the driver knows how to handle; assuming that it even matters. Some drivers have checks like that purely as paranoia, in case the vendors change things in later product revisions.


Sure enough, my card shows that dev->descriptor.bNumConfigurations = 4. So, what
does it mean if it has more than 1 config? How does mine have 4?

Read the USB 2.0 spec to understand what a configuration is.


Basically, different levels of power consumption call for
different configurations; and functionality differences may
also require them.  Simple devices tend not to need more than
one config each ... the device firmware controls how many
configurations are exposed, there could be hundreds.

A USB device driver accesses that functionality through one
interface.  (Or in rare cases, more than one.)  Since each
configuration has different interfaces, drivers may need to
care about which configuration the device is in.

The /proc/bus/usb/devices dump of your device's configurations
would likely shed some light on what it's doing with them.

- Dave





-------------------------------------------------------
This SF.net email is sponsored by:  Etnus, makers of TotalView, The best
thread debugger on the planet. Designed with thread debugging features
you've never dreamed of, try TotalView 6 free at www.etnus.com.
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to