我是靠谱客的博主 搞怪蜜粉,最近开发中收集的这篇文章主要介绍RDA5995 wifi芯片的移植说明常见问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

RDA5995 wifi芯片的移植说明常见问题

1.rda5995需要下载的firmware
rda5995打开WIFI需要下载firmware:
usb接口sta+p2p firmware:rda5995_usb_code_p2p.bin,rda5995_usb_code1_p2p.bin,rda5995_usb_data_p2p.bin
usb接口softap firmware:rda5995_usb_code_ap.bin,rda5995_usb_data_ap.bin
usb接口测试模式 firmware:rda5995_usb_code_rf.bin,rda5995_usb_data_rf.bin
sdio接口sta+p2p firmware:rda5995_sdio_code_p2p.bin,rda5995_sdio_code1_p2p.bin,rda5995_sdio_data_p2p.bin
sdio接口softap firmware:rda5995_sdio_code_ap.bin,rda5995_sdio_data_ap.bin
sdio接口测试模式 firmware:rda5995_sdio_code_rf.bin,rda5995_sdio_data_rf.bin
驱动通过linux kernel request_firmware接口获取firmware,需要把相应的bin文件放置在文件系统
/vendor/firmware
/lib/firmware
等路径下面。
如果放置的位置比较特殊,需要打开驱动wland_defs.h中关于firmware位置的宏并修改为相应的位置
//#define WLAND_FIRMWARE_PATH "/vendor/firmware"

2.校准文件
rda5995校准文件为power_config.txt,驱动读取该文件的方法和读取firmware bin文件接口一样。
用户可以使用RDA提供的默认参数,或者在产线统计之后取平均值写入该文件。(具体请咨询RDA FAE)

3.rda5995驱动按照以下步骤设置wifi的mac地址:
a.打开wifi时,驱动读/data/misc/wifi/WLANMAC文件(文件名和地址可配置,参见wland_defs.h),如果读到可用的mac地址则直接用该地址
b.如果该文件不存在,则随机生成一个mac地址,并保存到该文件中。在下载firmware之后,驱动读取芯片efuse,如果efuse保存的有mac地址,则更新wifi mac地址和保存mac地址的文件,下次打开wifi直接用文件中的地址。
rda5995需要在起wpa_supplicant/hostapd服务之前使能wlan0,具体请参考wifi.c中关于start_supplicant函数的修改,否则可能导致wpa_supplicant获取到的mac未更新,连接路由器失败。
注:芯片eruse里的mac地址通常是在模块商、电视盒子商产线进行烧录。
当驱动在ubuntu使用的时候,如果不能确保ubuntu上层能在ifconfig wlan0 up之后再开启wpa_supplicant,需要在makefile中把CONFIG_RDAWFMAC_LINUX打开,但是打开这个config选项后就不能使用efuse中写的mac地址了。

4.wpa_supplicant配置文件不支持pmf=1
请删除wpa_supplicant.conf中pmf=1这一样参数,或者针对rda5995做兼容设计。

5.rda_tools工具为rda提供的产线测试工具,用于进行产线校准、读写efuse等,建议移植该工具。
该工具具体使用方法请参考rda_tools使用说明中文版_v1.4,或咨询RDA FAE。

6.如果rdawlan文件夹下有一个Makefile和一个Makefile_usb,Makefile用于android平台Makefile_usb用于ubunutu平台(改名字成Makefile)

7.Makefile中根据使用usb还是sdio接口来选择是开启CONFIG_RDAWFMAC_SDIO还是CONFIG_RDAWFMAC_USB。

8.在sta模式开启的时候使用insmod rdawfmac.ko
在ap模式开启的时候使用insmod rdawfmac.ko firmware_path=ap
在产线校准模式的时候使用insmod rdawfmac.ko firmware_path=rf

9.在开启和关闭sta或者ap的时候请加载和卸载驱动,同时将芯片上电和断电,
如果是sdio驱动在wland_sdio_register函数中最开始执行,芯片断电、芯片上电、mmc rescan
在wland_sdio_exit里最后加上断电函数,可以参考已经有的其他家宏控制的代码。

10.参考指令开启sta和softap可以知道sta和ap的开启顺序。

11.如果需要开启moniter模式要在驱动Makefile里边把CONFIG_SMART_CONFIG打开,固件编译要把CFG_SMART_CONFIG打开(固件由我司编译,默认没有打开该选项)

12.ubuntu上跑5995驱动sta mode的话,将固件拷贝到/lib/firmware,在rdawlan下执行make,插上5995设备,然后insmod rdawfmac.ko即可。

最后

以上就是搞怪蜜粉为你收集整理的RDA5995 wifi芯片的移植说明常见问题的全部内容,希望文章能够帮你解决RDA5995 wifi芯片的移植说明常见问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部