USB host RETRYDIS

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

USB host RETRYDIS

428 Views
jvalenzuela
Contributor I

I have an application with a K60 operating as a full-speed host, and have a question about the RETRYDIS bit in the USB0_ENDPT[0] register. Using the default value, 0, SETUP, IN, and OUT transactions operate normally. I would like to set this bit to allow the application to determine the response to NAKs according to the token PID. Specifically, NAKs are not permitted in response to a SETUP token, so instead of a hardware retry as would occur with RETRYDIS clear, the application will interpret a NAK as a failure without any reattempts. The problem I am encountering is the PID value returned in the buffer descriptor's TOK_PID[n] field during an IN transaction. During a IN transaction, the host generates the handshake, and a host is never permitted to generate a NAK or STALL, so I am assuming the only possible values of TOK_PID[n] after an IN transaction are DATA0, DATA1, timeout, and data error, however, I'm getting a NAK. If RETRYDIS is left clear, the same transaction works properly.

Thank you,

Jason Valenzuela

0 Kudos
1 Reply

364 Views
Kan_Li
NXP TechSupport
NXP TechSupport

Hi Jason,

It is possible for the Host to have NAK during IN transaction. Please kindly refer to the following for details.

pastedImage_0.png

Hope that helps,


Have a great day,
Kan

NXP Technical Support
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos