FPGA, SoC, And CPLD Boards And Kits
FPGA Evaluation and Development Kits
5993 Discussions

linux stratix 10 pcie driver

wenbin111
Beginner
296 Views

hi.

My device is stratix 10 1SX110HN2F43I2VG.
I want to implement that the fpga sends an msi/ MSI-X interrupt, and then the pcie driver receives the interrupt and communicates with the fpga.

According to this document:
https://www.intel.com/content/www/cn/zh/docs/programmable/683667/21-1/installing-the-linux-kernel-driver.html, The pcie driver is obtained in the./software/kernel/linux path, but this driver has no msi/ MSI-x interrupt related implementation. Can you provide a demo of the fpga sending interrupt, and then the pcie driver receiving the interrupt, and then communicating with the fpga, or provide information about the implementation of the driver interrupt? Thank you! 

Labels (1)
0 Kudos
2 Replies
RongYuan
Employee
235 Views
Hi,

Some PCIe ref designs may use L-/H-Tile AVMM+ IP. By following the UG (https://www.intel.com/content/www/us/en/docs/programmable/683667/23-4/introduction.html) to understand the IP and its signals, please generate a DMA design based on L-/H-Tile Avalon Memory-Mapped Intel FPGA IP for PCI Express as attached pcie_avmm_qsys_screenshot.png. You can find msi_* output signals in design and the descriptions are in Table 45. This example design is AVMM with External Descriptor Controller.

You can find several irq related codes in software/kernel/linux/intel_fpga_pcie_dma.c. It is possible to monitor related variables to understand the function.

In FPGA design, since the msi_intfc is used, it is also possible to monitor its operation.

I am not an expert of driver. The demo you want is very likely already included in the ref design from my view. As suggested above, please trace these variables and signals to check how all these in dealing with interrupts.


Regards,
Rong
0 Kudos
RongYuan
Employee
144 Views

If no further questions, I'll transit this case to community support. Thanks.

 

Regards,

Rong

0 Kudos
Reply