Over
驱动牛犊
驱动牛犊
  • 注册日期2001-09-26
  • 最后登录2002-08-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1334回复:1

各位大虾:amcc5933的一些问题,急!!

楼主#
更多 发布于:2001-10-09 08:59
1、5933的nv内存里45h设定总线控制pci还是add-on initiate,这个nv内存我能在驱动程序中看到吗?
2、5933的i/o基地址寄存器0里面存放的地址指向的i/o空间里是什么内容?看驱动应该是pci寄存器(mcsr/ intcsr/ 等)吧?如果用add-on initiated bus master是不是就应该是add-on寄存器了呢?
3、怎么在pci initiated bus master下存取add-on端的寄存器,或者在add-on initiated bus master下存取pci端的寄存器呢?
4、add-on initiated bus master时,如何实现dma传输呢?

5、使用amcc5933芯片实现pci总线接口,硬件没问题(我拿一块商业板子做实验),同样的数据源,用它的驱动和配套dma应用例子能够使数据信号进入读fifo,用网上下载的那个pci_wdm_v14驱动和我的应用程序就不行,一读就阻塞了,因为fifo里面根本就进不来数据,一直是空的。具体情况如下:

首先,寄存器的设置一样。当没有数据源的时候,intcsr都是0x2800c000,mcsr都是0x6621。有数据源的时候,人家的mcsr就变成了fifo中有数,我的mcsr根本没变化。当然mwar等等都设置了。所有pci设置寄存器内容也都一样。

其次,那个驱动步骤也和手册里写的差不多:

1) 定义传输源/目的地址
MWAR 所有总线管理者写地址
MRAR 所有总线管理者读地址

2) 定义传输字节数。
MWTC 所有写传输字节数
MRTC 所有读传输字节数

3) 使能中断。
INTCSR 15 位 使能读中断
INTCSR 14 位 使能写中断

4) 重设 FIFO 标志位. (没做)
MCSR Bit 26 重设 add-on to PCI FIFO 标志
MCSR Bit 25 重设 PCI to add-on FIFO 标志

5) 定义 FIFO 管理策略,定义 FIFO 优先级策略,使能总线管理。

MCSR Bit 13 PCI to add-on FIFO 管理策略.
MCSR Bit 9 Add-on to PCI FIFO 管理策略.

MCSR Bit 12 读〉写
MCSR Bit 8 写〉读

MCSR Bit 14 使能 PCI to add-on FIFO 总线管理
MCSR Bit 10 使能 add-on to PCI FIFO 总线管理。

这样就行了吗?可我的fifo一直是空的,还有什么地方要设置的吗?还是有其他什么没考虑到的问题呢。
谢谢!!


当我们仰望星空,其实是在回顾历史
Over
驱动牛犊
驱动牛犊
  • 注册日期2001-09-26
  • 最后登录2002-08-23
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2001-10-10 09:53
当我们仰望星空,其实是在回顾历史
游客

返回顶部