Ubuntu下更新以及热拔插PCI设备
最近在做FPGA作为PCIe endpoint的开发,每次修改FPGA后,Ubuntu似乎就不能通过PCIe对其进行读写,需要重启电脑才行。
如果电脑调试过程中,需要对设备的带电热拔插也涉及到这个问题。其实比较简单就能实现,使用Ubuntu驱动的remove和rescan就可以。
我的PCIe设备地址是0000:02:00.0,在此驱动目录下执行remove进行PCIe设备的删除。
删除之后再在相同总线0000:00:00.0下进行rescan即可。
分别使用以下两条命令:
echo 1 > /sys/bus/pci/devices/0000:02:00.0/remove
echo 1 > /sys/bus/pci/devices/0000:00:00.0/rescan