Hi All,
I have been trying to understand the Gadget Driver, Peripheral Controller Driver (SW) and Peripheral Device Controller (HW) interactions in AM335x. The PDC, as I understand is MUSB-HDRC. I can see in the MUSB Controller Datasheet (we got after signing an NDA with TI) that there are at least 3 Interrupt possibilities - INTRUSB, INTRTX and INTRRX. I have the following assumptions and doubts:
1. INTRUSB is called when events such as Connect/Disconnect, Suspend/Resume occur and this comes to the function "musb_stage0_irq" in "musb_core.c". The first doubt is that when I try to see the source of this Interrupt for USB1 - the code tells me it is IRQ No: 35. This is shown as reserved in the AM335x TRM. Am I right in understanding that this Interrupt has been routed here?
2. For the other 2 sources (which I assume should be 2 interrupts) - I could not find any code registering an interrupt or anything in the DTB to show where this interrupt would arrive. Since, I am able to receive and transmit data with a Gadget driver, I'm sure these interrupts should be received by the AM335x, I do not understand how.
Any light on how the MUSB Core interrupts are received and with what IRQ numbers in the AM335x unit would be very helpful. We are working on developing a USB Gadget driver and this is a part of understanding the entire flow.
Thanks in advance,
Best Regards,
Avinash