热搜关键词: 电路基础ADC数字信号处理封装库PLC

pdf

LINUX.Intel.网卡驱动

  • 1星
  • 2013-09-29
  • 174.48KB
  • 需要1积分
  • 1次下载
标签: LINUX

LINUX

                        LINUXIntel  E100  网卡驱动实例分析Lenn  liangvy@gmail.com  MSN  liangvy@bigfoot.com  QQ:28663  专注于零拷贝网卡与网络控制的研究,目前开发有  e100/e1000  零拷贝收发版驱  动程序;  旁路  TCP  拦截与  WEB  推送系统等;欢迎转载、共同学习:)  2006-1-17  本来是做  zero-copy  的,顺便把分析记录写下来,供大家参考,如果有错误清大家多包涵。只  挑重要的来说,一些细节的地方我也不大懂,要看芯片手册才行,我们作软件的就别看那么  细了,最重要是把主要流程弄清除。1、  系统结构定义  以下定义的结构,要保证长度是  32bit  的整数,也就是  4bytes  对齐,在自己添加成员的时候尤  其小心。  struct  cb  字面理解为  control  block;  struct  nic  网卡的基本信息,该结构是针对单个网卡的,而不是针对网卡驱动整个系统;  2、  子例程分析  static  inline  void  e100_enable_irq(struct  nic  *nic)  {  unsigned  long  flags;  spin_lock_irqsave(&nic->cmd_lock,  flags);  writeb(irq_mask_none,  &nic->csr->scb.cmd_hi);  spin_unlock_irqrestore(&nic->cmd_lock,  flags);  e100_write_flush(nic);  }  static  inline  void  e100_disable_irq(struct  nic  *nic)  {  unsigned  long  flags;  spin_lock_irqsave(&nic->cmd_lock,  flags);1 writeb(irq_mask_a……                       

展开预览

猜您喜欢

评论

zjjroom
Thank U!好资源!
2019-05-07 04:46:35
登录/注册

意见反馈

求资源

回顶部

推荐内容

热门活动

热门器件

随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
×