由于公司产品之前用的wifi芯片太贵,成本太高,最近选购了海华的wifi芯片,厂家提供了驱动源码以及固件、nvram等等资源。师父将本次wifi驱动移植任务交给我,本文简单记录下wifi驱动移植的过程。

1、驱动源码以及固件下载

点我下载,提取码6666


第一个txt为wifi模组,第二个是运行wifi芯片内程序所需要的固件,第三个可能是测试用的吧,不太清楚。。第四个是驱动源码。

2、配置文件

2.1、将驱动源码放入内核驱动中

解压驱动源码,本次命名为cywdhd,将cywdhd文件放入/driver/net/wireless目录下。

2.2、修改配置文件

修改wireless目录下的Kconfig,添加下面一行:

source "drivers/net/wireless/cywdhd/Kconfig"

修改wireless目录下面的Makefile,添加下面一行:

obj-$(CONFIG_CYWDHD)    +=cywdhd/

在driver目录的上一级目录,执行make menuconfig,出现图形化配置界面
依次选择Device Driver -> Network device support -> Wireless LAN -> Cypress FullMAC wireless cards support,按下空格选择为M,代表编译为模块,编译完成后会后ko文件产生。

图中Cypress FullMAC wireless cards support,是cywdhd下面内的Kconfig文件中的内容。
图中bin文件和txt文件就是上面网盘中的,我只是改了个名字。

2.3、指定固件以及nvram的路径

开始我是在config文件内配置固件(固件就是上面那个bin文件)的路径,但是编译出来的包不好使。最后是在驱动源码下面的dhd_linux.c中将固件的路径写死了,编译出来功能完成。
其中固件路径有好几个:firmware_path、fw_bak_path、还有个结构体里面有fw_path,看着好像都是固件的路径,我就都给写死了。

3、将ko拿到开发板

insmod ***.ko即可加载wifi驱动,可以使用ifconfig命令看看有没有wlan0出现。

4、附加

本次是在全志r329中加的wifi驱动,相关的配置文件可查看目录/329 下面的README.md,里面会有一些内核配置文件的路径、设备树的路径、等等。

我也没理太清楚,先写到这,后面理解了再加

海华cywdhd wifi驱动移植相关推荐

  1. wifi模块服务器项目心得,一次关于WiFi 驱动移植的总结复盘

    1 简介 WiFi 是什么?能用来做什么? 都 2021 年了,相信您对 WiFi 一定不陌生了. 可以参考这里的百度百科释义:[百度百科 - WiFi(https://baike.baidu.com ...

  2. 图文讲解 WiFi 驱动移植过程,很肝~

    关注.星标公众号,直达精彩内容 来源:嵌入式基础学习 作者:小二 本篇文章打算对WiFi 驱动移植文章进行一次系统性的总结.复盘,分享一下自己的思考过程,遇到的问题等. 希望对您有点帮助??????? ...

  3. 嵌入式linux usb wifi驱动移植

    文档名称:嵌入式linux usb wifi驱动移植 版本历史 版本号        时间        内容 v1.0b001        2012-6-18        初始版本,介绍在嵌入式 ...

  4. I.MX6 AW-NB177NF WIFI 驱动移植问题

    /********************************************************************************* I.MX6 AW-NB177NF ...

  5. 我对 WiFi 驱动移植过程,做了一次总结复盘

    关注+星标公众号,不错过精彩内容 作转自 | 嵌入式基础学习 在今天分享一篇关于 WiFi 驱动的文章,希望对正在做 WiFi 驱动的同学有帮助. 1 简介 WiFi 是什么?能用来做什么? 都 20 ...

  6. EP-N8530S USB WIFI 驱动移植

    /************************************************************************ EP-N8530S USB WIFI 驱动移植* 说 ...

  7. 联咏平台(Novatek) | RTL8188FU WIFI驱动移植

    目录 1 开发环境 2 内核配置 2.1 配置支持USB设备 2.2 配置支持 wifi 设备 2.3 配置支持 wifi 网络 IEEE 802.11 2.4 编译内核 3 wifi 驱动移植 3. ...

  8. Linux环境下使用WIFI模块:WIFI驱动移植

    WIFI驱动移植 实验平台 内核版本:Linux-4.19.5 开发板:SAMSUNG JZ2440 WIFI模块:Ralink rt3070 查看WIFI设备的PID 直接将WIFI模块接到电脑的U ...

  9. A20 wifi驱动移植

    A20 wifi驱动移植 本驱动移植是在ak27的平台上移植8089wifi驱动,驱动名字为eagle 一.lichee部分移植 测试模式部分: dragonboard下的文件主要是针对wifi在测试 ...

最新文章

  1. 如何在 JBoss AS 7 中使用 Service Archive SAR 文件
  2. 简单讨论火车票系统后面的架构设计
  3. go语言的map以及红黑树的map
  4. SAP Spartacus的自定义路由
  5. java读取安卓本地文件_Java Android 二进制文件读写
  6. Catlike Coding网站文章解析 -- 2.Procedural Grid
  7. android studio类似软件,使Android Studio更高效的几款插件推荐
  8. 关于JS中使用JSON.parse长整型数丢失精度的问题解决
  9. 2020大厂web前端面试都喜欢问这些
  10. opencv 无法使用 dll 动态链接库 UnsatisfiedLinkError java.library.path Can‘t find dependent libraries
  11. python爆破端口_挑战全网多线程批量扫描爆破弱办事端口工具,Python制造专属!...
  12. mysql批量导出工具_sql数据库批量导出|
  13. 调研 微信小程序客服功能
  14. 汽车如何打蜡 汽车打蜡有什么要注意的地方
  15. 在本地计算机无法启动t6,启动用友T6时出现“不能登录到服务器[]请检查T6管理服务是否已启动。...
  16. 如何坚持完成自己的目标和计划?
  17. C语言中3种实用的输出格式:%md,%0md,%.mf
  18. 通俗易懂物联网(1):什么是物联网?
  19. mysql 主备切换关于虚拟ip理解
  20. 锂电充/放电全集成控制芯片

热门文章

  1. linux命令行颜色,技术|在 Linux 命令行中自定义文本颜色
  2. SQL 四大功能DDL/DML/DCL/TCL
  3. CTFHub——Web技能树
  4. android 本地地址转换为url,安卓 File和url之间的转换
  5. 机器学习数学原理(1)——极大似然估计法
  6. java内存模型作用是什么意思_JMM(Java内存模型)是什么?为什么使用并发?
  7. Gartner 2019年EPP(终端防护)魔力象限(Endpoint protection platforms)
  8. Oracle和plsql的卸载与安装
  9. 一小时学会使用Springboot整合沙箱环境支付宝支付(附源码)
  10. Kubernetes监控体系(12)-alertmanager配置钉钉和邮件告警