中关村在线

软件

AP6256 WiFi模块移植指南

以AP6256为例,介绍该方法在ampak正基AP6XXX全系列产品中的应用。

1、 配置无线网络子系统 CFG80211

2、 CFG80211 是 Linux 内核中用于 WiFi 驱动与用户空间进程通信的标准接口,取代了早期的 WEXT。随着技术发展,CFG80211 被广泛采用,因其具备更好的架构和功能支持,其中 WiFi Direct 仅能在 CFG80211 框架下实现,进一步推动其成为现代无线网络环境中的主流选择。

3、 进入网络支持中的无线设置,将 cfg80211 和 mac80211 选项设为 M,具体配置所示。

4、 设置无线网络扩展功能,完成1-2项配置步骤。

5、 WEXT 是内核中 WiFi 驱动与用户态进程通信的标准接口,调试工具如 iwconfig、iwlist 和 iwpriv 均依赖此接口运行。若未启用该接口,部分驱动在编译时可能出现错误,导致无法正常构建。

6、 WEXT 在内核配置中并无独立选项,需通过启用依赖它的配置项间接开启。首先需配置 CFG80211,随后进入设备驱动中的网络设备支持,再选择无线局域网选项,将基于 USB ZD1201 的无线设备支持设置为模块(M)模式即可。该操作可通过图形化配置界面完成,具体路径清晰明确,适用于需要使用相关无线功能的场景。正确配置后,系统便可支持对应的无线设备运行。

7、 若无法找到此设置,需先完成USB配置后再进行此项操作。

8、 配置USB与SDIO接口参数

9、 请查阅外围设备驱动操作指南中关于USB与SDIO的操作说明。

10、 rtl8189ftv、ap6181、ap6212、ap6212a、ap6214a 采用 SDIO2.0 接口,建议将 SDIO 时钟配置为约 50MHz;而 ap6255 支持 SDIO3.0 接口,应将其 SDIO 时钟设置在约 150MHz,以确保各模块稳定高效运行,充分发挥各自接口性能,满足不同硬件平台对传输速率的需求。

11、 内核默认的SDIO2.0接口工作电压为3.3V,若WiFi模块需要1.8V的IO电压,则必须调整SDIO驱动程序,将接口电压切换至1.8V,以确保通信正常和硬件兼容,避免因电压不匹配导致设备无法识别或工作异常。

12、 配置IPv6网络参数

13、 在使用 ap6181、ap6212、ap6212a、ap6214a 和 ap6255 型号的 WiFi 模块时,若未启用 IPv6 配置,将引发驱动运行异常,因此必须开启 IPv6 支持;而其余四款 WiFi 模块则无需进行此项设置,可正常工作于默认配置下。

14、 进入网络支持下的网络选项,将IPv6协议设置为启用状态(y),具体操作中所示。请根据界面提示完成配置,确保选项正确勾选并保存更改。

15、 配置1.5版SDIO中断功能

16、 默认情况下,内核未启用 SDIO 中断功能,使用 rtl8189ftv 驱动时需手动开启。具体操作方式为:修改对应芯片平台的设备树文件,以 Hi3519V101 为例,编辑 arch/arm/boot/dts/hisi-hi3519v101.dtsi 文件,在与 WiFi 模块相连的 SDIO 控制器节点中,添加属性 cap-sdio-irq,以启用中断支持。完成修改后重新编译并烧写设备树即可生效,确保 WiFi 模块能够正常响应中断请求,提升通信效率与系统响应能力。

17、 配置 wifi_project 开发环境及相关组件

18、 编译 wifi_project 前需搭建交叉编译环境,并调整顶层 Makefile 中的相关配置参数以适配目标平台。

19、 包括无线设备、交叉编译工具及内核相关的配置与开发环境设置。

20、 交叉编译工具集

21、 用于编译的交叉工具链,如 arm-hisiv500-linux-、arm-hisiv600-linux- 等,支持不同架构的目标平台构建。

22、 架构设置为ARM

23、 请参考 Makefile 文件中的注释,选择并编译支持的 Wi-Fi 设备名称。

24、 WIFI_DEVICE 设置为 sdio_ap6xxx,适用于 ap6181、ap6212、ap6212a、ap6214a 和 ap6225 等型号,统一使用该配置项进行标识与管理,确保各类设备在系统中被正确识别并加载相应驱动程序。

25、 编译Wi-Fi驱动需指定内核路径,确保编译环境正确配置,以便顺利构建驱动模块。

26、 确保内核已完成编译。

27、 配置完成后即可开始编译,设置 KERNEL := /home/work/linux-3.18.y 指定内核路径。在 wifi_project 目录下运行 make all,将自动编译驱动程序和配套工具;若仅需编译驱动,执行 make driver;如只需编译工具,则运行 make tools,操作灵活,便于分步构建。

28、 生成的驱动文件将存放在 wifi_project/out/kmod 目录中,各类工具如 iwconfig、iwlist、iwpriv、wpa_cli、wpa_supplicant 和 hostapd 等则置于 wifi_project/out/tools 目录下,供后续使用。同时,编译生成的库文件统一保存在 wifi_project/out/lib 目录中,便于程序调用和模块集成。整个输出结构清晰,分类明确,有助于项目的维护与部署,提升开发效率和文件管理的规范性。

