aic8800M40低功耗sdio wifi在arm-linux平台调试经验

发布于:2025-07-07 ⋅ 阅读:(17) ⋅ 点赞:(0)

背景

好多年没有搞过wifi相关的内容了,最近也被安排上了,把一颗低功耗aic8800M40的芯片在arm-linux开发板上做bring up,记录一下SDIO wifi调试的过程和经验,SDIO驱动这里需要改动一些linux内核HOST驱动代码,会在文章中贴出来:

AIC8800M40芯片简介

这个wifi芯片是一颗低功耗wifi蓝牙芯片,跟常电的wifi芯片有所区别的是,如果跑低功耗模式,wifi协议栈是直接跑在芯片上面,所以也就不需要常规使用的cfg80211,wpa_supplicant和hostapd了;AIC8800M40芯片需要先刷一个固件进去,整个wifi协议栈都是跑在芯片上面,然后linux arm主控通过SDIO接口和AIC8800M40通信,这里我们会在linux上面跑一个虚拟的网卡,这个是为了便于和应用层做socket通信,可以简单的把这个虚拟网卡理解为一个以太网卡就行了,上层的tcp和udp数据包就可以通过虚拟网卡发送出去。
在这里插入图片描述
然后芯片支持的WIFI6 feature如下:
CMOS single‐chip fully‐integrated RF, Modemand MAC
 Support 2.4GHz/5GHz Wi‐Fi6
 Data rates up to 286.8Mbps with 20/40MHz bandwidth
 Support 5MHz/10MHz mode
 RX sensitivity ‐97dBmin 11b 1M mode
 Tx power up to 23dBm in 11b mode, 18dBm in HT/VHT/HE MCS7 mode
 Support STA, AP, Wi‐Fi Direct modes concurrently
 Support STBC, beamforming
 Support Wi‐Fi6 TWT
 Support Two NAV, Buffer Report, Spatial reuse, Multi‐BSSID, intra‐PPDU power save
 Support LDPC
 SupportMU‐MIMO,OFDMA
 Support DCM, Mid‐amble, UORA
 Support WEP/WPA/WPA2/WPA3‐SAE Personal, MFP

固件的选择和编译

首先sdk目录下有个config目录,下面有四个系列的芯片aic8800 aic8800m40 aic8800m80x2 aic8800mc,这里我们选择aic8800m40,然后进入这个目录下有很多选择:
在这里插入图片描述
目前只需要测试wifi,所以选择target_wifi_fhostif,这个模式支持usb和sdio接口2。接下来做如下配置:

ubuntu的配置

  • ubuntu 选择配置python 2.7
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 2
sudo update-alternatives --config python
  • 下载安装gcc-arm-none-eabi-9-2019-q4-major工具链,并配置环境变量
export GNUARM_4_8_LIB=/opt/gcc-arm-none-eabi-9-2019-q4-major/lib/gcc/arm-none-eabi/9.2.1
export PATH=/opt/gcc-arm-none-eabi-9-2019-q4-major/arm-none-eabi/bin:$PATH

修改代码

  • 打开文件 /config/aic8800m40/target_wifi_fhostif/tgt_cfg/tgt_cfg_wifi.h
  • 定义虚拟网卡模式
/**  Hostif mode selection, match with host driver
   Current support:   
1) HOST_VNET_MODE 
2) HOST_RAWDATA_MODE
 */
 #define CONFIG_HOSTIF_MODE  HOST_VNET_MODE

编译烧录固件

  • 执行编译脚本命令:./build_fhostif_wifi_case.sh HOS

网站公告

今日签到

点亮在社区的每一天
去签到