USB无线网卡的Linux驱动移植
,驱动移植无线网卡的 ,,, ,,~,,
,,赵秋亮李良儿刘玉良 浙江 海洋学院 机电工程学院舟山 ,,,,,,:::
。 ,成具体配 置 操 作 系 统 为 ,: ,,,,; ,:,,,:,,,,,,,,, 引 言,,,硬 件 为 优 龙 开 , ,;,,,,,,:,,,~,,,,,,:,,,,,,: 无线网卡使用 ::,,,,,:,,,:,,,,,,,,,:,,,, ,,, ,发板操 作 系 统 为 安 装 位 置 为,,,~,,,,,,,,,,;,, ,。无线技术无线传输速率最高达相比传统 ,,,,,: ,,,,,,,, 交 叉 编 译 器 为 安 装 位 置 为::;,,,:,,,,,,,,,,,,!,,,的拥有更高的无线带宽让 产品 ,,,,,,,,,:,,,,,, ,,,,,,, ,,安 装 位 置 为~,::,,,,,,,,,,,~,,:, ;,,,,,,,,!,,局域网内的数据传输 更 加 高 效能 有 效 地 减 少 网 络 延 迟 ,,,,,文件系 统 为文 件 系 统 生 成 工 具 为 ,~,,:,;,::,,,,,,!、、。使语音 视频网络游戏在线点播更流 畅还 使 :,,,:,,,,,,,无 线 网 卡 驱 动 源 码 为,,:,,,,,, ;,,,,,,~,,,,,,,,, ,,, 用了 空 频 道 检 测 技 术::,::~,,,,,;,,,;,,;,,;,,,
,, 在检测到周边有无线 信 号 干 扰 时可 自 动 调 整 频 宽 模 式,,,,,无 线 管 理 工 具 为 ;,,,,,,~,,,;,;,,,::,, ,;,,,,,;,;,,,,。 ,避开信道干扰使无 线 信 号 更 加 稳 定当 干 扰 消 失 时又 ,,, 。,。另外还需要准备 内核 ::,,,,,,,~,,,,,,,,,,,,,,,,,,可自动捆绑空闲信道充 分 利 用 信 道 捆 绑 优 势提 升 无 线 ,,,内核配置 ,,,,,~,,。,,性能主要技术参数主芯片 ,,:,,,:,,;,;,,,,,,,,,
,,,,进入内核 安 装 目 录运 行 内 核 ,,,:,,,,,,,;,,;,!
,,, 频 率 范 围 为 支 持配置 接 口 ,,,,,:,,, ,,,, ,,,:
,,,无线
无线速率最高可达,, ,,,,:,,,,,,,,: ,,:::~:,,,,~:,,,:,,,,;,,,;;:,,,,,,,,, ,
,,增加 支持,,,工 作 模 式 可 和,,,,, , ,,,,,:,,,,,,,::,,,~:;,,,,,,,,,,
,,,,选 择 ,,、,、,;,:; ,,;,;,:,,,~:,,,,,,,,,选加 密 特 性 为 ? ? 位 ,,,,,,,, ,,,,,,,,,,,,,,
,,,,,,,,,,支 持 的 操 作 系 统 为 , ,;;,,,,,,:,~,,,,:;;,,,,,,,;,,,,,,,,,,,,,? ,,,,,,,,,,,,,,,,,,,,,, ,,,。,,,,,。 ,:,,,~,,,,:,,:,~,,,,:, ,;;,,,,;,,:,,,,,,,,,,
,,增加 支持 ,,,:, 移植要求 ,,,,,,选择,,,,,:,~:,;,:;,,;,;,,,,,;,,,,?,? , ,,移植目 标 是 在 原 有 监 测 系 统 的 基 础 上 实 现 ,,, ,。“”“,务必 选 中和 ,,:,,::,,,,:,;,::,;,,,,,,,,,, ,,,为 系 统 提 供 数 据 远 程 无 线 采 集 无线网卡 功 能 扩 展,, ,”、“,:,~:,,:,,,:,,,,;,,,,:,;,,;,,,;,,;,,,,,,,,,,,,, ,,。
原 监测系统是在 优 龙 开 发 板 上 开 ,,, ,,,,,,:,”。选项 ;,,。发的其 内 核 版 本 为 无 线 网 卡 是 ,,,~, ,,,,,,,,,,, ,。 另外还需 要 拷 贝 的 配 置 文 件目 ~,~::,~,,:,,!外部 无 线 网 络 系 统 提 供 的 指 定 产 品 ::,,,,, :,,,,,,录下 的 到 文 件 系 统;,,,;,~,~:,,;,,: ~,,,,,,,, ,, ,,, 其主芯片 内核版本要求的 ,,:,,,,,,,,, ,,~;,,;,,,,
。,是也 就 是 说整 个 移 植 过 程 要 求 ,,,,,,,,,,,,,,, :,,,。 下并 重 命 名 为 将 ,~,;~,~::,;,~,,:,;,~,,,,,,,,,,,,,,无线 网 卡 驱 动 必 须 是 且 工 作 环 境 是 ,;,,,;,,,,,,,,
中的 ,:,,,。,公司对主芯片驱动提供 ,,~,,,,,,,,,,;,,,;,,,,,,, ,",,",,,:,,::,,,:,:, ;,:,;,,:,,。 , 的建议是 经测试机 测试通过,: ,;,:,,,~,,,,,,, ,,修改为 ,若直接 将 驱 动 使 用 将 出 现 大 内 核 编 译,,~,,,,,,,,, ,,",,",,,:,,::,,,,;,:,,::,,,,, , 。量错误如何将驱动移植 到 还 需 要 进 一 ,,~,,,,,,,, ,,“”运行生 成 根 文 件 系,,:,,,::,::,,:,,, ,,,,,,,,,,。步研究 ,。统并重新下载到目标板, ::,,:,,,,,,,
内核文件修改 ,,,,,~,, 移植过程 ,
、首先将 内 核 中 的 ,,~,,,,,,,,;,;,:;,~,;;,,,,,,,,, 移植环境搭建 ,,,、,。 拷 贝 至 内 核 相 应 目 录 下~,~,,,;,,~ ,,~,,,,,,, ,,,移植 过 程 采 用 虚 拟 机 下 安 装 来 完 ,, ,;,,,,,,: 、 然后以 修改和替 内核为蓝本进行文件建立 ,,~,,,,,,,,
。,换需要替换的文本清单为 ,,,浙江 省教育厅科研项目浙江 省科技厅 公益技术 研究 项 ,,::,:,:,,, ,,,,、、目 录,,:,~,;,,,~,,,,;,;,,,~,,,~,,,~,;,,? , ,,,“”目浙江 省重中之重海洋渔 业科学与技术学 科 开 放 课: ,:,:,,:,,、、、、、,,,;,:~,~,;,;,:;,~,,,,~,~:,~,::,;,~,,,,,,,,,。,,
,:,::,:,
,,,,,,,、,,目录 ,,:,~,;,;,,,~,,,,;,,~,::,,~? 安装 ,,, ,,,;,;,,,::,,,,,, ,,目录,,:,~,;,:~,,::,;,~? ,无线网卡 配 置 需 要 使 用 一 些 无 线 网 络 管 理 工 具如
,、。 本 项 目 使 用 等,,,,、、、 目录,,,~,,:,,,,,,;,;,,,::,, ,,,;,;,,,,,;::;,;,,:,,,~,:;;,,,:,;~,,,,,,,,,,, ? ,,,,
,,。,来实现首先下载 然后解 ,:~,~ ::,::,,,,,,,,;;,,,,,,,,,,,,,
、、。。压编译安装下面介绍具体步骤 ,,,, ,、、,目录? ,,,,:~,~,,,,:,;,,,,:;,;,:,:,;,:,,,。解压 ? ,,, ,,目录,;,;,,,,;,,,:,,,,,,,,? ,,,,,,;;,,::,,,,,,,,,,,,,,,,,, ,,,,。 目录,,,,,,:,? 。 修改 ,,,;;,,,? ,文件替换完毕进行内核编译, ,修改第设置可执行文件安装路径行, ,,,,;,,;, ,,,,, ,,,,,~,::,,;;,,,,,,,,,。 生成内核后下载到目标板在内核编译的过 ,,,,;,,,修改第设置 交叉 编译器 行::,, ,,,、程中还会出现 许 多 错 误主 要 是 所 调 用 语 法 错 误:,: ,,,,,,::,~,,,::,,,,,,,,,,,,,,,,,,,~,::,, ,、。 函数数据类型不匹配段符号未定义等问题主要的修改
,, 修改第设置交叉 编译器行,, ,,,内容
,,,,,,,,,~,,,::,,,,,,,,,,,,,,,,,,,~,,,,, ,内核编译时若出 现 只 语 法 和 语 法 错 误 :,::,,?
,, 修改第设置交叉 编译器行 ,,,,,,,,。 需按照本编译系统 所 采 用 的 编 译 标 准 进 行 语 法 修 改例
,,,,,,,,,,,,~,::,,,,,,,,,,,,,~,,,,,,,,,,,,,,,,,, ,,,,,,“”如中 函 数 的 第 ,;::;,;,,:,;,,::,,,,,,,,,,,:
。命令 运行 ,,,;? 。 , 其 中第 行提 示 有 语 法 错 误行 的 错 误 按 照,,,, ,,,,
,。 ,,语法修改即可消除其他错误为所调用函数数据类型运行 命 令可 执 行 文 件 安 装 于 :,: ,,,;,,,,,,,~,,?
,。不匹配所致修改所调用函数的数据类型即可 ,。 目录下,::,;;,,,,,,,
, “,,”拷贝两个库和到 文 件 系 统出现提示未 定 义 之 类,,,,,,,:,,,,,,,:,,, , ,,,,,,:::,~;,~,,,? ? ,
,,,目录下运 行 命 令 后 重 新 生 成 ,;,,,::,,,,,,:~,:,,,, ,。的错误时在相应源码中将其注释即可
,。,,压缩根文件并下载到 板函 数 错 误 直 接 采 用 版::,,,,, ,,,:,,,,,,,,;,;,,,;,~:, ,,,,,, ? ,
。 本替换版本即可,,,,,, 、。等下载到目标板将安装目录下的 ,,::,,,,,,,,,? ,,,, 类错误和警 告一定要消除消除,;,,:,,~,,,,,? !,, 主要使用的命令及功能。方法是替换 文件及相关文件 ,~,:~,~;,,,,,,回车查看所有无线网卡 ? ,::,,,,,
查看 ,,? ,,::,,,,,,,:,,,,:, 无线网卡驱动编译 ,,,,,, " " ,配置网卡 为 ,? ,, ::,,,:;,,,,,,,,,,,,,,,,,,首 先下 载 主 芯 片 的 最 新 驱 动 ,;,,,;, ,,,,,, ,搜 索 周 边 所 有 无 线 ? ,,,:,,,,,,,,,:,,;,,,,,,,,,,,, 然 后 解,,,,,,,,,~,,~,,,,,,:,,:,:,,,,,,,,,,,,,。 网卡的 ,,,,,压进入相应目录修改文件 、。::,,,,,,;,,,;, 无线网卡测试 ,,,,,修改,::,,, ,
,,,插入无线网卡自动安装 驱动 ,,,,,,~:,,::::,~:,,,,,,~,,::,,,,,,,,,,, ,,
,,,,,,::,:,,~,,,,~,:,,,,,,,~,,,: ,,,;,,;, ,;,,,, ,,,, ,修改第关闭 行模式,, ,: ,,,~;,,,,,,,,,:,,,:,, !,,,,,,,~,,,:,, ,,,,,::,,,,,,,,,:,,,,,,,:,, ,,,,,,,修改第打开 模式行::,:,;,~,,,,,;,~,;;, ,,,,;,:;~,,,,,,,,,,,, ,,, ,,, ,,,
,,,,,,,::,,,,,,,,,:,,,,,,,:, ,,:,,,::~:,,,,,,;,,, ~,,,,,:,~:,,,,,,,,,,,,,, !,,,,,, ,,~,,,,,~~,,~~,, ~,,,,;, ,,,:,,;,,,:,,;,;,,;,,,,,,,, 修改 ,,,,;;,,,
,,,修改交叉 编译器和 内核安装目录,,;,,~,,;::;:,::::::,,,,,, ,,,
,,,, ,::,,::,,~:,,,,,,,~,,, ,,,;,,,;加载模块,, ,,,,,,~,,:
,修改第交叉 编译器所在路径 行为 :: , ,,,,:,,,,,~,,:,,
,,,,,,,,,,唤醒 无线网卡驱动:,:,,::,,,,,~:,,,,,,,,,,~,,:,,,,,,,,,,,,,, ,,,,
,,修改第直接注释掉 以下语句行 ,,::,,,,:~,,,,, ,,,,,,,,,,, ,,,,,,,,,,,:,, ,, 搜索周边无线网络,
, ,修改第指定行内核路径,,,,,, ,,,,,, ,::,,:,;,,,,,,,,,,,,:,:,,,;,,,,,,, , ,,,,,,,, ,,,:;,;,,,:,,,,,,,,, !,,, ,,,;,~,;:, ,,,,~,;,:,;,,,,,,,,!!
,,,,修改 完 毕 后直 接 即 可 在 目 录 下 生 成 :::::::,::::::::, ,,;,,,,~,
。 。下载驱动到目标板,:,,,,~,,:
," ,", ,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,,,,,:,," ," ,,,,,,,,,,,,,,,,,,,,,,,:,,:,,, ,,,,,, ,,,,:,,, ,,,,,:: ,,
," " ," ,,,,,,,,,,,,;,,,,,,, ;,,:,," "" ,,,,,,,,,,,,, ,,,,,,,,,,,::,:,::~,:,:,:;,,;,,,,,;,;,,,,,;,, ,,
,,配置 的 ,,,,: ,,,,,,,,,,,,,,::,:,::~,:: ,:;,,;,,,,,;,;,,,:,,,;,,,,, ,,,::,,,,,,,;,,,,,,,,,,,,,,,,, ,,,::,:,,:,~;~;;,,:::,,,,,,,
,配置成功后利用回显 ,,::,,,,,,,,,,,,,;,: :,:,,,,;,: :,:,,, !!
,,,,::,:,,~,,,,;,,;,,,, , ,,测试 ,,,,,,,,, ,,~,,:,;,,,,,,~,,,:,,,~;,,,,,,,,,:,,,,, !,测试时需 要 加参 数 控 制 否 则 会 一 次 数,:,,,, ,,,,,:,,,,~,,,:,, ,,,,, ,。直不停测试并且无法 ,,,,,,,,::,:,;,,::,,,,:,,,,,,,,,, ,,,,,,::,:,;,:,,,,,,,,,,,,,,,,,,, ,,, " ,", ,,,:,,,,:,,,,,,,,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,;,,! ,,,,:,;,,,,;, ,;~;,:,,,,, ,,, ,::;,,,:,,,, ,!,,, ,,,:,,,,,,,,,,,,,,:,,,,,,,, ,,;,,:,;,,,;,,,,,!,,,,,,,::,,,,,,,,,, , ,,,, ,,,;,:,,,,,,,,,,,,:,,;,,,,;:,,,,,,,,,,,,,,,!,,,,:,,,,,,,;,, ,,, ,,,,,,,,,,,,,,,:,,,,,,,,, ,,,,, ,,,,:,,;:,, ,:,;,!,!,,,,,,,,,,:, ,:,:;,,,,,,,,;,:;,,,;:;,;,:;,,, ,,,,,,,,,,,,;;,:,,, ,,,,,,,, ,:~,,,,,,,:,,,,:,,,,,,,,,,,,
,,,,,,,~,,,,,,,,::,,,,,,;,;,,,,,:: ,:,,;,;,;, !,
, 讨论,:,:: ,
,,,,,,,,,,,,,,,,:,,,,,,,,,:,,:,,,,,,,,,,,,: !,,,在 无 线 网 卡 驱 动 移 植 过 程 中将 主 要 的 文 件 ,,, ,,,,:,,,: ,,,:,: ,;,:;,,,;,;,,;,,,,:,,;;,:,,,,,,,,、、、 等 进 行 替 换,,,~,,~,~,,,~,,;,;,:;,;;,,,;,;,:,,,,,,,动态分配 自 ,,, ,。,后内核已经能编译 成 功将 内 核 下 载 并 重 启 开 发 板 后, 动申请动态~,,,,加载 驱 动 成 功并 能 利 用搜 索 到 周 边 的 网 ,,, ,,,,,,,~::,,,:,,, , 。 络在利用给驱动指定 引起内时 ,::,,,,,::,,,,,,,,,, ,显示如下信息 。。、核崩溃初判原因 不 应 为 程 序加 入 ,;;,,::,,~,,,,,,,,,,,,::,:,;,~,,,;,,,,,,, , 。 最等 文 件 后指 定 成 功 :,,~,::,;,~,::,,,,,,,,,,, ,,,,, , ,,~,,:,;,,,,,,~,,,:,,,~;,,,,,,,,:,,,,,! ,后进行 测试时出现 和 本 机均 失 败 的 ,,,,,,,,,,,,,,,,:,,,,,,~,,,:,, ,,,。 ,,,情况使用跟踪执行过程发现函 ,,:;,;:,:,,,,,,,,,,,,,,::,:,;,~,~::,,,: ~,~::,,,,,,,,, ,,,,,数参数传递错误替换 等文件后 ,~,:~,,,,;,:,;,,:,,,,,,,,,,:,,,,;,,;, ~,~::,,:~,~::,:,,,,,,,,,,,,,。成功,,,,,, , ,,,,,,;,,;, ,;,,,,,::,;,,, ~,~::,,:,,,,,,,,,,,,,若系统内核升 级 到 驱 动 能 编 译 通 过 ,,~,,,,,,:,,;,,,,,::,;,,, ,;,,,;;::,,,,,,,,,,,,,,,,,,
,。 但只要一发出命 令内 核 即 崩 溃即 使 高 版 本 内 ,,,,,::,,,,,,,,,, ~,~::,,:,;,,,;;::,,,,,,,,,,,,,,,, ,。核在移植时也有问题这些问题需要进一步研究,,,,,, ,;,,;:,,,,,,,,,,,:,,,;,;,,;,,,,,,,,,,,,:: ;
,,,, ,结 语~,~::,,:,;,,;:,,,,,,,,,,,:,,,;,;,,;;,,,,:: ,,,,,,, ,;;,:~;,,,,,,,, 通过将高版本 无线网卡驱动向低版本内核移植 ,,,,,,, ,:~,;,,::,,,,,,,,,:,~:~,::;,,,,,,, 的过程可以看出移植过程较繁琐需要更改的内容较多,,,,,,,,,,,,,,,,,, ,,,,,。 有些部分还需要手动修改源码 ,,,,,,,,,,,,,,,,,,:,,, 参考文献运行命令后,显示最终配置, ::,,,,,, ,,,,,::,,:,;,,~,,,;,,, , ,,,,产品#说明书#,::,,,,,,:,,,:,,,::,,, ,,,,,,徐英慧 ——— 基于 嵌入式系统
与 ,,,~, ,:,;,,,,,,~,,,: ,, ,~; ,,,,,,,,, :,,,, ,,,,,, ,,:,,,: !,,~,,
,,北京航空航天大学出版社,,,,::,, ,:,,,,,,,,,~,,,:,,
,,,,,,,,,,,,,,,, :,,:,,:,,,,,,,;;,,,::,:,,,~,,~,,,,,,,,, ,::,,:,;,,,,::,,,,,,,: ,,,,:,,,;;,:,,,,, ,,,
,,,,,,,,,,,,, ~;,,;,,,,:::,,:,,:,,, ,,~,~,::;,:,,,;,,,:~~;,,,~,,::,,~,,,,,,,,,,,,,,,
,,,,,;,,,,,,,,,,,,,,,, ,:,,,,,,,,,,,,,,,,, ,,,,
,,,。 赵秋亮讲师研究方向为海洋机电系统检测与通信技术
收稿日期,,,,
编辑芦潇静 ,:,,:,,:,,