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

Reply via email to