I am facing a problem with the event handler to SRIO doorbell interrupt in C6455 DSP. The doorbell interrupts are routed to Rapid IO Interrupt 4 (EVENT ID 22, INTDST4)(through DOORBELL0_ICRR registers) which is mapped to CPUINT4. The event handler is attached to CPUINT4 / EVENT ID 22 using CSL_intcPlugEventHandler(). But the event handler is raised ONLY for the first doorbell packet received after power on.
The doorbell status register DOORBELL_ICSR0 is set properly on receiving each doorbell packet. But the interrupt is NOT reflected in corresponding Event Flag register (EVTFLAG0) and Interrupt Flag register (IFR). (CPUINT4 enabled in IER register. GIE enabled in CSR register. The corresponding bits in DOORBELL0_ICSR and EVENT_FLAG0 registers are cleared after the first interrupt.)
Please suggest any ideas to solve this issue? Thank you in advance.