高通 WCNSS_qcom_cfg.ini WIFI配置文件解析

WCNSS_qcom_cfg.ini WIFI配置文件解析

下面配置项仅供调试参考,还需要结合代码和日志具体问题具体调试。

 

STA相关的一般配置
gChannelBondingMode5GHz=1
gChannelBondingMode24GHz=0 //通道绑定
gStaKeepAlivePeriod = 30 //使用非零周期值启用保持活动状态
gVhtMpduLen=2 //最大MPDU长度(仅限VHT。有效值:0-> 3895个八位字节,1-> 7991个八位字节,2-> 11454个八位字节)
gEnableCloseLoop=1 //0 for OLPC 1 for CLPC and SCPC
gVhtRxMCS=2
gVhtTxMCS=2 //VHT Tx / Rx MCS值,有效值为0,1,2。 如果已注释掉,则默认值为0
gEnable2x2=1
gVhtRxMCS2x2=2
gVhtTxMCS2x2=2 //VHT Tx / Rx MCS值为2x2,有效值为0,1,2。 如果已注释掉,则默认值为0。
GEnableTxBFin20MHz=1 //在VHT20MHz中启用Tx波束成形
gEnableTXSTBC=1 //1 =启用tx STBC; 0 =禁
gEnableRXSTBC=1 //1 =启用STBC; 0 =禁用STBC
gEnableRXLDPC=1 //1 =使能rx LDPC; 0 =禁
gAddTSWhenACMIsOff=1 //即使ACM处于关闭状态,也允许STA发送AddTspec的标志
RTSThreshold=104857 //RTS阈值6
g11dSupportEnabled=0 //802.11d支持
gDot11Mode=0 //Phy模式(auto,b,g,n等)
rxhandle=1 //RX数据包处理选项
gEnableVhtFor24GHzBand=1 //在2.4Ghz上启用VHT
gRegulatoryChangeCountry=1 //监管设定; 0 =严格; 1 = CUSTOM
gReorderOffloadSupported=1 //启用/禁用RX完全重新排序卸载
gCountryCodePriority=1 //用户空间国家码设置shld优先
gEnableLpassSupport=1 //启用/禁用LPASS支持
gEnableSifsBurst=1 //启用(1)/禁用(0)SIFS突发
gCckChainMaskEnable=1 //用于CCK的Tx链掩模
gTxChainMask1ss=0 //用于1SS的Tx链面罩
gSelfGenFrmPwr=3 //TPC电源
gEnableNanSupport=1 //启用或禁用NAN
gEnableApProt=1 //802.11n保护标志
gFixedRate=0 //固定比率
gDisableIntraBssFwd=0 //BSS内部转发
WmmIsEnabled=0 //WMM启用/禁用
g11hSupportEnabled=1 //802.11h支持
gShortGI20Mhz=1
gShortGI40Mhz=1 //短保护间隔启用/禁用
gWlanAutoShutdown=0 //自动关机wlan:以秒为单位的值。 0表示禁用。 最多1天= 86400秒
BandCapability=0 //首选频段(仅限2.4或仅限2.4)
gTxBFEnable=1 //启用Tx波束成形
gSetTxChainmask1x1=1
gSetRxChainmask1x1=1 //设置txchainmask和rxchainmask
gEnableMCCMode=1 //如果设置为0,则不允许使用MCC。
GWlanMccToSccSwitchMode = 0 //MCC到SCC切换模式:0-禁用1-Enable 2-Force SCC(如果是相同频段)
gVhtAmpduLenExponent=7 //最大接收AMPDU大小(仅限VHT。有效值:0-> 8k 1-> 16k 2-> 32k 3-> 64k 4-> 128k)
gBusBandwidthHighThreshold=2000
gBusBandwidthMediumThreshold=500
gBusBandwidthLowThreshold=150 //据数据包数量的总线带宽阈值
gBusBandwidthComputeInterval=100 //gBusBandwidthComputeInterval=100
gMaxConcurrentActiveSessions=2 //最大并发连接数
gDFSradarMappingPriMultiplier=4 //雷达PRI乘数
gEnableMuBformee=1 //启用或禁用多用户MIMO
gEnableFWHashCheck=1 //如果启用了安全FW功能,则启用以检查FW哈希。 这是defconfig
gEnableMCCAdaptiveScheduler=1 //在FW启用或禁用MCC自适应调度程序


