PCI Endpoint 测试功能的驱动程序

如果根复合体连接到运行 pci_epf_test 功能驱动程序的可配置 PCI 端点(根据 [1] 配置),则应使用此驱动程序作为主机端驱动程序。

“pci_endpoint_test”驱动程序可用于执行以下测试。

测试设备的 PCI 驱动程序执行以下测试

  1. 验证 BAR 中编程的地址

  2. 引发传统 IRQ

  3. 引发 MSI IRQ

  4. 引发 MSI-X IRQ

  5. 读取数据

  6. 写入数据

  7. 复制数据

此 misc 驱动程序为连接到根复合体的每个 pci_epf_test 功能创建 /dev/pci-endpoint-test.<num>,应使用“ioctls”来执行上述测试。

ioctl

PCITEST_BAR

测试 BAR。要测试的 BAR 的编号应作为参数传递。

PCITEST_LEGACY_IRQ

测试传统 IRQ

PCITEST_MSI

测试消息信号中断。要测试的 MSI 编号应作为参数传递。

PCITEST_MSIX

测试消息信号中断。要测试的 MSI-X 编号应作为参数传递。

PCITEST_SET_IRQTYPE

更改驱动程序的 IRQ 类型配置。IRQ 类型应作为参数传递(0:传统,1:MSI,2:MSI-X)。

PCITEST_GET_IRQTYPE

获取驱动程序的 IRQ 类型配置。

PCITEST_WRITE

执行写入测试。缓冲区的大小应作为参数传递。

PCITEST_READ

执行读取测试。缓冲区的大小应作为参数传递。

PCITEST_COPY

执行读取测试。缓冲区的大小应作为参数传递。