PCI的基址寄存器应该怎样使用呢?这个问题可能不好回答,再具体一点吧比如通过读PCI配置空间得到BAR0的值为0xCFF00000,其他BAR为0,那么怎么通过BAR0的值访问板卡上的寄存器呢?什么函数能实现对这个映射空间的读写?
回复(4) 2010-10-25 13:29 来自版块 - 非USB硬件驱动开发
表情
abc3240660pci配置空间是一组寄存器的集合 可以通过bar0扩展出另一组集合 假设这个通过bar0扩展出来的寄存器集合中有10个寄存器 那么可以通过基地址bar0和偏移量offset来定位到每一个寄存器 然后就可以使用类似READ_PORT_UCHAR( bar0+offset, data...(2010-12-03 16:09)
nfrdrive多谢楼上,我也是这样理解的,但是具体的怎么用还是不知道 应该不能直接赋地址去读吧?(2010-10-27 09:58)
yizi0000 [附件] 书上说基地址寄存器存放的是PCI设备映射的内存地址或IO空间的首地址。按此来说,当想读或者写这片内存中的内容时,就是CPU对此基地址值加上偏移量所对应的地址进行访问。看一下附件中第十页的第三条。不知道说对了没。(2010-10-27 00:22)
nfrdrive看来问题问的不太好 这样说吧,从基址寄存器得到的基地址应该怎样使用呢?希望大牛给指点一下(2010-10-26 16:46)

返回顶部