Star64_linux/drivers/net/wireless/eswin
..
ble_netconfig
eswin_port
feature_config
fullmac
sdio
usb
compile_test.sh
ecrnx_bfmer.c
ecrnx_bfmer.h
ecrnx_cfgfile.c
ecrnx_cfgfile.h
ecrnx_cmds.c
ecrnx_cmds.h
ecrnx_compat.h
ecrnx_debug.c
ecrnx_debug.h
ecrnx_debugfs.c
ecrnx_debugfs.h
ecrnx_events.h
ecrnx_fw_dump.c
ecrnx_fw_trace.c
ecrnx_fw_trace.h
ecrnx_iwpriv.c
ecrnx_mod_params.c
ecrnx_mod_params.h
ecrnx_msg_rx.c
ecrnx_msg_rx.h
ecrnx_msg_tx.c
ecrnx_msg_tx.h
ecrnx_mu_group.c
ecrnx_mu_group.h
ecrnx_platform.c
ecrnx_platform.h
ecrnx_prof.h
ecrnx_radar.c
ecrnx_radar.h
ecrnx_strs.c
ecrnx_strs.h
ecrnx_testmode.c
ecrnx_testmode.h
ecrnx_txq.c
ecrnx_txq.h
ecrnx_utils.c
ecrnx_utils.h
ecrnx_version.h
fw_head_check.c
fw_head_check.h
hal_desc.c
hal_desc.h
ipc_compat.h
ipc_host.c
ipc_host.h
ipc_shared.h
Kconfig
lmac_mac.h
lmac_msg.h
lmac_types.h
Makefile
README.md
reg_access.h
reg_ipc_app.h
slave_log_buf.c
slave_log_buf.h
wifi_ecr6600u.cfg

Wifi host driver编译指南

Wifi host driver框架

Wifi host driver文件目录如下所示

  • ├── ble_netconfig
  • ├── compile_test.sh
  • ├── ecrnx_bfmer.c
  • ├── ecrnx_bfmer.h
  • ├── ecrnx_cfgfile.c
  • ├── ecrnx_cfgfile.h
  • ├── ecrnx_cmds.c
  • ├── ecrnx_cmds.h
  • ├── ecrnx_compat.h
  • ├── ecrnx_debugfs.c
  • ├── ecrnx_debugfs.h
  • ├── ecrnx_events.h
  • ├── ecrnx_fw_dump.c
  • ├── ecrnx_fw_trace.c
  • ├── ecrnx_fw_trace.h
  • ├── ecrnx_iwpriv.c
  • ├── ecrnx_mod_params.c
  • ├── ecrnx_mod_params.h
  • ├── ecrnx_msg_rx.c
  • ├── ecrnx_msg_rx.h
  • ├── ecrnx_msg_tx.c
  • ├── ecrnx_msg_tx.h
  • ├── ecrnx_mu_group.c
  • ├── ecrnx_mu_group.h
  • ├── ecrnx_platform.c
  • ├── ecrnx_platform.h
  • ├── ecrnx_prof.h
  • ├── ecrnx_radar.c
  • ├── ecrnx_radar.h
  • ├── ecrnx_strs.c
  • ├── ecrnx_strs.h
  • ├── ecrnx_testmode.c
  • ├── ecrnx_testmode.h
  • ├── ecrnx_txq.c
  • ├── ecrnx_txq.h
  • ├── ecrnx_utils.c
  • ├── ecrnx_utils.h
  • ├── ecrnx_version.h
  • ├── eswin_port
  • ├── feature_config
  • ├── fullmac
  • ├── fw_head_check.c
  • ├── fw_head_check.h
  • ├── hal_desc.c
  • ├── hal_desc.h
  • ├── ipc_compat.h
  • ├── ipc_host.c
  • ├── ipc_host.h
  • ├── ipc_shared.h
  • ├── lmac_mac.h
  • ├── lmac_msg.h
  • ├── lmac_types.h
  • ├── Makefile
  • ├── reg_access.h
  • ├── reg_ipc_app.h
  • ├── sdio
  • ├── softmac
  • └── usb

Wifi host driver 主要目录结构说明如下表所示;

文件路径 说明
eswin_port Host Driver相关的适配接口
fullmac fullmac模式下相关的配置文件和源码
softmac softmac模式下相关的配置文件和源码
sdio sdio相关的驱动文件
usb usb相关的驱动文件

Wifi host driver 编译参数说明

6600U host driver 目前时有两个参数可选,描述如下:

productproduct 参数分为 6600 和 6600u用来区分芯片平台默认为 6600

osos 参数为 ceva意思为是否使用 ceva 的 os该参数只针对 6600 有效6600u 不需要 os 参数;默认为不使用 ceva os

6600SDIO透传版本编译指令

slave 使用 6600 iot 仓库的 6600 透传版本时host driver 编译命令如下:

sudo make os=true或者 sudo make product=6600 os=true

slave 使用 6600U 合仓仓库的 develop 分支时host driver 的编译命令如下:

sudo make或者 sudo make product=6600

sdio 版本 host driver ko 加载时,如果需要下载固件的话,则要带下载固件和固件名称的参数(默认不下载固件), 如下所示:

sudo insmod wlan_ecr6600.ko dl_fw=1 fw_name="transport.bin"

6600UUSB透传版本编译指令

6600U slave 侧统一使用 6600U 仓库下的 6600U 透传版本host driver 编译命令如下:

sudo make product=6600u (不需要带 os 参数6600U 默认带 CEVA_OS)

6600U host ko 加载命令如下所示:

sudo insmod wlan_ecr6600u_usb.ko6600U host ko 加载时默认会下载固件默认加载固件名称为ECR6600U_transport.bin如果不需要固件下载则使用 dl_fw=0 如果要自定义下载固件名称则使用fw_name="filename.bin"

cfg文件使用说明

将 wifi_ecr6600u.cfg 拷贝到 /lib/firmware 路径下,修改 cfg 文件里的参数值,即可修改 host 和 slave 的相关参数,修改完成后重新卸载、加载 ko 即可生效;目前可支持的参数如下:

DRIVER_LOG_LEVEL=3 //host driver log 等级,取值范围为 0-5

FW_LOG_LEVEL=2 //slave log 等级,取值范围为 0-4

FW_LOG_TYPE=0 // slave log 输出方式, 0 为通过 slave 端串口输出1 为通过 host debugfs 保存; 2 为通过 host 侧文件保存;