Before version 1.1.5 some devices popped up which want to be switched by
changing the device configuration. USB allows to provide multiple
internal "modes" that can be set with SELECT_CONFIGURATION.

In fact, that is how the whole mode switching SHOULD have been
implemented while following the specs.

Now, to handle multiple configurations, the current configuration (out of all 
possible) has to be determined properly. Up to version 1.1.4 the class of 
interfaces and other parameters were taken from the USB device structure by 
looking into "dev->config[0]".
Strictly, this is only correct for devices with just a single possible 
configuration. As soon as there are more than one configurations, the ACTIVE 
configuration (which may have been set before) has to be determined. It could 
be "dev->config[1]" or something else.

Therefore the GET_CONFIGURATION command is needed which must be
implemented by every USB device.

I have collected five modems from different "families"; none of them had any 
problems with this request when testing on seven different distributions (and 
kernels) so I did not expect this command to fail except in really hopeless 
cases ...
What I would do in your case (and probably in the next release), is to simply 
add a little quirk handling instead of just aborting:

[...]
if (ret < 0) {
    fprintf(stderr, "Error getting the current configuration (error %d). 
Falling back to configuration 1.\n", ret);
    if (Configuration) {
        fprintf(stderr, " No configuation setting possible for this device.\n", 
ret);
        Configuration = 0;
    }
    return 1;
}
[...]

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/769816

Title:
  Switching of Samsung LTE modem does no longer work in Natty

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to