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
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel