a1b2495738bed0b17dc751face96d3c2242e8c49

Scenario: Turn on and off XPAN multiple times and in between of this, bring all interface down. When XPAN gets turned on, it will run ACS algorithm either on new scan results or previous scan results which are having last_scan_ageout_time less than 30sec to select the best channel. If multiple times ACS request comes then driver should select the same previous channel if it's scan time is less than 30sec. But in this case, driver was selecting different channel when all channels were recently scanned. This is because, in some scenario, the number of scan entries was becoming 0 which causes ACS to select new channel even the previous selected channel were recently scanned. Reason for becoming number of scan entries as 0 is when all interface goes down, stop modules will get call which results to flush out the psoc. As part of psoc flush out, it will remove all scan entries as well. But driver is not resetting the last_scan_ageout_time when no scan entries are present. Hence, it will not for new scan again and later all channels were having same score after applying ACS logic. This led to select first from scanned list. As part of fix, reset the last_scan_ageout_time when no scan entries are present. Change-Id: I8e021ecf22047661076e11302998a42c029f8b37 CRs-Fixed: 3625075
This is CNSS WLAN Host Driver for products starting from iHelium
描述
语言
C
98.7%
C++
0.9%
Makefile
0.3%
Starlark
0.1%