On Sun, 1 Feb 2004, Frank Barknecht wrote: > Hi all, > > I'm currently testing various USB audio devices for a German magazine, > among these there also is the M-Audio Quattro. Now this one, plus > several other M-Audio devices like the Audiophile USB, has a known > bug: It's doesn't work with kernel 2.6. it isn't even seen by the > kernel and lsusb. The error message, after plugging in the device, > looks like this: > > Feb 1 15:20:14 fliwatut kernel: hub 1-0:1.0: new USB device on port 1, assigned > address 13 > Feb 1 15:20:14 fliwatut kernel: drivers/usb/core/config.c: invalid alternate > setting 4 for interface 1 > > It was reported here earlier. > > I am about to contact M-Audio to get a comment from them regarding > this problem, but I am not certain that I really understand what this > error message means and who is to blame for the Quattro et al. not > running anymore (it works on 2.4). So maybe someone here can clarify > this (in simple words, spoken slowly... ;) for me.
Maybe I'm to blame, since I wrote the code that rejects your device. It seemed like a good idea (and it still does) to alert people to problematic devices rather than ignore any errors and consequently mess up the kernel. > How I understand what I read in the USB 1.1 specification, the > alternate setting has to be identified by a number, defaulting to > zero, which is in the range 0 to number of available settings minus 1. > Am I right to assume, that the Quattro's alternate setting "4" is > invalid, because it somehow exceeds this range? That's right. If you can boot a 2.4 kernel and look at either the /proc/bus/usb/devices file or else the output from lsusb, you should be able to see all the alternate settings for interface 1. The error message you got means that there are no more than four of them, so they should be numbered from 0 to at most 3. The 2.4 driver did not do as much error checking as the 2.6 driver, so it did not detect devices with illegal configurations like this. > And am I further > correct, that this then is a violation of the USB specification, so > that this device cannot be called a USB device truthfully anymore, > until this is fixed by M-Audio? (Although I fear I will just be told: > "But it works on Windows!") It _is_ a violation of the USB specification. If M-Audio were to submit their device for USB compliance testing, it would probably fail. (Although I can't be certain of that because I don't know the details of what they test for.) > And lastly: Are there plans on the linux-usb side to still allow such > devices to be used, although they violate the spec? Not presently. > Is this even > possible anymore? It's not clear that it ever was possible. Although it may seem to work under 2.4, most likely some of the system's data structures would get corrupted if altsetting "4" were selected. Or else the kernel and the device would disagree about which altsetting actually was selected. > Thank you for any answers and sorry, if these questions are too > basic... Not at all. Alan Stern ------------------------------------------------------- The SF.Net email is sponsored by EclipseCon 2004 Premiere Conference on Open Tools Development and Integration See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. http://www.eclipsecon.org/osdn _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
