Link_X
驱动牛犊
驱动牛犊
  • 注册日期2003-12-15
  • 最后登录2005-11-07
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:968回复:0

关于8139发送数据产生中断的问题(30分)

楼主#
更多 发布于:2004-03-15 11:22
我仿造LINUX 9.0中的8139too.c写了一个驱动程序, 没用网络设备,而是用的字符设备, 想实现一个很简单的发送功能, 就是直接把一些数( 1200字节长 )写到一个TX DESCRIPTOR中, 其中设DMA的阀值为1024字节.
可是我运行测试程序时,第一次打开设备文件,并写数后:
temp=global_card->tx_buf;

copy_from_user( temp, buf, n);

RTL_W32_F (TxStatus0, tx_flag | max(n, (unsigned  int)ETH_ZLEN));

就能产生一个TX 中断.

但如果不关闭设备,再次写数时,就什么中断都没产生了.

关闭设备,重新打开后写数,也只能产生一次TX中断.

我很迷惑,麻烦各位高手能讲讲8139中断的机制,谢谢!
游客

返回顶部