适用于Linux的PCIe DMA驱动程序

时间:2018-03-09 23:34:42

标签: linux linux-kernel linux-device-driver fpga

我目前正在研究Virtex 7 FPGA。我正在尝试为Linux的PCIe DMA驱动程序安装驱动程序。但它给了我以下错误:

错误:函数'pci_enable_msix'的隐式声明[-Werror = implicit-function-declaration]

有人可以帮我解决这个错误吗?

2 个答案:

答案 0 :(得分:2)

Linux 4.8将其替换为pci_enable_msix_range。你可以像这样解决它:

#if LINUX_VERSION_CODE < KERNEL_VERSION(4,8,0)
        rc = pci_enable_msix(pdev, lro->entry, req_nvec);
#else
        rc = pci_enable_msix_range(pdev, lro->entry, req_nvec, req_nvec);
#endif

答案 1 :(得分:0)

Linux cross reference是解决此类问题的非常好的资源,因为您可以探索API在内核版本上的变化。