Linux NDIS驱动加载与测试指南.pdfVIP

  • 2
  • 0
  • 约4.25千字
  • 约 6页
  • 2026-03-11 发布于北京
  • 举报

LinuxNDIS驱动加载指导

手册说明:

本文档介绍了U8300模块在Linux系统下的驱动安装的方法,以及驱动安装完成后测试NDIS拨号

的方法。

驱动安装包括添加系统驱动以及集成Longsung提供的NDIS口驱动。

1USB端口信息

U8300模块USB会枚举出6个逻辑端口,他们的的枚举顺序,端口功能,端口名字如下表所示:

VendorID:0x1c9eProductID:0x9b05

InterfaceNumberInterfaceFunctionInterfaceName

0DebugDeviceDiagnosticInterface

1ModemModemConnector

2ATDeviceApplicationInterface

3PipeDevicePipe

4NDISWirelessDataDeviceEthernetAdapter

5adbAndroidCompositeADBInterfacelc

2USB驱动添加系统组件

2.1USB串口驱动添加

普通的3G数据卡(modem)使用USB接口,对上层的功能接口是串口,在Linux系统中通常使用

USB转串口的驱动。

驱动添加需要配置Linux内核,配置方法如下:

cdkernel

makemenuconfig

devicedrivers-usbsupport-usbserialconvertersupport

选中如下组件:

USBdriverforGSMandCDMAmodems

选中后保存配置。

2.2增加具体设备驱动

打开内核源码文件option.c(路径一般为drivers/usb/serial/option.c);

在源码中找到option_ids数组,在数组中添加Longsung产品的VID(0x1c9e)和PID(0x9b05);

2.3USB串口驱动过滤NDIS接口

由于USB串口跟NDIS都属于非标准CDC设备,需要防止NDIS口被USB串口驱动加载而导致无

法正常加载NDIS口驱动。有三种方式可以解决:

1)比较新的kernel版本(3.8以上),在option.c中的opiton_ids中添加blacklist,驱动在加载时

会自动跳过blacklist指定的interface;

设置interface4不加载otpion驱动:

添加blacklist到option_ids数组中:

2)对于之前的内核,不支持在option_ids数组中设置过blacklist,要先增加U8300的PID和VID:

在probe函数内判断当前interface号进行过滤;

3)对于使用usb-serial.ko驱动的用户,需要在usb-serial.c文件中的usb_serial_probe()函数开始

增加如下判断来过滤NDIS接口:

3NDIS驱动加载方法

3.1NDIS驱动添加系统组件

NDIS驱动需要系统的usbnet驱动支持,因此需要配置Linux内核,配置方法如下:

cdkernel

makemenuconfig

devicedrivers-Networkdevicesupport-usbNetworkA

文档评论(0)

1亿VIP精品文档

相关文档