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

四。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