阅读:1617回复:2
PCI9054地址映射问题
通过PCI9054读取双端口RAM的内容,设置地址范围寄存器的值为:FFFE0000H,基址寄存器的值为:80000001H,映射到Bar1中,Bar1的基地址为0xD7EC0000,按照我的理解,对地址0xD7EC0000操作也就是对双端口RAM进行操作,但是发现往双端口RAM写数据时,只有D7EDf000~D7EDffff大约4Kb的地址可以正常写数据,不知道这是为什么?请教各位!谢谢了!
|
|
驱动牛犊
![]() |
沙发#
发布于:2007-06-21 11:46
可能以下几点,注意一下:
(1)驱动程序中确认一下 你分配了128K的PCI内存空间公路LOCAL bus使用,不算大,系统应该能分配足够的内 存空间。在驱动程序里startdevice中获得资源列表时,可以查看获得的长度的,你确认一下是否是128K。是否保存的是PCIBAR1的基地址。 (2)local bus 端与双口RAM地址线怎么接的,访问空间大小对不对 (3)使用DMA方式单次写一下,再读一下试试,每次16k。 (4)再不行,可以考虑是不是双口RAM有问题 仅供参考 |
驱动牛犊
![]() |
板凳#
发布于:2007-06-21 14:30
映射的应该是BAR2 BAR1已经被系统作9054配置寄存器IO的映射了
|