On Tue, 24 Feb 2004, David Brownell wrote: > Hi, > > As more folk start to use the gadget API, I've heard more > suggestions about things that would help make the gadget > drivers more flexible. Even some off-line brainstorming > with folk (notably Alan Stern) about ideas. > > So here are notes about some issues that were raised, and how > I think the gadget framework might eventually address them. > > Please discuss. And help implement ... :) > > - Dave
I'd like to mention some troublesome points that have come up in earlier discussions. The problems are not unsolvable, they merely require attention. Along with all the issues involved in autoconfiguring endpoint selection, the functions in a composite gadget will have to share other resources: interface numbers and string descriptors. For interface numbers, the function driver will have to tell the main routine how many interfaces it wants for each configuration. In return the main routine will tell it what interface numbers it can use, and the function driver must update its descriptors accordingly. It's possible to create a simple library routine to update the interface numbers in all the standard descriptors, but if a function uses class- or vendor-specific descriptors with embedded interface numbers then it will have to update them by itself. Similar considerations apply to string descriptor numbers. But with strings there's another issue to contend with: language selection. As I understand it, in a USB device each string is supposed to be available in all the languages supported by that device. This means that every function in a composite gadget would have to support a common set of languages, and the main routine would have to know what this set is. Unlike the other problems, this one can't be solved without explicit coordination between the function drivers. So far as I know, there aren't yet any gadget drivers that support more than one language. But when they do appear this will be a point of contention. Alan Stern ------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel