Hi, I'm currently updating/re-writing a host driver for SL811 circuit for kernel 2.4. I've several questions about expected works of host driver :
1) Does synchrone unlink must call complete() callback ? If yes Is supposed it must call it before returning from unlink command ? 2) What is the expected end of life of an urb ? Does is it until complete() call ? Until there is something else in status than -EINPROGRESS ? 3) Where/how/who uncompleted urbs are free during usb_disconnect() off a device (and then also then cleanup host driver) ? Is it the responsability of host driver to unlink all urbs attached to device during it's own hci_free_dev() ? Or is it the usbcore that do job indirectly ? 4) How does work the urb->next. Does the device driver submit all urbs of ->next chain and it is the responsability of the host driver to send urb in the chain order ? What is stop condition in cas of ring ? Stop to resubmit an urb when the next argument is NULL ? When any urb->status got any error value after compete() ? Does urbA is resubmited by host driver just after complete() of urbA or only when pointed by urbB->next = urbA after complete() of urbB ? Is't a good things to try to attach a new host driver with hcd.c for 2.[56] kernel ? Thanks for any answers PS: Is there a "How to write a host driver" or "what is exactly the work of host driver" :) Sylvain ------------------------------------------------------- This SF.net email is sponsored by: Microsoft Visual Studio.NET comprehensive development tool, built to increase your productivity. Try a free online hosted session at: http://ads.sourceforge.net/cgi-bin/redirect.pl?micr0003en _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
