On Fri, 24 Oct 2003, Manoj Sharma wrote: > Hi, > > I have a low speed display device with just a control endpoint. When some > large data is sent on the control endpoint, it is able to ACK for first > data packet in a frame, but it NAKs for the next data packet so the rest > of the frame goes waste because UHCI doesn't schedule any other TD in that > frame. > > In UHCI driver (usb-uhci.c), I tried inserting TDs with 0 byte of data in > between 2 genuine TDs for that device but the device NAKs even for a 0 > byte data packet. > > Is there any way to introduce some sort of delay between 2 TDs so that the > device gets time to process the first one? any other suggestion pls?
Although you didn't say, it looks like you are running under Linux 2.4. Try using 2.6 and see if that makes any difference. So far as I know, the 2.6 version of the UHCI driver _will_ schedule other TDs in the same frame as a NAKed data packet for a control endpoint. On the other hand, if you only have one USB device attached and it has only endpoint 0, what other TDs could there be for the driver to schedule? Different control messages for the same endpoint can't be intermixed; one has to finish completely before the next can begin. Alan Stern ------------------------------------------------------- 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