有类似的问题问了这样的问题,但信息似乎没有帮助。我有一个飞思卡尔iMX6芯片运行Linux3.14和Altera开发工具包。当我将工具包(带有Altera的演示PCIe代码)插入到iMX6载波板(PCIe连接)并输入lspci时,我将得到BAR0和BAR1未分配的内存。如果我们更改内存类型并不重要(32位对64位-不预取或不预取)。进去后,在设备下做了一个“回显1>启用”,仍然什么也没有。在这一点上,没有实现驱动程序,但是其他PCIe设备没有驱动程序,而且它们已经分配了资源(即资源0..3)。几乎每个PCIe内核配置设置都已添加。我会错过什么?
发布于 2016-02-04 07:10:39
使用i.MX6,Linux为BARx接受的最大内存量为15 by。当BAR的大小太大时,Linux无法分配内存空间,而没有分配内存空间。
您的BAR0和BAR1的大小是多少?我认为你应该缩小你的BARx的大小。如果您的FPGA上有一个DDR,请考虑跨距伸缩剂以允许i.MX6 -> DDR访问。
我写了一个小教程这里,解释如何通过PCIe (1车道)插入CycloneV GX的iMX6 (如果您感兴趣的话)。
https://stackoverflow.com/questions/35189728
复制相似问题