网卡驱动注册到PCI总线这一过程的分析(2)

2020-06-22 00:00:00 函数 代码 设备 驱动 复制

2. 网卡在PCI层的注册
2.1 数据结构
        前面章讲了总线、设备以及驱动方面的关系,也讲到了大多数网卡设备实际上是一个PCI设备。因此,本章就讲解网卡设备在注册时是如何注册到PCI总线上去的。在这里,以Intel的E100网卡驱动进行讲解。
        前面讲到每个PCI设备都由一组参数地标识,这些参数保存在结构体pci_device_id中,如下所示:


  1. struct pci_device_id {
  2.         __u32 vendor, device;                /* Vendor and device ID or PCI_ANY_ID*/
  3.         __u32 subvendor, subdevice;        /* Subsystem ID's or PCI_ANY_ID */
  4.         __u32 class, class_mask;        /* (class,subclass,prog-if) triplet */
  5.         kernel_ulong_t driver_data;        /* Data private to the driver */
  6. };

相关文章