On Thu, 1 Sep 2005, Franck wrote: > Hi, > > I'm trying to write a host controller driver for a Arc hardware. I > need to know how nak pid should be handled ? Hardware can > automatically manage them, that means it automatically retry the > naked transaction. But since setup packet must not be "NAKed" or hub > endpoint #1 returns nak pid when no events happen on its port, I don't > think I can use this feature.
Sure you can. The hardware should be smart enough to recognize that a NAK response to a SETUP packet is an error, so it won't retry the transaction. And NAK response to an interrupt transfer definitely _should_ be retried, at the next interrupt period. > But if I do it manually, what should I > do when receiving a NAK ? Should I retry the transaction forever ? Yes. Until someone unlinks the URB. > What status should I return to usb core (through urb->status) when hub > endpoint #1 returns nak ? Don't return anything. The URB has not been completed, so it should remain active. Alan Stern ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ [email protected] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
