TI E2E Community
USB Host, IRQ has a while loop that is taking too much time for RTOS
We are trying to get the AM335X USB Host running in an RTOS. I have been using the StarterWare (02_00_00_07) as the starting point. I have several questions/issues related to the Interrupt service routine,
from the file usbhostenum.c in the IRQ handler, USBHostIntHandlerInternal(), there is a call to dmaTxCompletion().
inside dmaTxCompletion() there is a while loop which is waiting for BIT1 to clear of some register. we see delays of 10ms+ in this while loop, because this function is called from an IRQ it is cause significant timing issues in the RTOS.
My first problem is i cannot find that register in the TRM (spruh73f.pdf) I think its address is (USB_O_TXCSRL1 + EP_OFFSET( ulEndpoint))
closest i could come was some discussion on HOST_TXCSR in spurh73f.pdf section 184.108.40.206.2.2.1 (Bulk OUT Setup: Host Mode)
I cannot find the details of this register in the register description, thus i cant verify the address. Furthermore, it appears that perhaps the spurh73f does not have a complete description of the functionality which "corresponds" the code in usbhostenum.c
I suspect I am missing some detailed documentation on the Mentor USB OTG Controller (musbmhdrc)
Getting the USB Host to work in an RTOS is critical to the decision of whether we can integrate the AM335x in our next generation product.
Is there any way to get more the details of the Mentor USB OTG controller. We would be more than willing to support whatever NDA's are required
Regarding the NDA to get Mentor USB OTG controller spec, please work with your local FAE.
We are checking on the delay aspect and TRM gaps and we will get back to you shortly.
Note: If this post answers your question, please click the Verify Answer button below. Thank you!
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.