Forum Discussion
Mikhail_a
Occasional Contributor
5 months agoAgilex-7 MSI-X missing om AXI MCDMA for PCIe
Hi! We are using AGIB023R18A1E1VC device and AXI MCDMA for PCIe IP core. We set it to MCDMA+BAS+BAM mode as we want to use MSI-X interrupts. Our driver register for example 2 MSI-X interrupts in Lin...
Wincent_Altera
Regular Contributor
5 months agoHi,
Based on your description, you have correctly configured the hardware and Linux driver for MSI-X, and lspci confirms MSI-X is enabled with available vectors.
However, the interrupts are not seen on the host.
I would suggest to check
- MSI-X table mapping
- Ensure the BAR (Base Address Register) specified for the MSI-X vector table (e.g., BAR=0 at offset 0x00100000) is correctly mapped and accessible by both the FPGA and the Linux OS.
- If the mapping is off, MSI-X table writes may not trigger interrupts.
- Masked vectors
- MSI-X must remain enabled (Enable+ in lspci).
- Vectors must be unmasked (Masked- in lspci). If vectors are masked in the device or host, interrupts are blocked.
- Confirm that the device or driver does not inadvertently mask vectors after initialization.
- Driver initialization issues,
- Maps the MSI-X vectors properly
- Registers the interrupt handlers correctly
- Binds the expected number of vectors (matching what is requested)
Regards,
Wincent