windows 无线网卡驱动就是一个NDIS小端口驱动,原理就是实现NDIS小端口的接口函数。
下面将具体就一个wifi驱动进行分析:
驱动开发环境:win7+ddk7600.16385.1+vs2008,分析ddk自带例子usbwifi,对rtl8187无线网卡进行开发,用ndis6.0版本进行开发。
驱动程序的初始化,初始化所有的结构体。下面具体讲usb设备的初始化:
1.WdfUsbTargetDeviceCreate 创建一个usb设备。
2.WdfUsbTargetDeviceSelectConfig 获取创建usb的基本信息
3.WdfUsbInterfaceGetConfiguredPipe
4.WdfUsbTargetPipeSetNoMaximumPacketSizeCheck
5.WdfUsbTargetPipeIsInEndpoint
这些都重要的函数。具体的初始化过程有待详细查看ddk的帮助文档。