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

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

3天内不再提示

BSP调试#06:WiFi-aic8800 (RK3588)

BSP调试从0到1 来源:嵌入式分享 作者: 嵌入式分享 2026-04-24 11:51 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本合集的是我当初调试 RK3588 平台时的原始笔记——只保留了那些踩过坑的问题接口,没出过问题的内容全删掉了。文章框架如下:wKgZO2nqHtmAanO2AABzsIrFu8s284.png

其中,“调试过程”章节可能有点意思(记录了我踩过的坑),其他章节无关紧要。

硬件设计

wKgZO2nqHtqAKY_DAAN5LpMtxrk044.png

对照原理图找到如下3 个关键点:

PCIe 接口的 WiFi 基本就有两种:贴在板子上模块及M2接口(这里方案正是),但它们关键点是一样的:

VBAT/VCC3V3:总的3.3V电源,一般是长供电;

WIFIREGON:芯片的复位/使能管脚,开机保持高电平;

PCIE PERST L/PERSTO:芯片PCIe部分的复位管脚,DTS对应的PCIE节点下务必配置正确。

软件配置

dts 配置

wKgZO2nqHtqAL0rfAABKTyXrw9E959.pngwKgZO2nqHtqAawTJAACNJuEcNRA843.png

移植驱动

将 WiFi 模组厂商提供的驱动源码aic8800_fdrv拷贝至./external/rkwifibt/drivers/目录进行编译。具体步骤如下:

(1)驱动 SDK 源码放置/external/rkwifibt/drivers/目录下;

(2)添加驱动固件至/external/rkwifibt/firmware/aic8800 目录下。

(3)修改device/rockchip/common/scripts/post-wifibt.sh脚本内容,具体如下。

wKgZO2nqHtqAWG9VAADBygp3cE8345.pngwKgZO2nqHtqAeEGoAAECvV28tUI949.png调试过程

PCIe WiFi 识别流程

(1)WiFi 模组(AIC8800)通过 PCIe 接口连接到主机,这个接口负责传输数据和控制信号

(2)PCIe 接口的初始化是由主机的 PCIe 控制器完成的。模组上电后,主机通过 PCIe 配置空间识别设备,这个就是通过 lspci 看到设备的原因。

(3)WiFi驱动程序的作用是初始化模组并提供接口给操作系统,以及通过PCIE接口将固件(固件用来控制硬件行为)传输到模组内部的存储器中。

确认 PCIe 是否识别模块

该 WiFi 模块为 PCIe 接口,首先确认 PCIe 接口是否能正常识别到 WiFi 模块(旧系统)。

当 AIC8800D80P 上电时 lspci会侦测到Bus 003 Device 007:IDa69c:8d80

wKgZO2nqHtqAW6VHAAAMkNor39I797.png

insmod 加载驱动

要先确认 fw 文件已拷贝至/lib/firmware。

wKgZO2nqHtqATotaAACaEVjLG2Y569.png

【问题描述】:无法 insmod 加载驱动,log 打印如下。

wKgZO2nqHtqALquOAABp3rFw2IM641.png

【问题分析】:从报错分析,显然是 PCIE 的 Memory 空间不够,导致驱动加载失败。

wKgZO2nqHtuABvHhAAGpF-0GElU472.png

【问题解决】:修改 PCIe 的 Memory 地址大小。

wKgZO2nqHtuAdN23AACugZsKFiI018.pngwKgZO2nqHtuAZ5coAADt8ApkG0E227.png

驱动加载成功,生成wlP4p65s0 节点。

wKgZO2nqHtuAfUkjAABZ6T3JXM4300.png

功能验证

查看 ifconfig 节点

wKgZO2nqHtuAX8NDAAAYQwLBT2M011.png

扫描周围可见的无线网络

iwdev wlP4p65s0 scan | grep SSID
wKgZO2nqHtuAHsSxAAAfDvbOBC8162.png

配置并启动 Wi-Fi 连接 。

wpa_passphraseChen-2.4G-0123456987> /etc/wpa_supplicant.confwpa_supplicant-B -i wlP4p65s0 -c /etc/wpa_supplicant.conf
可看到已成功连接至无线网络,并能正常ping通外网。
iw devping www.baidu.com-IwlP4p65s0
wKgZO2nqHtuAWTqrAAAfO7yLI9I877.png

(完)


