RK系列HDF-WiFi驱动适配指南

描述

 

- 白荷 -

鸿湖万联产品推荐官

鸿湖万联资深技术专家

     

总体方案

   WiFi在现在电子设备中,已经是一个不可或缺的功能了,不论是windows 或者Linux系统,都可以通过WiFi来链接网络,达到上网的目的。基于OpenHarmony的开发板,是需要进行WiFi驱动适配,才能使用WiFi功能,达到上网目的。  概述:基于HDF WLAN的框架规范,实现HDF驱动初始化接口、WLAN控制侧接口集、AP模式接口集、STA模式接口集、网络侧接口集、事件上报接口等主要接口,改造AP6275P WIFI6原生内核驱动代码,并使用wpa_supplicant和hostapd应用程序通过HDF WIFI框架与WIFI驱动进行交互,实现AP模式、STA模式、P2P三种主流模式下WIFI功能。  1.硬件组成  RK系列 EVB主板中SoC芯片为RKXXX,WIFI芯片为AP6275P,使用PCIE总线抽象接口。图1-1 RKXXX EVB系统框图电子发烧友    图1-2 AP6275P系统框图电子发烧友  2.HDF-WIFI框架  图1-3 HDF WIFI框架总体框图电子发烧友  3.AP6275P驱动原生代码流程分析  图1-4 AP6275P驱动原生代码流程图电子发烧友  4.AP6275P驱动适配HDF WIFI框架代码流程分析  图1-5 AP6275P驱动适配HDF WIFI框架代码流程图电子发烧友      

配置过程与步骤

     基于RK系列HDF-WiFi驱动适配指南-总体方案介绍,已经明确需要进行改造AP6275P WiFi6原生内核驱动代码,并使用wpa_supplicant和hostapd应用程序通过HDF WiFi框架与WiFi驱动进行交互,实现AP模式、STA模式、P2P三种主流模式下WiFi功能。  概述:对于系统WIFI功能的使用,需要实现AP模式、STA模式、P2P三种主流模式。这里使用wpa_supplicant应用程序通过HDF WiFi框架与WiFi驱动进行交互,实现STA模式和P2P模式的功能,使用hostapd应用程序通过HDF WiFi框架与WiFi驱动进行交互,实现AP模式和P2P模式的功能。AP6275P WiFi6内核驱动依赖platform能力,主要包括PCIE总线的通讯能力;与用户态通信依赖HDF WiFi框架的能力。在确保上述能力功能正常后,即可开始本次WiFi驱动的HDF适配移植工作,适配过程主要包括代码整改过程和参数配置过程,具体有以下步骤  1.硬件组成设置WIFI驱动固件目录  device/soc/rockchip/hardware/wifi
├── ap6xxx
│   ├── clm_bcm43752a2_pcie_ag.blob
│   ├── fw_bcm43752a2_pcie_ag_apsta.bin
│   ├── fw_bcm43752a2_pcie_ag.bin
│   ├── fw_bcm43752a2_pcie_ag_mfg.bin
│   └── nvram_AP6275P.txt
├── BUILD.gn
   2.设置WIFI驱动源码目录  2.1 原生驱动与在其中增加以及修改的代码文件位于:device/board/rockchip/rk3588/wifi/bcmdhd_wifi6注:在master分支中,原生代码由kernel.patch生成在out/kernel/src_tmp/linux-5.10/drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd_wifi6中,这里通过直接复制过来将所有代码放一起使用。  2.2 增加以及修改的代码文件:
.
├── hdfadapt
│   ├── hdf_bdh_event.c
│   ├── hdf_bdh_event.h
│   ├── hdf_bdh_mac80211.c
│   ├── hdf_driver_bdh_register.c
│   ├── hdfinit_bdh.c
│   ├── hdf_wl_interface.h
│   ├── net_bdh_adpater.c
│   ├── net_bdh_adpater.h
├── hdf_public_ap6275s.h
├── rk_wifi_config.c
 其中hdf_bdh_mac80211.c主要对g_bdh6_baseOps所需函数的填充,包括对g_bdh6_staOps、g_bdh6_apOps和g_bdh6_p2pOps所需函数进行填充;在drivers/framework/include/wifi/wifi_mac80211_ops.h里有对WiFi基本功能所需api的说明。  3.编写WiFi驱动文件  HDF WLAN驱动框架由Module、NetDevice、NetBuf、BUS、HAL、Client 和 Message 这七个部分组成。开发者在WiFi驱动HDF适配过程中主要实现以下几部分功能:3.1 适配HDF WLAN框架的驱动模块初始化3.2  HDF WLAN Base控制侧接口的实现3.3  HDF WLAN STA模式接口的实现3.4  HDF WLAN AP模式接口的实现3.5  HDF WLAN P2P模式接口的实现3.6  HDF WLAN框架事件上报接口的实现  4.配置WIFI编译文件5.配置WIFI构建文件6.Foundation层增加产品名宏条件      

总结

   结合RKXXX EVB HDF WiFi驱动适配的总体方案,并且经过配置操作,HDF-WIFI驱动适配已经完成,实现了AP模式、STA模式、P2P三种主流模式下WiFi功能。  

更多热点文章阅读

  • 玩嗨OpenHarmony:基于OpenHarmony的智能助老服务机器人
  • 玩嗨OpenHarmony:基于OpenHarmony的智慧农业环境监控系统
  • HarmonyOS 3.1版本发布,全面进入声明式开发
  • OpenHarmony开发之MQTT讲解
  • OpenHarmony集成OCR三方库实现文字提取

 

 

提示:本文由电子发烧友社区发布,转载请注明以上来源。如需社区合作及入群交流,请添加微信EEFans0806,或者发邮箱liuyong@huaqiu.com。


原文标题:RK系列HDF-WiFi驱动适配指南

文章出处:【微信公众号:电子发烧友开源社区】欢迎添加关注!文章转载请注明出处。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分