Alan, > > There is only one device connected to the host and it has only control > > endpoint. This is not to intermix different control messages, see there > > are some 10 TDs containing data from one control message, If the UHCI is > > scheduling them vertically, every second TD in the frame causes NAK hence > > there is only one TD getting trasacted per frame. If there is some delay > > introduced between 2 TDs (may be by using a dummy TD), the device may be > > able to finish the first one before it gets the second. > > I'm not sure how 2.4 works. Under 2.6 the UHCI driver uses horizontal > scheduling, not vertical. It also uses full-speed bandwidth > reclamation, so it would make many attempts to send the TDs during each > frame if your device was full-speed. Since the device is low-speed, that > explains your difficulty.
In 2.4, horizontal/vertical scheduling is being controlled through a flag in the code. By default it is breadth first in 2.4 also. > If your device is so slow that it can't handle two TDs in a row, what > makes you think it will be able to handle two TDs that are separated by > some sort of dummy? I am really not sure that it will speed up, but its sort of experimentation to see if a dummy TD can be added and it can help in displaying things faster. > Modifying the driver to create such dummy TDs would be a very non-trivial > task, and the result probably wouldn't be accepted into the kernel. That's true, its just to see if this approach is feasible. Thanks Manoj ------------------------------------------------------- This SF.net email is sponsored by: The SF.net Donation Program. Do you like what SourceForge.net is doing for the Open Source Community? Make a contribution, and help us add new features and functionality. Click here: http://sourceforge.net/donate/ _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel