S3C2440驱动简析——DM9000网卡驱动(1)

本文深入分析S3C2440平台上的DM9000网卡驱动,介绍驱动框架,包括.probe、.remove及suspend、resume功能。同时,讲解了dm9000_netdev_ops和dm9000_ethtod_ops结构体中的关键函数,如open、stop、start_xmit等,并概述了硬件连线和相关资料。
摘要由CSDN通过智能技术生成

      继续分析内核自带的驱动源码,这次目标直指DM9000网卡驱动,2000行的驱动代码~~我们不能被表象所吓倒(虽然比起之前的驱动难度的确更大),根据之前掌握的知识和对网卡硬件的学习,我们还是要有信心去征服它的!

 

下面先给出整个驱动程序的大致框架,以理清我们凌乱的思绪。

 

 

由上图可见,本驱动采取虚拟平台总线驱动,在dm9000_driver驱动下有三个分支,其中.driver和.remove可分在同一类,实现suspend、resume、remove这三个功能。而另一重要分支则在.probe中实现,在内核探测设备的时候,绑定dm9000_netdev_ops和dm9000_ethtod_ops两个功能结构体,其包含的功能函数分别有:

 

①dm9000_netdev_ops:

 

②dm9000_ethtod_ops:

 

经过上述简单的分析之后,相信大家都对这个驱动程序的框架已经有一个大致的认识了,从篇幅和条理性等方面考虑,我们把分析具体函数的工作留到这个系列后面的博文去写。

 

 

在进入驱动程序分析之前,让我们先了解一下有关硬件连线及其资料(网上摘录)

 

DM9000的引脚和MINI2440<

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值