我正在尝试编写在用户空间中运行的 PCI 设备驱动程序。不是我的想法,客户想要什么。Target 是一个嵌入式 Linux 开发板,用户永远不会超过一个。我是一名经验丰富的 C 程序员,了解 Linux,只是不熟悉 Linux 驱动程序开发。
这真的是一个设备驱动程序还是只是一个库?我是否需要使用典型的调用 pci_register_driver 等,或者我可以使用 fopen 访问设备,并使用 mmap 和 ioperm 来访问它?
中断将使用 MSI 模型完成。还需要处理 DMA 传输。该设备将向用户传输大量数据。
关于这个主题的信息不多,LDD3 只用了几页的篇幅,在 SO 上我找不到其他任何东西。
提前致谢!