WIFI
本文介绍 WIFI 的移植和使用方法。
模块介绍
K1平台上主要通过外部WIFI模块来实现WIFI功能,主要支持PCIE,SDIO以及USB等接口的模块。 K1 平台主要通过外部 WiFi 模组实现无线连接,支持接口包括:PCIe、SDIO 以及 USB。
功能介绍
WiFi 架构分为多个层次,如下图所示:
源码结构介绍
WIFI 相关的源码可以分为三个部分:
- WIFI驱动: WIFI厂商提供,主要实现WIFI功能。
- 平台相关部分: 主要实现模组供电以及使能等相关接口,供WIFI驱动调用。
- 接口驱动: 主要实现 WIFI 数据传输接口功能,如PCIe、SDIO 以及 USB 等接口。
WIFI 驱动的源码 一般放到以下目录:
drivers/net/wireless
|-- aic8800 #aic厂商驱动
|-- realtek #realtek厂商驱动
|-- rtl8852be #rtl8852be
|-- rtl8852bs #rtl8852bs
|-- wuqi #wuqi厂商驱动
平台相关的源码:
drivers/soc/spacemit/spacemit-rf
|-- spacemit-pwrseq.c #WIFI和蓝牙等公共部分实现
|-- spacemit-wlan.c #WIFI供电,gpio以及时钟相关接口实现
|-- spacemit-bt.c #bt供电,gpio以及时钟相关接口实现
接口相关的源码参考各个接口驱动说明文档。
关键特性
SDIO 接口支持
特性 | 特性说明 |
---|---|
兼容 SDIO v4.10 | 兼容 4bit SDIO 4.10 规范 |
支持 SD 3.0模式 | 支持 SDR12/SDR25/DDR50/SDR50/SDR104 模式 |
支持 PIO/DMA | 支持 PIO,SDMA,ADMA,ADMA2 传输模式 |
性能参数
模组型号 | TX(Mb/s) | RX(Mb/s) |
---|---|---|
rtl8852bs | 460 | 480 |
aic8800d80 | 410 | 470 |
测试方法
同一局域网段
# 服务端
iperf3 -s
# 客户端
iperf3 -c 192.168.1.xxx -t 72000