Oliver Neukum wrote:
The basic idea is that the I/O requests for USB should be
purely asynchronous, and synchronization policies should
push up to higher levels.  Ideally to device drivers, but
usbcore can't avoid synchronizing things like enumeration,
config changing, driver bind/unbind, and disconnect.


Why to the device drivers? This to me seems to be leading to code
duplication.

Because the primitives are all provided elsewhere in the kernel (wait_for_completion etc) and since the policy of where/why/how to synchronize is highly driver-specific.

And because it seems like every time I look at the existing
synchronous primitives, more problems seem to crop up ...
drivers using only the async urb primitives bypass all of
them.

- Dave



The only synchronization in the lowest level code (HCDs)
should be with the hardware.


Yes, that's the ideal state.

        Regards
                Oliver






-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to