首页资源分类应用技术射频与通信技术 > 华为模块Linux内核驱动集成指导

华为模块Linux内核驱动集成指导

已有 445110个资源

下载专区

上传者其他资源

    文档信息举报收藏

    标    签:华为

    分    享:

    文档简介

     华为模块Linux内核驱动集成指导

    文档预览

    华为模块 Linux 内核驱动集成指导 文档版本 发布日期 2.0 2014-11-17 版权所有 © 华为技术有限公司 2014。保留一切权利。 未经华为技术有限公司书面同意,任何单位和个人不得擅自摘抄、复制本手册内容的部分或全部,并不得以任 何形式传播。 本手册描述的产品中,可能包含华为技术有限公司及其可能存在的许可人享有版权的软件。除非获得相关权利 人的许可,否则,任何人不能以任何形式对前述软件进行复制、分发、修改、摘录、反编译、反汇编、解密、 反向工程、出租、转让、分许可等侵犯软件版权的行为,但是适用法禁止此类限制的除外。 商标声明 、 、华为、 是华为技术有限公司的商标或者注册商标。 在本手册以及本手册描述的产品中,出现的其他商标、产品名称、服务名称以及公司名称,由其各自的所有人 拥有。 注意 本手册描述的产品及其附件的某些特性和功能,取决于当地网络的设计和性能,以及您安装的软件。某些特性 和功能可能由于当地网络运营商或网络服务供应商不支持,或者由于当地网络的设置,或者您安装的软件不支 持而无法实现。因此,本手册中的描述可能与您购买的产品或其附件并非完全一一对应。 华为技术有限公司保留随时修改本手册中任何信息的权利,无需提前通知且不承担任何责任。 责任限制 本手册中的内容均“按照现状”提供,除非适用法要求,华为技术有限公司对本手册中的所有内容不提供任何 明示或暗示的保证,包括但不限于适销性或者适用于某一特定目的的保证。 在适用法律允许的范围内,华为技术有限公司在任何情况下,都不对因使用本手册相关内容及本手册描述的产 品而产生的任何特殊的、附带的、间接的、继发性的损害进行赔偿,也不对任何利润、数据、商誉或预期节约 的损失进行赔偿。 在相关法律允许的范围内,在任何情况下,华为技术有限公司对您因为使用本手册描述的产品而遭受的损失的 最大责任(除在涉及人身伤害的情况中根据适用的法律规定的损害赔偿外)以您购买本产品所支付的价款为限。 进出口管制 若需将本手册描述的产品(包括但不限于产品中的软件及技术数据等)出口、再出口或者进口,您应遵守适用 的进出口管制法律法规。 隐私保护 为了解我们如何保护您的个人信息,请访问 http://consumer.huawei.com/privacy-policy 阅读我们的隐私政策。 华为模块 Linux 内核驱动集成指导 关于本文档 关于本文档 修订记录 文档版本 日期 V1.2.9 2013-12-30 V2.0 2014-11-17 章节 All All All 8 9 10 说明 第一次发布 更新支持的内核系统和内核版本 更新 USB 和 CDC ECM 驱动集成说明 增加 CDC MBIM 和电源驱动集成说明 增加 make menuconfig 配置 增加 FAQ 增加缩略语 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 3 华为模块 Linux 内核驱动集成指导 目录 目录 1 目的............................................................................................................................................ 6 2 范围............................................................................................................................................ 7 3 概要............................................................................................................................................ 8 4 USB 串口驱动集成 .................................................................................................................... 9 4.1 简要说明..................................................................................................................................... 9 4.2 代码修改..................................................................................................................................... 9 4.2.1 增加宏定义......................................................................................................................... 9 4.2.2 添加 USB 零包机制 ...........................................................................................................28 4.3 内核的编译配置 .........................................................................................................................29 5 CDC ECM 驱动集成 ............................................................................................................... 31 5.1 简要说明....................................................................................................................................31 5.2 内核编译配置.............................................................................................................................31 6 CDC MBIM 驱动集成............................................................................................................. 32 6.1 简要说明....................................................................................................................................32 6.2 内核的编译配置 .........................................................................................................................32 7 电源管理集成 .......................................................................................................................... 33 7.1 USB 串口驱动电源管理集成 .......................................................................................................33 7.1.1 代码修改 ...........................................................................................................................33 7.1.2 内核的编译配置.................................................................................................................34 7.2 CDC ECM 电源管理集成 ............................................................................................................35 7.3 CDC MBIM 电源管理集成...........................................................................................................35 7.4 自动休眠延迟时间修改设置........................................................................................................36 8 make menuconfig 配置 .......................................................................................................... 37 8.1 USB 串口驱动编译配置项...........................................................................................................37 8.2 PPP 拨号的相关配置项...............................................................................................................38 8.3 CDC ECM 驱动编译配置项.........................................................................................................39 8.4 CDC MBIM 驱动编译配置项 .......................................................................................................41 8.5 电源管理配置项 .........................................................................................................................43 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 4 华为模块 Linux 内核驱动集成指导 目录 9 FAQ .......................................................................................................................................... 45 9.1 如何确认系统中是否已经存在正确的 USB 串口驱动 ...................................................................45 9.2 如何确认系统中是否已经存在正确的 CDC ECM 驱动 .................................................................45 9.3 如何获取单板当前的端口映射情况信息 ......................................................................................46 9.4 出现端口类似不是从 ttyUSB0 开始的情况如何处理 ....................................................................46 9.5 如何手动加载串口驱动...............................................................................................................46 9.6 若无法映射端口或无法查找对应端口形态需要提供哪些 log.........................................................47 10 缩略语 .................................................................................................................................... 48 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 5 华为模块 Linux 内核驱动集成指导 目的 1 目的 本文档主要针对华为模块设备基于 Linux 内核系统(如 Android、Ubuntu 和 Chrome OS 等)驱动集成开发活动进行相关的指导说明,主要面向基于 Linux 内核产品开发商的驱 动开发人员。 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 6 华为模块 Linux 内核驱动集成指导 范围 2 范围 功能 描述 支持的系统 Linux、Android 和 Chrome OS 支持的模块制式 WCDMA/CDMA/LTE 支持的内核版本 2.6.12 以前的版本 本文档不支持 2.6.12~2.6.21 支持 USB 串口驱动集成(章节 4 ) 2.6.22~2.6.31  支持 USB 串口驱动集成(章节 4 )  支持 CDC ECM 驱动集成(章节 5 ) 2.6.32~3.8  支持 USB 串口驱动集成(章节 4 )  支持 CDC ECM 驱动集成(章节 5 )  支持电源管理集成(章节 7 ) 3.9 及以后的版本  支持 USB 串口驱动集成(章节 4 )  支持 CDC ECM 驱动集成(章节 5 )  支持 CDC MBIM 集成(章节 6 )  支持电源管理集成(章节 7 ) 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 7 华为模块 Linux 内核驱动集成指导 概要 3 概要 本文档主要介绍如何修改 Linux 内核代码,使客户系统(如 Android 等)能够正常加载 模块。因本文档支持的系统都是基于 Linux 内核的系统,下文统一称 Linux 侧。 华为模块在 Linux 侧使用的驱动分为两部分。  自研接口:对应使用的内核驱动名称为 option,这部分接口需要将华为模块的驱动 适配数据添加到驱动中才能正常使用。  通用接口:如 ECM、MBIM。对于这部分接口,华为模块直接适配通用驱动,无需 修改代码。 两部分驱动都需要进行内核编译配置项设置,确保驱动编译进内核。 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 8 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 4 USB 串口驱动集成 USB 串口驱动集成可满足模块最基本功能的使用。 4.1 简要说明 该部分为华为自研接口,包括:Modem、PCUI、Diag、GPS 和 GPS Control 等。其中,  Modem 端口用于 Linux 侧和华为模块进行 PPP-Modem 拨号命令及数据业务的交 互。  PCUI 端口用于 Linux 侧与华为模块进行普通 AT 命令的交互。  Diag 端口用于抓取华为模块侧 log 信息。  GPS 和 GPS Control 端口用于下发 GPS 相关命令和获取 GPS NMEA 信息。 这部分集成涉及修改的 Linux 内核源码文件为: linux_src/drivers/usb/serial/option.c linux_src/drivers/usb/serial/usb_wwan.c linux_src/include/linux/usb.h 4.2 代码修改 4.2.1 增加宏定义 步骤 1 在 linux_src/include/linux/usb.h 中添加如下宏: 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 9 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 若部分内核已经添加,则无需添加此部分。详文如下: #define USB_VENDOR_AND_INTERFACE_INFO(vend, cl, sc, pr) \ .match_flags = USB_DEVICE_ID_MATCH_INT_INFO \ | USB_DEVICE_ID_MATCH_VENDOR, \ .idVendor = (vend), \ .bInterfaceClass = (cl), \ .bInterfaceSubClass = (sc), \ .bInterfaceProtocol = (pr) 步骤 2 在 linux_src/drivers/usb/serial/option.c 文件中的 static const struct usb_device_id option_ids[]的 id 列表中增加如下语句,用于匹配设备数据。 必须确保内核代码中已包含如下列表中所有语句,否则,可能导致模块 USB 端口映射不正常。 以下括号内对应内容为{VID,InterfaceClass, InterfaceSubClass, InterfaceProtocol}。 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0xff, 0xff) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x01) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x02) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x03) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x04) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x05) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 10 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x06) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x31) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x32) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x33) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x34) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x35) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x36) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x61) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x62) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x63) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x64) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x65) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x66) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x0A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x0B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x0D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x0E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x0F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x3A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x3B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x3D) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 11 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x3E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x3F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x6A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x6B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x6D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x6E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x6F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x10) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x12) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x13) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x14) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x15) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x17) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x18) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x19) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x1A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x1B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x1C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x1D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x48) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x49) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 12 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x4A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x4B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x4C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x4D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x72) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x73) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x74) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x75) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x78) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x79) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x7A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x7B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x7C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x01, 0x7D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x01) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x02) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x03) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x04) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x05) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x06) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x31) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 13 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x32) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x33) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x34) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x35) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x36) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x61) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x62) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x63) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x64) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x65) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x66) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x0A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x0B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x0D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x0E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x0F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x3A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x3B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x3D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x3E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x3F) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 14 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x6A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x6B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x6D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x6E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x6F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x10) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x12) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x13) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x14) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x15) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x17) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x18) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x19) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x1A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x1B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x1C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x1D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x48) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x49) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x4A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x4B) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 15 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x4C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x4D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x72) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x73) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x74) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x75) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x78) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x79) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x7A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x7B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x7C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x02, 0x7D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x01) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x02) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x03) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x04) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x05) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x06) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x31) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x32) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x33) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 16 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x34) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x35) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x36) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x61) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x62) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x63) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x64) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x65) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x66) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x0A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x0B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x0D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x0E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x0F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x3A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x3B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x3D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x3E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x3F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x6A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x6B) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 17 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x6D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x6E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x6F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x10) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x12) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x13) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x14) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x15) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x17) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x18) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x19) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x1A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x1B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x1C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x1D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x48) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x49) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x4A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x4B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x4C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x4D) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 18 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x72) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x73) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x74) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x75) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x78) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x79) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x7A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x7B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x7C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x03, 0x7D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x01) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x02) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x03) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x04) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x05) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x06) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x31) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x32) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x33) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x34) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x35) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 19 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x36) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x61) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x62) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x63) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x64) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x65) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x66) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x0A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x0B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x0D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x0E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x0F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x3A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x3B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x3D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x3E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x3F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x6A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x6B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x6D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x6E) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 20 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x6F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x10) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x12) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x13) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x14) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x15) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x17) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x18) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x19) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x1A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x1B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x1C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x1D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x48) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x49) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x4A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x4B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x4C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x4D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x72) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x73) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 21 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x74) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x75) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x78) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x79) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x7A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x7B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x7C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x04, 0x7D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x01) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x02) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x03) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x04) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x05) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x06) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x31) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x32) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x33) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x34) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x35) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x36) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x61) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 22 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x62) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x63) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x64) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x65) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x66) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x0A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x0B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x0D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x0E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x0F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x3A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x3B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x3D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x3E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x3F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x6A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x6B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x6D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x6E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x6F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x10) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 23 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x12) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x13) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x14) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x15) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x17) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x18) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x19) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x1A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x1B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x1C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x1D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x48) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x49) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x4A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x4B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x4C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x4D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x72) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x73) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x74) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x75) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 24 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x78) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x79) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x7A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x7B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x7C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x05, 0x7D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x01) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x02) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x03) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x04) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x05) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x06) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x31) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x32) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x33) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x34) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x35) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x36) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x61) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x62) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x63) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 25 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x64) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x65) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x66) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x0A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x0B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x0D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x0E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x0F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x3A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x3B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x3D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x3E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x3F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x6A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x6B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x6D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x6E) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x6F) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x10) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x12) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x13) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 26 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x14) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x15) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x17) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x18) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x19) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x1A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x1B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x1C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x1D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x48) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x49) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x4A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x4B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x4C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x4D) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x72) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x73) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x74) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x75) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x78) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x79) }, 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 27 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x7A) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x7B) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x7C) }, { USB_VENDOR_AND_INTERFACE_INFO(HUAWEI_VENDOR_ID, 0xff, 0x06, 0x7D) }, 4.2.2 添加 USB 零包机制 根据 USB 协议,添加关于传输中对于零包的处理。 修改文件为 linux_src/drivers/usb/serial/usb_wwan.c。 步骤 1 增加对 bcdUSB 值的定义:#define HW_bcdUSB 0x0110; 增加对华为 vid 值的定义:#define HUAWEI_VENDOR_ID 0x12d1。 如图所示: 详文如下: #define HW_bcdUSB 0x0110 #define HUAWEI_VENDOR_ID 0x12d1 步骤 2 在 linux_src/drivers/usb/serial/usb_wwan.c 文件中的 usb_wwan_write 函数内增加 定义:struct usb_host_endpoint *ep=NULL;;增加位置如下图红框所示: 详文如下: struct usb_host_endpoint *ep=NULL; 步骤 3 在 usb_wwan_write 函数增加对零包的判断,增加位置如红框所示: 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 28 华为模块 Linux 内核驱动集成指导 USB 串口驱动集成 详文如下: if((HUAWEI_VENDOR_ID == port->serial->dev->descriptor.idVendor) && (HW_bcdUSB != port->serial->dev->descriptor.bcdUSB)){ ep = usb_pipe_endpoint(this_urb->dev, this_urb->pipe); if(ep && (0 != this_urb->transfer_buffer_length) && (0 == this_urb->transfer_buffer_length % ep->desc.wMaxPacketSize)){ this_urb->transfer_flags |= URB_ZERO_PACKET; } } 4.3 内核的编译配置 文本配置方式,修改 linux_src/目录下的.config 文件。  USB 串口驱动相关的配置项: CONFIG_USB_SERIAL=y CONFIG_USB_SERIAL_OPTION=y CONFIG_USB_SERIAL_WWAN=y USB 串口驱动相关配置项在 make menuconfig 的图像界面配置方法,请参考 8.1 。  PPP 拨号的相关配置项: CONFIG_PPP=y CONFIG_PPP_MULTILINK=y CONFIG_PPP_FILTER=y CONFIG_PPP_ASYNC=y 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 29 华为模块 Linux 内核驱动集成指导 CONFIG_PPP_SYNC_TTY=y CONFIG_PPP_DEFLATE=y CONFIG_PPP_BSDCOMP=y USB 串口驱动集成 PPP 拨号相关配置项在 make menuconfig 的图像界面配置方法,请参考 8.2 。 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 30 华为模块 Linux 内核驱动集成指导 CDC ECM 驱动集成 5 CDC ECM 驱动集成 5.1 简要说明 CDC ECM 驱动是华为模块适配标准的 ECM 通用驱动,无需额外的代码修改,直接配 置编译项即可。该功能支持内核 2.6.22 及以后的版本。对于内核为 2.6.22 之前的版本, Linux 侧若需要使用数据业务,则需要集成 PPP 相关配置项(参考章节 4.3 中关于 PPP 配置项的说明),使用 PPP-Modem 拨号的方式进行数据业务。 5.2 内核编译配置 文本配置方式,修改 Android 内核的编译配置(在 linux_src/目录下的.config 文件中)。 CDC ECM 驱动的相关配置项: CONFIG_USB_USBNET=y CONFIG_NETDEVICES=y CONFIG_USB_NET_CDCETHER=y make menuconfig 的图像界面配置,请参考 8.3 。 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 31 华为模块 Linux 内核驱动集成指导 CDC MBIM 驱动集成 6 CDC MBIM 驱动集成 6.1 简要说明 CDC MBIM 驱动是华为模块适配标准的通用驱动,无需额外的代码修改,直接配置编 译项即可。该功能支持内核 3.9 及以后的版本。 6.2 内核的编译配置 文本配置方式,修改 Android 内核的编译配置(在 linux_src/目录下的.config 文件中)。 CDC MBIM 驱动的相关配置项: CONFIG_USB_USBNET=y CONFIG_NETDEVICES=y CONFIG_USB_NET_CDC_MBIM=y make menuconfig 的图像界面配置,参考 8.4 。 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 32 华为模块 Linux 内核驱动集成指导 电源管理集成 7 电源管理集成 该功能集成支持内核 2.6.32 及以后的版本。对内核 2.6.32 之前的版本,休眠唤醒功能 则不支持。 7.1 USB 串口驱动电源管理集成 因 Linux-2.6.32 以上的内核已自带 selective suspend 电源管理特性,所以只需将电源 管理的开关打开,USB 串口驱动即支持 selective suspend 电源管理。 7.1.1 代码修改 步骤 1 首先,确定修改的位置,不同版本可能修改的函数不同。在 linux_src/drivers/usb/serial/option.c 文件中,找到结构体中 option_1port_device 和 attach 指向的函数。内核 2.6.35 此处指向的是 usb_wwan_startup()函数,如下图。 步骤 2 定义 linux_src/drivers/usb/serial/usb_wwan.c 中的 usb_wwan_startup()函数变量 后,加入红框部分语句,即可支持 selective suspend 特性。(先增加宏 #define HUAWEI_VENDOR_ID 0x12d1) 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 33 华为模块 Linux 内核驱动集成指导 电源管理集成 详文如下: if (serial->dev->descriptor.idVendor == HUAWEI_VENDOR_ID) { if ( 0 != (serial->dev->config->desc.bmAttributes & 0x20)){ usb_enable_autosuspend(serial->dev); } } 步骤 3 在 linux_src/drivers/usb/serial/option.c 文件的 option_driver 的结构体中,增加对 reset_resume 函数的调用(复位一个已被挂起的 USB 设备时调用此函数),加入红 框部分语句。如图所示:(部分版本已取消,若没有则不需添加) 详文如下: .reset_resume = usb_serial_resume, 7.1.2 内核的编译配置 文本配置方式:修改 Android 内核的编译配置(在 linux_src/目录下的.config 文件中)。 CONFIG_USB_SUPPORT=y CONFIG_USB =y CONFIG_PM_RUNTIME=y CONFIG_USB_SUSPEND=y 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 34 华为模块 Linux 内核驱动集成指导 电源管理集成 7.2 CDC ECM 电源管理集成 CDC ECM 驱动修改部分:在 linux_src/drivers/net/usb/usbnet.c 中的 usbnet_probe()函数内加入红色框部分语句,即可支持 selective suspend 特性。如图 所示(先增加宏#define HUAWEI_VENDOR_ID 0x12d1): 详文如下: if(xdev->descriptor.idVendor == HUAWEI_VENDOR_ID){ if( 0 != (xdev->config->desc.bmAttributes & 0x20)){ usb_enable_autosuspend(xdev); } } 7.3 CDC MBIM 电源管理集成 CDC MBIM 驱动修改部分:在 linux_src/drivers/net/usb/usbnet.c 中的 usbnet_probe(……)函数内加入红色框部分语句, 即可支持 selective suspend 特性。 如图所示(先增加宏#define HUAWEI_VENDOR_ID 0x12d1): 详文如下: if(xdev->descriptor.idVendor == HUAWEI_VENDOR_ID){ if( 0 != (xdev->config->desc.bmAttributes & 0x20)){ usb_enable_autosuspend(xdev); 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 35 华为模块 Linux 内核驱动集成指导 } } 电源管理集成 7.4 自动休眠延迟时间修改设置 电源管理开启时,系统默认的自动休眠延迟时间是 2 秒,即主机和模块之间的 USB 通 信。如果出现空闲时间超过该时间值,则主机会自动使 USB 模块进入休眠状态。客户 可以在下表的基础上,根据自己的需要修改该延迟时间。 产品型号 MU736 自动休眠的最小延迟时间 5s 原因 GPS 定位首次数据上报可能概率性较长,5s 能保证首次 GPS 数据上报 在 linux_src/drivers/usb/core/usb.c 中,修改如下: 详文如下 static int usb_autosuspend_delay = 2;/* Default delay value,* in seconds */ 可通过修改 usb_autosuspend_delay 的值修改延迟时间。  需确保该休眠延迟时间大于模块的 GPS 数据上报周期的时间(确保 GPS 数据上报过程中, 系统不会自动使模块进入休眠,避免 GPS 数据传输中断)。  模块的 GPS 数据上报周期的时间设置,请参考产品 AT 命令手册的 AT^WPDFR。默认情况 下,GPS 数据上报周期为 1s,自动休眠的最小延迟时间为 2s。 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 36 华为模块 Linux 内核驱动集成指导 make menuconfig 配置 8 make menuconfig 配置 8.1 USB 串口驱动编译配置项 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 37 华为模块 Linux 内核驱动集成指导 make menuconfig 配置 8.2 PPP 拨号的相关配置项 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 38 华为模块 Linux 内核驱动集成指导 make menuconfig 配置 8.3 CDC ECM 驱动编译配置项 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 39 华为模块 Linux 内核驱动集成指导 make menuconfig 配置 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 40 华为模块 Linux 内核驱动集成指导 make menuconfig 配置 8.4 CDC MBIM 驱动编译配置项 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 41 华为模块 Linux 内核驱动集成指导 make menuconfig 配置 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 42 华为模块 Linux 内核驱动集成指导 8.5 电源管理配置项 make menuconfig 配置 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 43 华为模块 Linux 内核驱动集成指导 make menuconfig 配置 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 44 华为模块 Linux 内核驱动集成指导 FAQ 9 FAQ 9.1 如何确认系统中是否已经存在正确的 USB 串口驱动 打开 Terminal,执行命令 dmesg,查看内核的 log 信息。如查看到类似如下图内容, 即说明设备正常加载。 9.2 如何确认系统中是否已经存在正确的 CDC ECM 驱动 打开 Terminal,执行命令 dmesg。如出现下图红框部分信息,则说明存在正确的 CDC ECM 驱动。 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 45 华为模块 Linux 内核驱动集成指导 FAQ 9.3 如何获取单板当前的端口映射情况信息 步骤 1 执行命令 dmesg,查看驱动是否加载成功。假如 log 信息中存在下图中红框部分信息, 则说明驱动已经被成功加载(idProduct 因产品的不同而不同)。  步骤 2 当前模块设备的 Modem 和 PCUI 等端口的设备文件名称查询命令:ls /dev/ttyUSB* 对多数华为模块,Modem 端口对应/dev/ttyUSB0;Diag 端口对应/dev/ttyUSB1;PCUI 端口对应/dev/ttyUSB2。 9.4 出现端口类似不是从 ttyUSB0 开始的情况如何处理 需确定 ttyUSB 口的使用情况。在断开模块时,确认系统是否已释放 ttyUSB0 端口资源。 9.5 如何手动加载串口驱动 确认已配置添加编译驱动 option 进入内核(参考章节 4 )。 步骤 1 查询模块的 VID 和 PID(Linux 系统上可通过输入 lsusb 获取,如果不支持该命令,可 以通过 windows 或相关产品文档获得)。若得到模块的 VID=12D1,PID=1573,则说 明华为模块 USB 串口驱动加载成功。 步骤 2 打开 Terminal,输入 echo "12d1 1573" >/sys/bus/usb-serial/drivers/option1/new_id。 步骤 3 输入 dmesg 或者 ls /dev/ttyUSB*,查看加载是否成功。 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 46 华为模块 Linux 内核驱动集成指导 FAQ 9.6 若无法映射端口或无法查找对应端口形态需要提供哪些 log 步骤 1 打开 Terminal,执行命令 dmesg 并保存输出结果于 dmesg.txt 文档。 步骤 2 执行命令 ls –l /sys/bus/usb/drivers/,保存输出结果于 logcat.txt 文档,确保此目录 下有 option 选项。 步骤 3 执行命令 ls –l /sys/bus/usb/drivers/option/***/,保存输出结果于 logcat.txt 文档。 步骤 4 执行命令 cat /sys/bus/usb/drivers/option/***/bInterface*,保存输出结果于 logcat.txt 文档。 步骤 5 如果能执行命令 cat /proc/bus/usb/devices,将输出结果保存于 logcat.txt 文档(如 果不能请忽略此命令)。 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 47 华为模块 Linux 内核驱动集成指导 缩略语 10 缩略语 缩略语 CDC CDMA ECM GPS LTE MBIM 英文全名 Communications Device Class Code Division Multiple Access Ethernet Networking Control Model Global Positioning System Long Term Evolution Mobile Broadband Interface Model OS Operating system PPP Point-to-Point Protocol USB Universal Serial Bus WCDMA Wideband Code Division Multiple Access 中文解释 连接设备配置 码分多址接入 以太网控制模型 全球定位系统 长期演进 移动宽带接口模型 操作系统 点对点协议吗 通用串行总线 宽带码分多址 文档版本 2.0 (2014-11-17) 华为所有和机密 版权所有 © 华为技术有限公司 48

    Top_arrow
    回到顶部
    EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_service@eeworld.com.cn 或通过站内短信息或QQ:273568022联系管理员 高进,我们会尽快处理。