【发布时间】:2012-09-06 23:58:50
【问题描述】:
Linux 内核 2.6
我有一个通过 GPIO 加载的 fpga,连接到运行 linux 的开发板。 fpga 将通过 pci-express 总线发送和接收数据。但是,这是枚举 在启动时,因此没有发现任何链接(因为在启动时未加载 fpga)。
如何在 linux 中强制重新枚举 pci-e 总线? 是否有一个简单的命令或者我必须进行内核更改? 我需要热插拔 pcie 设备的能力。
【问题讨论】:
-
设备驱动程序不应该解决这个问题吗?
-
不,似乎 pci-e 驱动程序仅在启动时自动枚举,如果在启动后插入设备,则没有任何反应。 lspci 显示没有设备并且没有设备文件存在
-
我认为答案是“不”,尽管我很愿意犯错。 Altera 似乎有一种解决方法,谷歌搜索“Altera FPGA Configuration via Protocol”。如果我对这篇论文的理解正确,Altera 在(一些?)Stratix V 器件中提供了一个闪存,它始终可用于 PCIe 总线枚举,而大部分 FPGA 可以在闲暇时(重新)编程。
标签: linux configure fpga pci-e