0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

电子发烧友开源社区 来源:未知 2022-11-21 12:10 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

- 白荷-

鸿湖万联产品推荐官

鸿湖万联资深技术专家

总体方案

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系统框图bce48b2e-6951-11ed-8abf-dac502259ad0.png    图1-2 AP6275P系统框图bd20b7de-6951-11ed-8abf-dac502259ad0.png  2.HDF-WIFI框架 图1-3 HDF WIFI框架总体框图bd3b2be6-6951-11ed-8abf-dac502259ad0.png  3.AP6275P驱动原生代码流程分析 图1-4 AP6275P驱动原生代码流程图bd563904-6951-11ed-8abf-dac502259ad0.png  4.AP6275P驱动适配HDF WIFI框架代码流程分析 图1-5 AP6275P驱动适配HDF WIFI框架代码流程图bd7006e0-6951-11ed-8abf-dac502259ad0.png      

配置过程与步骤

基于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 HDFWiFi驱动适配的总体方案,并且经过配置操作,HDF-WIFI驱动适配已经完成,实现了AP模式、STA模式、P2P三种主流模式下WiFi功能。

更多热点文章阅读

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

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


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

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


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

    关注

    33

    文章

    584

    浏览量

    33982
  • 开源社区
    +关注

    关注

    0

    文章

    95

    浏览量

    776

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

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    迅为RK3568 重制版RK3568驱动指南全面升级

    迅为RK3568 重制版RK3568驱动指南全面升级
    的头像 发表于 07-28 15:25 1514次阅读
    迅为<b class='flag-5'>RK</b>3568 重制版<b class='flag-5'>RK</b>3568<b class='flag-5'>驱动</b><b class='flag-5'>指南</b>全面升级

    迅为RK3568开发板实操-HDF驱动配置UART

    = "HDF_PLATFORM_UART_4"; 7、deviceMatchAttr = "rockchip_rk3568_uart_4"; 8、} 9、device4 :: deviceNode
    的头像 发表于 06-27 15:58 438次阅读

    迅为RK3568驱动指南GPIO子系统 GPIO操作函数实验

    迅为电子RK3568开发板驱动指南GPIO子系统 GPIO操作函数实验
    的头像 发表于 05-28 15:24 1046次阅读
    迅为<b class='flag-5'>RK</b>3568<b class='flag-5'>驱动</b><b class='flag-5'>指南</b>GPIO子系统 GPIO操作函数实验

    迅为RK3568开发板实操-HDF驱动配置UART-修改HCS配置

    、serviceName = \"HDF_PLATFORM_UART_4\"; 7、deviceMatchAttr = \"rockchip_rk
    发表于 05-22 11:32

    RK3568驱动指南驱动基础进阶篇-进阶7 向系统中添加一个系统调用

    RK3568驱动指南驱动基础进阶篇-进阶7 向系统中添加一个系统调用
    的头像 发表于 05-21 14:15 553次阅读
    <b class='flag-5'>RK</b>3568<b class='flag-5'>驱动</b><b class='flag-5'>指南</b>|<b class='flag-5'>驱动</b>基础进阶篇-进阶7 向系统中添加一个系统调用

    【北京迅为】iTOP-RK3568开发板鸿蒙OpenHarmony系统南向驱动开发实操-HDF驱动配置UART

    【北京迅为】iTOP-RK3568开发板鸿蒙OpenHarmony系统南向驱动开发实操-HDF驱动配置UART
    的头像 发表于 03-25 11:02 1298次阅读
    【北京迅为】iTOP-<b class='flag-5'>RK</b>3568开发板鸿蒙OpenHarmony系统南向<b class='flag-5'>驱动</b>开发实操-<b class='flag-5'>HDF</b><b class='flag-5'>驱动</b>配置UART

    北京迅为iTOP-RK3568开发板OpenHarmony系统南向驱动开发实操-HDF驱动配置LED

    北京迅为iTOP-RK3568开发板OpenHarmony系统南向驱动开发实操-HDF驱动配置LED
    的头像 发表于 03-14 14:41 1109次阅读
    北京迅为iTOP-<b class='flag-5'>RK</b>3568开发板OpenHarmony系统南向<b class='flag-5'>驱动</b>开发实操-<b class='flag-5'>HDF</b><b class='flag-5'>驱动</b>配置LED

    北京迅为RK3568开发板OpenHarmony系统南向驱动开发内核HDF驱动框架架构

    北京迅为RK3568开发板OpenHarmony系统南向驱动开发内核HDF驱动框架架构
    的头像 发表于 03-11 14:13 1561次阅读
    北京迅为<b class='flag-5'>RK</b>3568开发板OpenHarmony系统南向<b class='flag-5'>驱动</b>开发内核<b class='flag-5'>HDF</b><b class='flag-5'>驱动</b>框架架构

    迅为RK3568开发板篇Openharmony配置HDF控制UART-实操-HDF驱动配置UART-修改HCS配置

    对于不同的平台,需要在对应的平台目录修改对应的 hcs 文件,接下来示例为在 rk3568下新增 uart4 uart9 uart7 的修改方法。 修改 vendor/hihope/rk
    发表于 02-21 10:53

    迅为RK3568开发板篇OpenHarmony实操HDF驱动控制LED-编写应用APP

    HDF_FRAMEWORKS 和 HDF_ADAPTER,它们分别指向 HDF(HardwareDriver Foundation,硬件驱动框架)核心框架和
    发表于 02-06 10:27

    迅为RK3568开发板驱动指南Linux中通用SPI设备驱动

    迅为RK3568开发板驱动指南Linux中通用SPI设备驱动
    的头像 发表于 01-23 11:02 3436次阅读
    迅为<b class='flag-5'>RK</b>3568开发板<b class='flag-5'>驱动</b><b class='flag-5'>指南</b>Linux中通用SPI设备<b class='flag-5'>驱动</b>

    迅为RK3568开发板篇OpenHarmony实操HDF驱动控制LED-添加内核编译

    编译内核时将该 HDF 驱动编译到镜像中,接下来编写驱动编译脚本 Makefile,代码如下所示: 加入编译体系,填加模块目录到 drivers/hdf_core/adapter/kh
    发表于 01-22 10:35

    迅为RK3568开发板篇OpenHarmony实操HDF驱动控制LED-编写内核 LED HDF 驱动程序

    接下来编译 LED 驱动,该驱动用于在基于华为设备框架(HDF)的系统中控制 LED 灯的开关,完整代码如下所示: 更多内容可以关注:迅为RK3568开发板篇OpenHarmony
    发表于 01-17 15:13

    迅为RK3568开发板篇OpenHarmony配置HDF驱动控制LED-新增 topeet子系统

    程序目录 ├── led_driver.c:内核 LED HDF 驱动程序 └── Makefile:内核 LED HDF 驱动编译脚本 更多内容可以关注:迅为
    发表于 01-13 15:59

    迅为RK3568开发板篇OpenHarmony配置HDF驱动控制LED-配置创建私有配置文件

    接 下 来 新 建 vendor/hihope/rk3568/hdf_config/khdf/topeet/topeet_config.hcs 文 件 ,topeet_config.hcs 为驱动
    发表于 01-10 11:13