On Thu, 25 Jan 2007, Oleg Verych wrote: > In short: > deviceDescriptor->Operation = bNumInterface[!s]->Operation > (buggy software) (featured buggy hardware) > =[0] =[1] > pic.3 > > I think, linux-usb "in-short" you can imagine. My veiw of it is as: > > deviceDescriptor-> bNumInterfaces +->Operation > +->Operation ... > (usb-core) (*drivers*) > pic.4 > > Do you see gap in pic.4 ? It was patched slightly in 2.6.19. > > Patch > +++ bNumConfigurations +++ > > Shows, that it's very hard to do something with the gap, because > *drivers* in pic.4 are not device drivers as it should be, but operation > *managers*.
You are basically correct. There are two different levels of abstraction: The entire device; The interfaces which do the actual work. All the USB drivers except "generic" work on the interface level, which is of course the most interesting. A driver for the entire device doesn't have to do very much. As you can see by reading the "generic" source code, its main jobs are these: Export the device's attribute files in sysfs; Choose and install an initial configuration. This isn't surprising. At the entire-device level, USB doesn't do very much. (I have omitted some relatively unimportant points about device-reset and suspend/resume; they don't matter for our purposes.) > I know, that linux is developing on-demand by volunteers. Anyway i > refuse to accept deep cave in the design, design of configuration or > basic design, which must be utilized by anything, that may finally send > bytes. > > I think drivers (in my understanding) must begin in deviceDescriptor > and any merging of bNumConfigurations and/or bNumInterfaces must > happen further: in one file kernel object or many, doesn't mater. So maybe you really do want an alternative to "generic", or else a way to make "generic" more flexible. On the other hand, maybe the current TI serial driver works well enough already. Alan Stern ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel