PCIE BAR基地址可以在driver中指定范围吗?
时间:10-02
整理:3721RD
点击:
OS在启动时会为PCIE EP分配BAR基地址,找到块适合BAR空间大小(比如16'h10000 bytes)的闲置空间给EP,那其它设备访问此设备时,就是基地址+偏移地址,那这基地址在driver中是如何分配的?可以在指定范围内分配不?比如要求挂载在0x20000000~0x2fffffff的范围内。
对软件的东西不太懂,大家交流下。
对软件的东西不太懂,大家交流下。
虽然不懂,但是表示支持一下!
老大,QQ聊天啊,还在不在啊!
驱动应该会有一套算法吧,不过我觉得可以不必关心基地址,
BAR是系统软件在初始化时为所有的PCI设备统一分配的。随意设置就有可能与其他设备冲突。据我理解,即使设一个不冲突的地址和Limit,也可能要涉及MMU的管理等等。
随意设置是会有问题,我想的是设定在较大的范围内,让系统分配一小块地址给BAR作为基地址。我们这做driver的哥们也不太熟悉这块。
现在是有这个需求,用了AXI Interconnect去连接BAR0, BAR2, BAR4,这样PCIE去访问不同BAR地址时,AXI需要能够识别不同的分支去访问合适的地址,现在想到的是用不同的地址空间来区分。
?在QQ里你的好友昵称是什么啊?