SCAN相关配置
gEnableIdleScan=0 //SCAN相关配置
gScanAgingTime=0 //根据计时器启用扫描结果老化
gScanResultAgeCount=1 //根据扫描次数启用扫描结果老化
gThermalMitigationEnable=0 //启用热缓解
gListOfNon11acCountryCode=RU,UA,ZA //需要禁用11ac的国家/地区代码列表
gMaxMediumTime=6000 //最大通道时间,以毫秒为单位
gActiveMaxChannelTime=40
gActiveMinChannelTime=20 //扫描时序参数
gPNOScanSupport=1 //支持PNO扫描
gExtScanEnable=1 //启用或禁用扩展扫描(GScan)
gEnableBypass11d=1 //如果设置将在驱动程序加载后以活动扫描开始,否则将以passive扫描以找出域名
gEnableDFSChnlScan=1 //如果设置为0,则不会扫描DFS通道
g_enable_probereq_whitelist_ies=1 //启用或禁用Probe Req信息元素白名单。


电源相关配置
GEnableImps=1 //是否启用IMPS
gEnableBmps=1 //是否启用BMPS
gImpsModSleepTime=0 //在IMPS期间增加睡眠持续时间(秒)
gEnableSuspend=3 //是否启用暂停
gEnablePowerSaveOffload=5 //启用节电卸载
gRuntimePM=1 //启用运行时PM功能。
gRuntimePMDelay=500 //禁用gRuntimePM后,gRuntimeAutoTime将不会生效。
IsAndroidPsEn=0 //启用基于Android Framework的节电机制
enableBeaconEarlyTermination=1 //信标提前终止(1 =启用BET功能,0 =禁用)
gDataInactivityTimeout=200 //在powersave中的数据不活动超时(以ms为单位)
gEnable5gEBT=1 //启用或禁用5G早期信标终止
gIbssTxSpEndInactivityTime=10 //在IBSS省电模式下,不活动时间(以毫秒为单位)结束TX服务周期


漫游相关配置

gRoamingTime=0 //漫游相关配置
EseEnabled=1 //ESE支持和快速过渡
gRoamIntraBand=0 //要启用,请设置gRoamIntraBand = 1(在波段内漫游),要禁用,请设置gRoamIntraBand = 0(跨频段漫游)
FastRoamEnabled=1 //传统(非ESE,非802.11r)快速漫游支持
RoamRssiDiff=3 //检查我们正在漫游的AP在RSSI方面是否优于当前AP。
gImmediateRoamRssiDiff=10
gRoamOffloadEnabled=0 //启用/禁用漫游卸载支持(a.k.a密钥管理卸载)


卸载相关配置

gNthBeaconFilter=50 //信标过滤频率(信标间隔中的单位)
WAPIIsEnabled=0 //是否启用WAPI
hostArpOffload=1 //标记以启用HostARPOffload功能
gEnableTCPChkSumOffld=1 //标志以启用TCPChkSumOffld功能与否
hostNSOffload=1 //标志以启用HostNSOffload功能与否
gEnableIPChecksumOffload=1 //标志以启用IPChkSumOffld功能与否
ssdp = 0 //通过ini参数控制以下卸载模式
gMCAddrListEnable=1 //启用MAC地址过滤卸载
gActiveModeOffload=1 //启用活动模式卸载
gEnableActiveModeOffload=1 //启用活动模式卸载
gMaxOffloadPeers=2 //支持的最大卸载对等数
gEnableWoW=0 //WOW启用/禁用。


TDLS相关配置

gEnableTDLSSupport=1 //启用对TDLS的支持
gEnableTDLSImplicitTrigger=1 //启用对TDLS的隐式触发器的支持。
GTDLSExternalControl=1 //启用TDLS外部控制。


P2P相关配置

gEnableP2pListenOffload=1 //P2P侦听卸载
isP2pDeviceAddrAdministrated=0 //启用或禁用管理的p2p设备地址


SAP相关配置

