我正在做一个项目,我需要从用户空间通过 PCI BAR0 访问 FPGA 内存。
我以前在旧内核中所做的是打开位于/sys/bus/pci/devices/my_device/中的名为resource0的文件,然后使用mmap()函数将 FPGA 内存暴露给用户空间。
不幸的是,在内核版本 4.7(架构 ARM64)中,似乎由于某种原因没有创建 resource0 文件。
当我使用lspci时,我可以看到系统识别了 FPGA 的 PCI BAR。此外,当我搜索/sys/bus/pci/devices/my_device/目录时,我可以看到有一个名为resource的文件,其中包含写入其中的 PCI BAR 的地址。
有没有人熟悉类似的情况?如何让linux创建resource0文件?