MSI PCIE Interrupt set up using Avalon-MM PCIe Hard IP Core as a Qsys component...
I'm confused about how to properly set up MSI interrupts across the PCIe interface using the Avalom-MM interface of the PCie Hard IP Core. I am confident the PCIe host driver is enabling MSI's correctly because it worked with a previous adapter. I have configured the FPGA's logic surrounding the core to enable the interrupts via the CRA port at address 0x0050. This logic requests an interrupt by setting the core's RxmIrq<0> input to 1. When this happens, I can read the interrupt status register at 0x0040 and see the correct bit set. However, I don't ever see the Root Complex call my host-driver's interrupt handler. I'm unsure about how the host driver is meant to acknowledge the interrupt using the CRA port. How does the host driver access the interrupt status register to acknowledge the interrupt? But, the first question is how do I make sure I've done everything to get the Root Complex to call my driver's ISR routine?