gEnableApOBSSProt=1 //启用OBSS保护
gEnableApUapsd=1 //启用/禁用SoftAP的UAPSD
gApAutoChannelSelection=0 //SAP自动频道选择配置
gEnableDFSMasterCap=1 //Dfs主功能
gSapForce11NFor11AC=1 //禁用热点的11AC
gAPAutoShutOff=0 //自动关机值,以秒为单位。 值为0表示禁用自动关闭
gEnableOverLapCh=0 //删除重叠通道限制
gSapSccChanAvoidance=0 //在SCC方案中启用/禁用SAP的通道避免


wifi 日志等级

  • vosTraceEnableBAP=255
  • vosTraceEnableTL=255
  • vosTraceEnableWDI=255
  • vosTraceEnableHDD=255
  • vosTraceEnableSME=255
  • vosTraceEnablePE=255
  • vosTraceEnablePMC=255
  • vosTraceEnableWDA=255
  • vosTraceEnableSYS=255
  • vosTraceEnableVOSS=255
  • vosTraceEnableSAP=255
  • vosTraceEnableHDDSAP=255
  • wdiTraceEnableDAL=255
  • wdiTraceEnableCTL=255
  • wdiTraceEnableDAT=255
  • wdiTraceEnablePAL=255
每一位代表一个等级是否打开,0xFF,表示所有的等级都打开。
00000001 FATAL
00000010 ERROR
00000100 WARN
00001000 INFO
00010000 INFO HIGH
00100000 INFO MED
01000000 INFO LOW
10000000 DEBUG

省电模式

  • gEnableImps=1

  • gEnableBmps=1

相关参数:
# Enable IMPS or not
gEnableImps=1
# Enable BMPS or not
gEnableBmps=1

gEnableImps:(Idle mode powersave)
打开wifi,未连接wifi的power save。

gEnableBmps:(Beacon mode powersave)
连接wifi的情况下的power save

使用工具测量电池电流大小。

Phy Mode (auto, b, g, n, etc)

  • gDot11Mode=0
# Valid values are 0-9, with 0 = Auto, 4 = 11n, 9 = 11ac
gDot11Mode=0

支持何种协议,可取之范围0-9

Roaming Parameters

  • gNeighborLookupThreshold=65

  • RoamRssiDiff=5

  • gRoamIntraBand=0

* gNeighborLookupThreshold

Roaming RSSI Threshold:		ap的信号达到所设置的值,将会进行扫描周边设备,寻找更好的AP
* RoamRssiDiff
Roaming RSSI Difference:	AP将会进行roaming,当寻找到的ap的信号比连接的AP的信号更好,并且超过这个值

* gRoamIntraBand=1
							
# To enable, set gRoamIntraBand=1 (Roaming within band)
# To disable, set gRoamIntraBand=0 (Roaming across band)
enable across band roaming. 只会在同一个频段内部进行roam,例如2.4G到2.4G内部,或者5G到5G。
							如果没有打开,那么roam的时候,2.4G-5G直接的roam是不允许的。
							但是可以断开再重连。

802.11d支持

  • g11dSupportEnabled=1
80_Y0476_2_WCN36X0_ANDROID_WLAN_REGULATORY_AND_COUNTRY_CODE.pdf

802.11d支持,根据路由器的国家码进行选择。
g11dSupportEnabled=1
Wifi 国家码获取途径
    1.DefaultCountryTablefield in WCNSS_qcom_wlan_nv.bin-read during driver initialization
    nv中默认有设置国家码
    2.gStaCountryCodeparameter in WCNSS_qcom_cfg.ini –read during driver initialization to replace default country code in WCNSS_qcom_wlan_nv.bin
    配置文件gStaCountryCodeparameter设置国家码,用于覆盖nv中的国家码
    3.Country IE from AP defined by 802.11d –information given by AP
    使能802.11d功能,通过AP来获取国家码,g11dSupportEnabled用来打开这个功能。
    4.“iw reg set” command –set from userspaceapplication over cfg80211 interface
    用户空间通过命令设置国家码
    5.Private IOCTL with “COUNTRY” command –set from userspaceapplication over wextinterface
    用户空间通过ioctl设置国家码,例如wpa_cli -iwlan DRIVER COUNTRY US.

