用于PCI设备的Linux驱动程序没有热插拔

时间:2013-03-14 00:32:19

标签: hardware linux-device-driver

我正在为必须热插拔的PCIe设备编写Linux PCI驱动程序。

设备通过电缆连接到适合PCIe插槽的PCIe转接驱动器卡。

当设备在启动时插入时,我可以使用lspci找到它,并且驱动程序探测成功。但是,如果在运行时拔下电缆,lspci仍会显示设备存在,并且即使在向remove回显“1”之后,也不会调用驱动程序的PCI /sys/bus/pci/rescan方法。

如果设备未在启动时插入,则此问题会自行解决:即使连接了电缆,它也不会显示lspci,并且probe方法不会被调用

我的模块使用pci_register_driver()pci_unregister_driver()库;该驱动程序仅使用proberemove方法(无suspendresume),id_table初始化vendor iddevice id }。

是否需要调用Linux内核中的函数来注册热插拔的PCI设备?

0 个答案:

没有答案