29、 加载驱动文件完成

30、 编译完成后,驱动文件将生成于 wifi_project/out/kmod 目录,将其复制到目标单板即可使用。

31、 各WiFi驱动文件详见以下列表:

32、 请从内核的 net/wireless 目录复制 cfg80211.ko 文件。

33、 驱动在单板中的存放路径无关紧要,例如可置于/kmod目录下。

34、 加载固件文件,进入3-2操作界面。

35、 若需使用博通ap6181芯片,请按以下步骤进行操作设置,确保驱动和配置正确无误。

36、 在单板的/etc/firmware目录中,创建相应文件夹,并将wifi_project/firmware/sdio_ap6181目录下的所有文件复制到该路径下,确保固件正确部署并可被系统识别调用。

37、 将固件文件 fw_bcm40181a2.bin、fw_bcm40181a2_apsta.bin 以及 nvram.txt 下载至单板中,确保文件完整并正确写入对应存储区域。

38、 请将 wifi_project/firmware 目录下对应型号的 firmware 和 nvram 文件复制到当前目录中的 ap6212、ap6212a、ap6214a、ap6255 文件夹内,确保各型号固件与配置文件正确匹配,避免遗漏或错放,以保证设备正常运行。

39、 加载工具 3-3

40、 将 wifi_project/out/lib 目录中的 libnl-genl.so.2.0.0 和 libnl.so.2.0.0 文件复制到目标单板的 /lib 目录下,确保文件完整无误,以支持相关功能正常运行。

41、 进入单板的/lib目录,为这两个文件创建软链接。

42、 将 wifi_project/out/tools 目录中的 iwconfig、iwlist、iwpriv 和 iperf 文件复制到目标单板上,确保工具可在设备中正常运行并支持无线网络相关操作。

43、 位于 /sbin 目录中的这些调试工具在实际应用中可不必复制。

44、 在 STA 模式下,需将 wifi_project/out/tools 目录中的 wpa_supplicant 和 wpa_cli 文件复制到开发板的 /sbin 目录中,以确保无线网络功能正常运行。

45、 在AP模式下,需将wifi_project/out/tools目录中的hostapd文件复制到开发板的/sbin目录中,以确保无线功能正常运行。

46、 除了使用 wpa_supplicant 和 hostapd 进行配置外,Broadcom WiFi 还可通过 wl 工具进行设置。使用该方式时,需将 wifi_project/out/tools 目录中的 wl 程序复制到目标单板的 /sbin 目录下,以确保命令可被正确执行。完成拷贝后,即可在设备上直接运行 wl 命令实现WiFi功能的配置与管理,操作更为简便,适用于特定调试或轻量级应用场景。

47、 将工具复制到单板后,需调整其可执行权限。

48、 修改 wpa_supplicant.conf 文件,配置无线网络连接参数。

49、 wpa_supplicant.conf 是启动 wpa_supplicant 进程所需的配置文件,可用于单板上设置无线网络连接参数,确保设备正常接入无线网络。

50、 新建一个目录,位置不限,例如可设在/etc/Wireless下,文件内容如下所示:

51、 可将 sample 目录中的 wpa_supplicant.conf 文件复制至 /etc/Wireless 目录,同时设置 ctrl_interface 为 /var/wpa_supplicant,以完成相关配置,确保无线网络功能正常运行并实现有效管理。

52、 3至5个hostapd配置文件

53、 hostapd.conf 是启动 hostapd 进程所需的配置文件,可在单板上手动创建该文件以完成服务配置。

54、 目录选择并不关键,可将文件存放于如 /etc/Wireless 等路径下。配置内容可参照 hostapd 的设置方法及 SoftAP 的启动方式。建议将 sample 目录中的 hostapd.conf 文件复制至 /etc/Wireless 目录中,作为基础配置使用,便于后续修改与应用,确保无线热点功能正常运行。

55、 3-6 udhcpd.conf 配置文件说明

56、 在SoftAP模式中,udhcpd.conf是DHCP服务器所需的配置文件。可从wifi_project/sample目录复制该文件至开发板的任意路径,通常建议存放在/etc/Wireless目录下以便管理。文件位置不影响功能,但合理归类有助于后续维护和查找,确保系统启动时能正确读取配置参数以分配IP地址。

57、 3至7的entropy点二进制文件

58、 entropy.bin 是用于生成随机数种子的文件,在配置 hostapd 进程启用加密 SoftAP 模式时必需。该文件位于 wifi_project/sample 目录中,需将其复制到目标设备的文件系统内,存放路径无特殊要求,可放置于如 /etc/Wireless 等常用配置目录下,确保系统启动时能被正确读取,以保障无线网络加密功能的正常运行。

展开全文
人赞过该文
内容纠错

相关电商优惠

评论

更多评论
还没有人评论~ 快来抢沙发吧~

读过此文的还读过

点击加载更多

内容相关产品

说点什么吧~ 0

发评论,赚金豆

收藏 0 分享
首页查报价问答论坛下载手机笔记本游戏硬件数码影音家用电器办公打印 更多

更多频道

频道导航
辅助工具