gCountryCodePriority设置国家码获取的优先级
        1 –Country Code information from userspacecommands takes priority
        userspacecommands > 802.11d > gStaCountryCodein WCNSS_qcom_cfg.ini > DefaultCountryTablein WCNSS_qcom_wlan_nv.bin
默认是00 –Country Code information from 802.11d takes priority
        802.11d > userspacecommands > gStaCountryCodein WCNSS_qcom_cfg.ini > DefaultCountryTablein WCNSS_qcom_wlan_nv.bin
    
通过AP获取国家码:
    g11dSupportEnabled=1使能,然后如果周围有多个AP,包含不同的国家码,根据接收到的Beacon帧(被动扫描),进行投票,设置成票数最多的国家码。
        但是我查看的话,好多情况下,只是更具了解的AP来设置国家码。  
        gEnableBypass11d=1,会进行主动扫描,获取国家码,这样速率会快些。

通过SIM卡获取国家码是最可靠的途径。

记录一下与国家码有关的网址,方便查找:
国家地区代码:

https://zh.wikipedia.org/wiki/國家地區代碼

wifi信道列表

https://zh.wikipedia.org/wiki/WLAN信道列表

世界各个地区WIFI 2.4G及5G信道一览表

http://www.sohu.com/a/143179782_202311

kernel中相关文档:

net/wireless/db.txt

beacon loss

  • gHeartbeat24=40

beacon包的统计,如果超过40(默认值)个没有到,表示AP不在范围内。会有相应的事件产生。

验证方法:准备一台可以方便断电操作的路由器 ,Device先连上AP, 开始抓包 ,然后手动让AP断电
,从抓包的记录上看路由器发送的最后一个beacon和设备开始发prob request的时间差。
一般一个AP的beacon时间间隔是0.1秒,如果设置成40,那就是4s.

粗略验证方法,AP断电,查看设备wifi状态从connected变为saved所需要的时间。

信道带宽选择

  • BandCapability=0

  • gOperatingChannelListEnabled

  • gOperatingChannelList

#Preferred band (both or 2.4 only or 5 only)
BandCapability=0
0: both
1: 5G
2: 2.4G

# Operating Channel List
# 打开信道选择
gOperatingChannelListEnabled=1
不打开就表示所有信道都支持。打开就根据gOperatingChannelList的内容进行显示。
# 所选择的信道
gOperatingChannelList=6,7,8
所支持的信道。

WMM Enable/Disable

  • WmmIsEnabled=0
WmmIsEnabled=0
Wifi Multi Media,wifi多媒体。
WMM is enabled:
1 – Enable, QoS only
2 – Enable, but not QoS
0 – Auto, join any AP
Wi-Fi网络中的多媒体应用要求服务质量(QoS)功能。QoS能使Wi-Fi接入点区分业务优先级,
并优化共享网络资源的方法。如果没有QoS,在不同设备上运行的所有应用传送数据帧的
机会相等,这对于网络浏览器、文件传送或E-mail这类应用的数据业务不成问题,但对于
多媒体应用则不适宜。Internet协议上话音(VoIP)、流视频和交互式游戏对时延增加和
吞吐量下降高度敏感,因此要求QoS。
Wi-Fi联盟把Wi-Fi多媒体(WMM)定义为即将实现的IEEE 802.11e标准的规范概要,并开始
实施WMM合格检验计划,以满足业界对Wi-Fi网络QoS解决方案的需求。

cisco漫游协议支持

  • FastTransitionEnabled=1
# CCX Support and fast transition

 

refs:

https://blog.csdn.net/sdkdlwk/article/details/135144929

https://www.cnblogs.com/helloworldtoyou/p/10185674.html

WLAN国家码与信道顺从表
https://support.huawei.com/enterprise/zh/doc/EDOC1000014875
https://download.huawei.com/edownload/e/download.do?actionFlag=download&nid=EDOC1000014875&partNo=2001&mid=SUPE_DOC

 

posted @   petercao  阅读(14)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
历史上的今天:
2012-03-03 程序员技术练级攻略
点击右上角即可分享
微信分享提示