网站大量收购独家精品文档,联系QQ:2885784924

网卡设备驱动.pdf

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

网卡设备驱动

1.8139too网卡设备简介

一个PCI设备,总共有三个地址空间:内存,端口和配置。内存和端口其实是同一个内容

的不同访问路径而已。PCI设备的配置空间是标准化的,每个PCI设备的配置空间的前64

个字节的含义都是一样的。但各个设备的内存和端口空间是完全不一样的。在硬件概念上,

设备的I/内存和I/端口空间没有区别,其实都是设备拥用的一些读写寄存器。

8139too网卡拥有256字节的读写寄存器空间。它的整个布局如下:

/*Symbolicoffsetstoregisters.*/

enumRTL8139_registers{

MAC0=0,/*Ethernethardwareaddress.*/

MAR0=8,/*Multicastfilter.*/

TxStatus0=0x10,/*Transmitstatus(Four32bitregisters).*/

TxAddr0=0x20,/*Txdescriptors(alsofour32bit).*/

RxBuf=0x30,

ChipCmd=0x37,

RxBufPtr=0x38,

RxBufAddr=0x3A,

IntrMask=0x3C,

IntrStatus=0x3E,

TxConfig=0x40,

RxConfig=0x44,

Timer=0x48,/*Ageneral-purposecounter.*/

RxMissed=0x4C,/*24bitsvalid,writeclears.*/

Cfg9346=0x50,

Config0=0x51,

Config1=0x52,

FlashReg=0x54,

MediaStatus=0x58,

Config3=0x59,

Config4=0x5A,/*absentonRTL-8139A*/

HltClk=0x5B,

MultiIntr=0x5C,

TxSummary=0x60,

BasicModeCtrl=0x62,

BasicModeStatus=0x64,

NWayAdvert=0x66,

NWayLPAR=0x68,

NWayExpansion=0x6A,

/*Undocumentedregisters,butrequiredforproperoperation.*/

FIFOTMS=0x70,/*FIFOControlandtest.*/

CSCR=0x74,/*ChipStatusandConfigurationRegister.*/

PARA78=0x78,

1/47

PARA7c=0x7c,/*Magictransceiverparameterregister.*/

Config5=0xD8,/*absentonRTL-8139A*/

};

每个寄存器都有它特殊的含义和用途。举个例子(我们假设使用I/O内存的方式,ioaddr

为设备内存映射在CPU内存地址空间的起始地址,下述代码能读取板卡的版本号):

#defineHW_REVID(b30,b29,b28,b27,

文档评论(0)

火龙果的春天 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档