Linux 网络设备驱动程序设计(4)

DM9000网卡驱动详解
本文详细解析了DM9000网卡驱动的初始化过程、打开操作及数据发送流程。主要包括:初始化函数DM9000_init()中net_device结构的分配、地址映射、芯片类型读取等;DM9000_open()函数实现的网络接口激活;DM9000_xmit()函数中的数据发送机制。

四。DM9000网卡驱动深度分析

  1. DM9000的初始化

    DM9000_init()

    {

      1. 分配 net_device 结构

      2. 从 platform_device 中获取地址中断号

      3.  把获取的地址映射成虚拟地址 操作函数 io_remp()

      4. 读取芯片类型

      5. 设置操作函数集

      6. 注册网卡驱动 Register 

    }

  2. DM9000_open()

  {

    1. ifconfig eth0 up

 

  }

  3. DM9000_xmit()

   {

     1. 通知协议线,暂停向驱动传送数据用的函数  netif-stop-queue

     2. 写入发送数据的长度

     3. 写入待发送的数据

     4. 启动发送

     5. 等待发送结束

   }

转载于:https://www.cnblogs.com/lvxiaoning/p/5080759.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值