导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→[求助]8019网卡驱动

* 25606: [求助]8019网卡驱动

   fengtiantian 
fengtiantian发表的帖子 

 [求助]8019网卡驱动
检查硬件的时候发现page0寄存器基本没有问题,但对page1的物理地址寄存器进行操作的时候发现不可读写,一直为0。
初始化代码如下:
int eth_init (bd_t * bd)
{
 eth_reset ();
 put_reg (RTL8019_COMMAND, RTL8019_PAGE0STOP);
 put_reg (RTL8019_DATACONFIGURATION, 0x48);
 put_reg (RTL8019_REMOTEBYTECOUNT0, 0x00);
 put_reg (RTL8019_REMOTEBYTECOUNT1, 0x00);
 put_reg (RTL8019_RECEIVECONFIGURATION, 0x00); /*00; */
 put_reg (RTL8019_TRANSMITPAGE, RTL8019_TPSTART);
 put_reg (RTL8019_TRANSMITCONFIGURATION, 0x02);
 put_reg (RTL8019_PAGESTART, RTL8019_PSTART);
 put_reg (RTL8019_BOUNDARY, RTL8019_PSTART);
 put_reg (RTL8019_PAGESTOP, RTL8019_PSTOP);
 put_reg (RTL8019_INTERRUPTSTATUS, 0xff);
 put_reg (RTL8019_INTERRUPTMASK, 0x11); /*b; */
 put_reg (RTL8019_COMMAND, RTL8019_PAGE1STOP);
 put_reg (RTL8019_PHYSICALADDRESS0, bd->  bi_enetaddr[0]);
 put_reg (RTL8019_PHYSICALADDRESS1, bd->  bi_enetaddr[1]);
 put_reg (RTL8019_PHYSICALADDRESS2, bd->  bi_enetaddr[2]);
 put_reg (RTL8019_PHYSICALADDRESS3, bd->  bi_enetaddr[3]);
 put_reg (RTL8019_PHYSICALADDRESS4, bd->  bi_enetaddr[4]);
 put_reg (RTL8019_PHYSICALADDRESS5, bd->  bi_enetaddr[5]);
 put_reg (RTL8019_MULTIADDRESS0, 0x00);
 put_reg (RTL8019_MULTIADDRESS1, 0x00);
 put_reg (RTL8019_MULTIADDRESS2, 0x00);
 put_reg (RTL8019_MULTIADDRESS3, 0x00);
 put_reg (RTL8019_MULTIADDRESS4, 0x00);
 put_reg (RTL8019_MULTIADDRESS5, 0x00);
 put_reg (RTL8019_MULTIADDRESS6, 0x00);
 put_reg (RTL8019_MULTIADDRESS7, 0x00);
 put_reg (RTL8019_CURRENT, RTL8019_PSTART);
 put_reg (RTL8019_COMMAND, RTL8019_PAGE0);
 put_reg (RTL8019_TRANSMITCONFIGURATION, 0xe0); /*58; */

 return 0;
}

在进行put_reg (RTL8019_PHYSICALADDRESS0, bd->  bi_enetaddr[0]);操作的时候发现写不进去。

不知道是什么原因。有哪位大侠能指点一下?

发表时间:2007年8月22日15:36:04

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:[原创]求助请教各位老大:      &n
[下一篇帖子]:招聘硬件开发工程师(国网武汉高压研究院)1、熟悉模拟电路,数字电路的应用设计;