本人专注 Linux 驱动 & Linux/Android BSP 开发调试,可接外包项目/技术支持/问题定位。有需求或交个朋友可加微信:【Chen_WeChat2025】。

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

    关注

    5209

    文章

    20654

    浏览量

    336945
  • WIFI
    +关注

    关注

    82

    文章

    5532

    浏览量

    214399
  • BSP
    BSP
    +关注

    关注

    1

    文章

    105

    浏览量

    28087
  • RK3588
    +关注

    关注

    8

    文章

    588

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    BSP调试#05:MIPI DSI(RK3588

       本合集的是我当初调试 RK3588 平台时的 原始笔记 ——只保留了那些踩过坑的问题接口,没出过问题的内容全删掉了。文章框架如下: 其中, “调试过程” 章节可能有点意思(记录了我踩过的坑
    的头像 发表于 04-17 11:54 5959次阅读
    <b class='flag-5'>BSP</b><b class='flag-5'>调试</b>#05:MIPI DSI(<b class='flag-5'>RK3588</b>)

    BSP调试#04:HDMI TX(RK3588

      本合集的是我当初调试 RK3588 平台时的 原始笔记 ——只保留了那些踩过坑的问题接口,没出过问题的内容全删掉了。文章框架如下: 其中, “调试过程” 章节可能有点意思(记录了我踩过的坑
    的头像 发表于 04-10 09:23 6265次阅读
    <b class='flag-5'>BSP</b><b class='flag-5'>调试</b>#04:HDMI TX(<b class='flag-5'>RK3588</b>)

    BSP调试#03:Ethernet(RK3588

    本合集的是我当初调试 RK3588 平台时的 原始笔记 ——只保留了那些踩过坑的问题接口,没出过问题的内容全删掉了。文章框架如下: 其中,“ 调试过程 ”章节可能有点意思(记录了我踩过的坑),其他
    的头像 发表于 04-03 15:53 1w次阅读
    <b class='flag-5'>BSP</b><b class='flag-5'>调试</b>#03:Ethernet(<b class='flag-5'>RK3588</b>)

    RK3588的GMAC 时钟怎么一直没有?

    使用RK3588芯片,linux6.6内核,将自己设计的phy芯片驱动起来后,ifconfig 查看有eth0,phy 芯片驱动正常,但是RK3588芯片一直没有产生GMAC时钟信号,其他配置均正确,通过命令查看时钟配置也都正确的,但是为什么一直没有这个clock出来呢?
    发表于 03-26 22:47

    BSP 调试:前言

    RK3588 平台时的 原始笔记 ——只保留了那些踩过坑的问题接口,没出过问题的内容全删掉了。   加上,调试 RK3588 那会我已经不再是新手,因此合集《BSP
    的头像 发表于 03-12 21:19 414次阅读
    <b class='flag-5'>BSP</b> <b class='flag-5'>调试</b>:前言

    RK3588操控终端

    RK3588操控终端全国产化无人装备手持操控终端,搭载工业级瑞芯微RK3588J芯片,适配麒麟等自主操作系统,从硬件核心到软件应用实现 100% 国产化,彻底摆脱外部技术依赖。设备标配16G
    发表于 02-28 09:42

    一文打通Rockchip DP调试:从原理到实战,覆盖RK3399/RK3576/RK3588全平台

    嵌入式开发中,DisplayPort(DP)接口的调试常让工程师头疼 —— 不同芯片特性差异大、Type-C 与标准口配置不同、高分辨率输出异常、MST 多屏适配难… 尤其是 Rockchip RK3399、RK3576、
    的头像 发表于 02-04 16:14 952次阅读
    一文打通Rockchip DP<b class='flag-5'>调试</b>:从原理到实战,覆盖<b class='flag-5'>RK</b>3399/<b class='flag-5'>RK</b>3576/<b class='flag-5'>RK3588</b>全平台

    RK3588平台USB摄像头调试实战:从报错到稳定运行

    在嵌入式开发中,RK3588 凭借强劲的算力常被用于边缘计算、工业视觉等场景,而 USB 摄像头作为常见外设,调试过程中难免遇到各类 “卡壳” 问题。最近我们在 RK3588调试
    的头像 发表于 02-04 16:13 672次阅读

    调试RK3588必看!这个临时设备树文件,藏着你要的所有配置答案

    ”——rk3588-evb7-v11-linux.dtb.dts.tmp。不少人以为它是编译过程的“临时垃圾”,看完这篇你就知道:它其实是解决硬件适配、内核启动问题的“调试钥匙”。
    的头像 发表于 02-03 15:55 1457次阅读
    <b class='flag-5'>调试</b><b class='flag-5'>RK3588</b>必看!这个临时设备树文件,藏着你要的所有配置答案

    【技术分享】RK3588如何搭建xenomai3+ethercat

    说明使用的RK3588的分支版本是linux-6.1-stan-rkr6内核版本是6.1.99把瑞芯微的SDK更新到linux-6.1-stan-rkr6这个版本即可。编译xenomai3的内核请参考上一篇技术分享:技术分享|RK3588如何增加Xenomai3实时补丁修
    的头像 发表于 12-11 17:26 1373次阅读
    【技术分享】<b class='flag-5'>RK3588</b>如何搭建xenomai3+ethercat

    开发者必备,10 分钟搞定 RK3588 PCIE 拆分!

    前言:在嵌入式开发中,PCIe接口的灵活配置直接影响设备扩展能力与性能发挥。RK3588作为旗舰芯片,其PCIe拆分机制更是让硬件设计与软件调试拥有了更多可能性。今天这篇技术笔记,就带大家快速吃透
    的头像 发表于 11-13 08:31 1956次阅读
    开发者必备,10 分钟搞定 <b class='flag-5'>RK3588</b> PCIE 拆分!

    RK3588数据手册

    RK3588的资料
    发表于 08-01 16:08 54次下载

    RK这2款旗舰芯片RK3588 PK RK3576,谁是最优选

    在 AI 边缘计算领域,瑞芯微的 RK3588RK3576 都是备受瞩目的处理器。在中国半导体产业的版图中,瑞芯微作为国内 SoC 芯片领跑者,凭借其在处理器芯片设计领域的深厚积累和持续创新
    发表于 07-10 18:24

    RK3588参数与主要特性 RK3588数据手册解读

    RK3588参数与主要特性 RK3588数据手册解读
    的头像 发表于 05-19 18:34 1.5w次阅读
    <b class='flag-5'>RK3588</b>参数与主要特性  <b class='flag-5'>RK3588</b>数据手册解读

    RK3588S和RK3588S2差异说明

    RK3588S2 较 RK3588S少了一组 MIPI D/C-PHY CSI_RX PORT0,新增一组 MIPI DPHY CSI_RX PORT1,同时接口位置除 MIPI D/C-PHY
    的头像 发表于 05-13 14:23 3200次阅读
    <b class='flag-5'>RK3588</b>S和<b class='flag-5'>RK3588</b>S2差异说明