Commit Graph

887 Commits

Author SHA1 Message Date
Liangwei Dong
8b74f67a1b qcacld-3.0: Allow SAP STA SCC on unsafe channel
When g_sta_sap_scc_on_lte_coex_chan = 1, SAP is allowed SCC with
STA on unsafe channel.
Use API policy_mgr_is_sap_freq_allowed to check such condition
in wlansap_get_chan_band_restrict.

Change-Id: I62b3ad83ccdfc80b5e72cad733618326e4fed936
CRs-Fixed: 3368195
2022-12-28 08:11:28 -08:00
Jianmin Zhu
c7369d8419 qcacld-3.0: Fix DFS issue when puncture enabled
If some 20M sub channels are disabled for puncture, bonded freq state will
become CHANNEL_STATE_DISABLE, while CHANNEL_STATE_DFS is expected if
DFS freq is included to pass CHAN_DFS_CFREQ2 to F/W by vdev start wmi cmd.
the check also happens in several other places.

To fix it, use API wlan_reg_get_5g_bonded_channel_state_for_pwrmode to
replace wlan_reg_get_5g_bonded_channel_state_for_freq and
wlan_reg_get_bonded_channel_state_for_freq.
set is_create_punc_bitmap of ch param as true, then bonded freq
state will become CHANNEL_STATE_DFS after
reg_update_5g_bonded_channel_state_punc_for_pwrmode called.

Change-Id: I3e5214e9e09ac2a959f6fa7d641173a80a3980a7
CRs-Fixed: 3360820
2022-12-20 14:18:45 -08:00
Utkarsh Bhatnagar
377a632f72 qcacld-3.0: Change sap Channel if unsafe during cac
While doing CAC for moving SAP to DFS channel, channel
avoid event can be received. While in CAC is going on,
the current sap channel is not updated and remains the
channel on which sap was before CAC. It is only updated
after CSA. So, when channel avoid event is received,
it is checked against the previous frequency and hence,
no action is taken as the previous frequency is part of
safe channel. This results in sap starting and remaining
in Unsafe channel.
As, a fix when sap starts after CSA, check for unsafe
channel and if the sap frequency is unsafe then restart
it to another channel.

Change-Id: I910b80fe87fc149f25e84383b128a5e5c9d269e4
CRs-Fixed: 3287239
2022-12-09 01:06:30 -08:00
Will Huang
1ad545d3d7 qcacld-3.0: Add SAP channel auto selection DCS callbacks with AFC
Add channel tx max power factor to existing ACS channel weight logic,
so if AFC available can automatically select Standard Power channel
which has higher 6 GHz tx power and better performance.

Add SAP best channel selection callback when AFC triggered DCS,
DCS module will invoke this callback and dynamic switch to best
channel/bandwidth if possible.

Change-Id: I300057c2b11d0b818f4e20ba51d6ab9b82f6a3ff
CRs-Fixed: 3204199
2022-12-08 07:40:20 -08:00
Paul Zhang
64e62fbb3d qcacld-3.0: Fix about extended supported rate wrong
After starting SAP on channel 6, then issuing setChanChange
command. Per the sniffer log, the rate list of extended
supported rate is wrong in the beacon and probe response.

It is happens because in wlansap_fill_channel_change_request,
when it copies the extended supported rate list, it uses
parameter sizeof(dot11_cfg.ext_rates.numRates) instead of
dot11_cfg.ext_rates.numRates, so it only copies the first rate.

Change-Id: I7f23254fbd6ce56be69dbea634d9d99f3b611448
CRs-Fixed: 3345554
2022-12-02 12:28:59 -08:00
Surya Prakash Sivaraj
9387f3974b qcacld-3.0: Update NO_IR flag of indoor channel dynamically
In current design of sta+sap scc on indoor channels, the NO_IR
flag of all the indoor channels are removed during init.
Then, based on the operations on the SAP interface, the
SAP concurrency will be decided in host driver.

However, some userspace p2p applications, do not query the
pcl list from driver, therefore standalone P2P GO are sometimes
brought up in indoor channels.

To fix this:
1. Upon STA connect: Remove the NO_IR flags only from the
indoor channels to which the STA is connected.
2. Upon STA disconnect: Add the NO_IR flag back to the
disconnected channel.
3. Upon STA roam/csa:
    a) Add the NO_IR to the new channel if it is indoor.
    b) Remove the NO_IR of the previously connected channel
       once the SAP/GO(if present) moves out of the indoor channel.
4. The NO_IR flags should be removed for all the bonded channels
on which the STA is active.
5. In indoor concurrency cases, add logic in the SAP start to
limit the channel width with the STA interface bandwidth. Since,
only the bonded channels are active channels.

Change-Id: Ib0b30e1f17d0eb944c72b26bb679bf7447b9032f
CRs-Fixed: 3296208
2022-11-26 19:23:34 -08:00
Jeff Johnson
00c4713e4d qcacld-3.0: Fix sap_channel_sel() prototype
Fix sap_channel_sel() prototype so that it matches the documentation
as well as the implementation.

Change-Id: I99ef2ff6e867b2124bb534bb12ba0f5818f8e0a4
CRs-Fixed: 3330730
2022-11-14 11:11:26 -08:00
Divyajyothi Goparaju
dc01aca04d qcacld-3.0: Replace wlan_reg_set_channel_params_for_freq
Replace all occurrences of
wlan_reg_set_channel_params_for_freq  API with new API
wlan_reg_set_channel_params_for_pwrmode.

Change-Id: I7ae94a7004803a96caeb7a77d03065096afe5f0e
CRs-Fixed: 3144793
2022-11-01 09:17:39 -07:00
Paul Zhang
bc894a28b6 qcacld-3.0: remove duplicate code logic and race condition
Currently, there is duplicate logic in function
wlansap_roam_process_ch_change_success to invoke
function wlansap_start_beacon_req.
  a\ wlansap_roam_process_ch_change_success ->
	wlansap_start_beacon_req(sap_ctx)
  b\ wlansap_roam_process_ch_change_success ->
	sap_fsm -> sap_fsm_state_starting ->
	wlansap_start_beacon_req(sap_ctx)
This causes fw crash since it sends vdev up twice.

Also in SAP + SAP scenario, there is a race in updating global
variable mac_ctx->sap.SapDfsInfo.sap_radar_found_status. Move the
variable to sap_ctx per vdev to avoid such race.

Change-Id: Iaac9e5a649ea5fd6a8378f6da47c51112fbe8d18
CRs-Fixed: 3310317
2022-10-26 17:18:08 -07:00
Liangwei Dong
be5cc24258 qcacld-3.0: Fix unsafe check failure for SAP
With MACRO FEATURE_WLAN_CH_AVOID_EXT enabled,
"restriction_mask" can only be checked if
coex_unsafe_chan_nb_user_prefer = 1. If the INI
coex_unsafe_chan_nb_user_prefer = 0, do not need to check
"restriction_mask". It will remain uninitialized 0.

Change-Id: If7bd1223ee3779b72fadb40e622f682db03f4ea5
CRs-Fixed: 3287634
2022-10-25 10:11:13 +08:00
Divyajyothi Goparaju
4ed23d7914 qcacld-3.0: Replace wlan_reg_is_passive_or_disable_for_freq
As part upgrading legacy APIs with 6 GHz power APIs
Replace all occurrences of
wlan_reg_is_passive_or_disable_for_freq API with new API
wlan_reg_is_passive_or_disable_for_pwrmode.

Change-Id: If8429146e3e4e4cb25505de9855671dca2eb6474
CRs-Fixed: 3306631
2022-10-20 12:50:07 -07:00
Jeff Johnson
e4696ca9d3 qcacld-3.0: Fix misspelling of "possibility"
Fix misspelling of "possibility" in sap_ch_select.c.

Change-Id: Ibc1bfdb4697f2a8e74d792fefece2010b04b44cd
CRs-Fixed: 3313903
2022-10-20 03:00:00 -07:00
Ben Wang
dafdfb98ff qcacld-3.0: Support SAP fast BSS transition in driver
When driver receive auth request frame with FT algorithm,
offload it to hostapd.

When driver receive (re)assoc request whith FT-PSK in RSN IE.
offload it to hostapd.

Filter FT related IE from hostapd, and append it to the end
of the (re)assoc response frame

Change-Id: Id11cce6898615bb6b0cb361ea7b23ea2014f0bae
CRs-Fixed: 4202696
2022-10-18 01:42:14 -07:00
Divyajyothi Goparaju
3498515802 qcacld-3.0: Replace wlan_reg_get_channel_state_for_freq
Replace all occurrences of
wlan_reg_get_channel_state_for_freq with
wlan_reg_get_channel_state_for_pwrmode and use extra
parameter as REG_CURRENT_PWR_MODE.

Change-Id: I7f7e4e700091918eeebc87ccbbc85ececdd9bf52
CRs-Fixed: 3145011
2022-10-06 13:01:14 -07:00
Jeff Johnson
39dc04806c qcacld-3.0: core: sap: Fix misspellings
Fix misspellings in core/sap/...

Change-Id: I945759b3f51e43206b58cae88c07bda5aff3a1fe
CRs-Fixed: 3303625
2022-10-03 00:19:34 -07:00
Divyajyothi Goparaju
9e02702427 qcacld-3.0: Replace wlan_reg_is_disable_for_freq
As part of upgrading legacy code
with 6 GHz power APIs, replace
all ocurrances of
wlan_reg_is_disable_for_freq with
wlan_reg_is_disable_for_pwrmode.

Change-Id: Id18e48e27eb118945d56205797882874eb552153
CRs-Fixed: 3145764
2022-10-01 11:35:16 -07:00
Surabhi Vishnoi
25112131d0 qcacld-3.0: Do not clear channel stats after ACS completion
As part of SAP ACS optimization, the last ACS scan's result
can be reused in current ACS request if the last scan done
was not greater then last_scan_ageout_time provided as part
of do_acs command. So, do not clear channel stats after
ACS completion if SAP ACS optimization feature is enabled.

Change-Id: Idac6225f790d84ba90ebd740602d0c5d358ed2dc
CRs-Fixed: 3297868
2022-09-22 13:47:14 -07:00
Surabhi Vishnoi
09e7520da2 qcacld-3.0: Allow subsequent same ACS request even if ACS is in progress
To reduce the ACS time, there is an implementation wherein one
user space process creates sap interface and queues ACS request to driver,
meantime framework initializes various config and starts hostapd
to queue same ACS request to driver. In this scenario, there is a
race condition that hostapd tries to queue ACS request while there is
already one ACS request is in progress. With current implementation,
driver will reject second ACS request and return error to hostapd
leading to sap turn on failure.

This change allows subsequent ACS request if all the attributes
of do_acs vendor command matches with the ongoing ACS request and returns
success to userspace. There is no another ACS scan queued as part of
second ACS request which is same as ongoing ACS request because the result
of ongoing ACS request will act as result of second ACS request as well.

Change-Id: I67d10b09be922745e7ffb46192e00135dbdb9de4
CRs-Fixed: 3295786
2022-09-22 12:15:13 -07:00
Surabhi Vishnoi
019bdebd3f qcacld-3.0: Do not set acs_in_progress if ACS scan is skipped
If ACS scan is skipped, then ACS request is completed and vendor
event is sent to userspace in same context, so there is no need to set
acs_in_progress when ACS scan is skipped.

Change-Id: Id3d1235e405832ce66a1b8837dc04e94bb3c6b64
CRs-Fixed: 3296939
2022-09-22 02:21:05 -07:00
chunquan
00d1710be6 qcacld-3.0: Don't allow SAP setup on indoor chn only
In default configure with sta_sap_scc_on_indoor_chan=1 and
gindoor_channel_support=0, we don't expect sap setup on indoor
channel only.

Change-Id: Ibea0eb41b20bcbdaa365bd3fa4f0a7be7b696493
CRs-Fixed: 3278223
2022-09-09 22:25:43 -07:00
Bing Sun
b9a91ebcaa qcacld-3.0: Fix SAP OWE roaming issue
SAP fails to get RSN IE from reassoc request frame body.

Assoc request and reassoc request have different fixed parameters.
IE should be retrieved based on frame subtype.

Change-Id: I72cfc4cc28cdfeb9a35269d6c1a8c638dea87631
CRs-Fixed: 3283683
2022-09-08 07:46:53 -07:00
Liangwei Dong
7adfbf01fb qcacld-3.0: Add p2p GO mode check in Radar channel switch
If SAP+GO SCC on DFS channel and Radar event is detected, driver
should move out both SAP and GO to new channel. Add GO mode
check in wlansap_roam_process_dfs_chansw_update API.

Change-Id: I824553222be8a8f21ab6c4ac776a4b1e692ed3da
CRs-Fixed: 3280352
2022-09-07 13:21:28 -07:00
Liangwei Dong
f863fac358 qcacld-3.0: Add dfs channel to ACS chan selection list
Single SAP is not allowed on the DFS channel with the
g_sta_sap_scc_on_dfs_chan value = 1.
If g_sta_sap_scc_on_dfs_chan = 1 and STA is present on the
dfs channel, allow the dfs channel to be added to ACS channel
selection list.

Change-Id: I19f799628febd495302547a3f223e8b2561d8b78
CRs-Fixed: 3271710
2022-09-06 16:50:55 -07:00
Surabhi Vishnoi
603ebd0743 qcacld-3.0: Enable SAP ACS optimization feature config
Enable SAP ACS optimization config in default_defconfig and
add corresponding kbuild flag.

Change-Id: I9f741cf5e17c8258136c2ebbd6a975888989fa66
CRs-Fixed: 3280853
2022-09-06 04:23:24 -07:00
Surya Prakash Sivaraj
538f94a3fa qcacld-3.0: Bring up SAP in VLP if country supports VLP
In STA+SAP concurrency, if the STA is connected in indoor
power, and if the country/channel supports VLP, then bringup
the SAP in VLP. Move the STA to VLP as well.

Restore the power of the STA, when the SAP is disconnected.

Add changes to:
a) Decide the power type for the concurrency during start bss,
stop bss, change channel request calls of the SAP interface.

b) Allow the 6 GHz SCC channel in ACS computation if the channel
supports VLP power or if the channel is indoor and enabled.

Change-Id: I151e2e3e8910a406bb5c1526f4f01715854d173f
CRs-Fixed: 3268100
2022-09-03 03:19:42 -07:00
Srinivas Dasari
8f06292a0b qcacld-3.0: Avoid CH_WIDTH_320MHZ dependency on 11BE define
CH_WIDTH_320MHZ definition is in 11BE define currently and it's
causing duplicate code in 11BE supported/unsupported cases.
Definition need not be in 11BE define as it doesn't cause any
impact on memory.

Change-Id: I9fa391474f513755000368cc2e41e004446353d0
CRs-Fixed: 3246578
2022-08-26 09:10:01 -07:00
Surabhi Vishnoi
abba175dc5 qcacld-3.0: Add new scan filter if ACS scan is done partially
If the acs scan is optimized based on last scan ageout time,
it can lead to either skip ACS scan fully or scan partial
ACS frequency list. If ACS scan is skipped or partially
done, use a scan filter based on last scan ageout time to
retrieve the scan entries for ACS algorithm.

Change-Id: Id1d3a3d4364163686f92c380e9f6d6dada033ff5
CRs-Fixed: 3239389
2022-08-19 08:14:54 -07:00
Liangwei Dong
68da70f0d2 qcacld-3.0: Move GO to other band for SAP starting on 3vif conc
In GO+STA+SAP concurrency, if GO is MCC with STA, the new SAP
will not be allowed in same MAC. FW doesn't support MCC in same
MAC for 3 or more vdevs. Move GO to other band to avoid SAP
starting failed.

Change-Id: Ia19abd1b11f7416797af3e975ab8ffde9037c11f
CRs-Fixed: 3262185
2022-08-19 08:14:48 -07:00
Surabhi Vishnoi
ef08e7a4c4 qcacld-3.0: Select first clean channel for ACS to optimize SAP turn on time
Currently, ACS computation triggers when ACS scan complete event is
received after firmware has scanned all channels. This leads to
delay in selection on SAP channel.
As an optimization, this change selects the first clean channel
while scan is still in progress. The criteria for first clean channel
is that no beacon/probe response should be received on that channel.
If such channel is obtained while scan is in progress, then select this
channel as SAP channel and abort ongoing scan. Firmware sends
wma_chan_info_event per channel this change uses this event as an
indication that scan is completed on that channel.

To further increase the optimize the time to get clean channel, sort the
ACS frequency list in descending order in ACS SCAN request to
firmware. Firmware scans the channel in the order given by host
in scan request, as higher band channels are less occupied, the
probability of getting clean channel initially will increase, which
will lead to selecting the channel in less time and thereby reduce
the SAP turn on time.

Change-Id: I1a38556862b66943edea08783436f5e1e3a255f6
CRs-Fixed: 3245166
2022-08-19 01:53:49 -07:00
Surabhi Vishnoi
1981726d18 qcacld-3.0: Refactor code to store chan info status in cp_stats
Currently channel info stats are stored in LIM. Refactor
code to store channel info stats in cp stats component.

Change-Id: I2e7219c112e96916d3b73f974dd9803b9c2821c3
CRs-Fixed: 3265722
2022-08-19 01:53:43 -07:00
Surabhi Vishnoi
a6e1be96f5 qcacld-3.0: Trim ACS scan freq list based on last scan ageout time
If particular channel's last scan time is less than the last_scan_ageout
threshold, skip that channel from ACS scan frequency list.

This change optimises the ACS scan time by reducing the number of
channels in ACS scan request to firmware.

Change-Id: Id81815035a89039ef1f492a622c5d89cb4aa298e
CRs-Fixed: 3239387
2022-08-16 06:00:35 -07:00
Surabhi Vishnoi
4783a4c4f4 qcacld-3.0: Store new ACS vendor attribute in SAP ACS config
Parse and store new ACS vendor attribute
QCA_WLAN_VENDOR_ATTR_ACS_LAST_SCAN_AGEOUT_TIME in SAP ACS
config.

Change-Id: If50224780192ed7b587505e973a8dabeab3459b2
CRs-Fixed: 3239372
2022-08-11 12:43:01 -07:00
Balaji Pothunoori
0eb7674f1b qcacld-3.0: start sap if restriction mask is not set for unsafe channels
Currently sap is not starting if all channels configured as coex
unsafe and if restriction mask is not set.
This change is to select unsafe channel if restriction mask is
not set and start the sap.

Change-Id: I4ccf887655066da6d6b50715f631dde6edfda598
CRs-Fixed: 3260305
2022-08-11 09:46:58 -07:00
Liangwei Dong
f31505e491 qcacld-3.0: Fix 2.4 GHz SAP can't be started on 40 MHz
If SAP is initially started on 40 MHz bandwidth, keep using it.
But still keep the old logic 20 MHz for internal CSA for SAP.
This is to fix the SAP can't bring up on 2.4 GHz 40 MHz bw if SAP
OBSS scan disabled and configured as HT40 in hostapd conf.

Change-Id: Ib01be7fe594130f1eee35e3bfb773b1e913ec9c1
CRs-Fixed: 3234564
2022-07-18 21:18:58 -07:00
Surya Prakash Sivaraj
3c1e1b799d qcacld-3.0: Do not allow 6 GHz SAP in non-WPA3
Reject the SAP if the frequency is 6 GHz and
the security is non-WPA3 AKM suite.

Also, use the ini "check_6ghz_security" to
allow the 6 GHz SAP to be operational on an
open security mode for test purposes.

Change-Id: Ifc57656a556ef5b6829ed56bb1ec360b5b84379e
CRs-Fixed: 3176629
2022-07-14 23:21:05 -07:00
Surabhi Vishnoi
83682dcf07 qcacld-3.0: Store chan info event results in STA mode also
Currently, channel info event results are stored only if it is
received as part of SAP ACS scan. Channel info is used in
ACS algorithm to select best channel. There is a requirement to
reuse the STA's scan results for SAP to reduce the SAP bringup
time. So store the channel info event results received as part
of STA scan if WLAN_FEATURE_SAP_ACS_OPTIMIZE is enabled.

Change-Id: I99d4e8c13a9e4171c74c63907d29c585f89ecf9e
CRs-Fixed: 3239383
2022-07-12 10:42:48 -07:00
Dundi Raviteja
a258f3cd42 qcacld-3.0: Clean up code under PRE_CAC_COMP flag
pre cac componentization is done, so clean up
code under PRE_CAC_COMP flag.

Change-Id: I6465bce9fc883797f42358aaeb8dabf70e449cde
CRs-Fixed: 3232820
2022-07-04 11:52:02 -07:00
chunquan
f3b0e58647 qcacld-3.0: Print all freqs info in ACS range
Print all freqs info log in ACS range.

Change-Id: Ic250ac8e2c41527db7683e1e8ef66f0bcfa306a5
CRs-Fixed: 3211309
2022-07-01 13:22:29 -07:00
David Oladunjoye
c730c2b970 qcacld-3.0: sap: Replace fallthrough comment with attribute
-Wimplicit-fallthrough is being enabled by default. Some compilers
such as clang require the attribute instead of just a fallthrough comment.

Change-Id: I34248b07875ea4b615be84aba26798f10e7773ec
CRs-Fixed: 3217419
2022-06-24 20:06:13 -07:00
Liangwei Dong
92806a4724 qcacld-3.0: Validate SAP acs freq_list
Add validation of ACS scan frequency list ptr from sap_get_freq_list.
If Null then return failure for sap_channel_sel API.

Change-Id: I46db7a956f8f83ba9eceaa8e9e06fe3b44d1a767
CRs-Fixed: 3219747
2022-06-24 00:28:12 -07:00
Wu Gao
c372883e10 qcacld-3.0: Fix compilation issue with openwrt
Remove unnecessary parentheses and avoid compilation error with openwrt.

Change-Id: I884ac75a66f5af44028bdc849d3cbfc36390d360
CRs-Fixed: 3225981
2022-06-23 22:46:24 -07:00
Liangwei Dong
ead788ac8c qcacld-3.0: Fix SAP stuck in CAC wait state
Driver checks all 160Mhz 5 GHz SAP as DFS channel SAP, but
it is not right for some regdomain which no DFS required for
some 160 Mhz channels.
Fix by check wlan_reg_get_bonded_channel_state_for_freq API
to set DFS flag.

Change-Id: I8cd402c285e858ef8d322fc8d7cfaa32ae4c2056
CRs-Fixed: 3208538
2022-06-02 01:30:44 -07:00
Ashish
e0b72bca28 qcacld-3.0: Start SAP on valid same band channel after country change
Currently if SAP is operating on 5GHz channel and if country change
happens to a world mode where SAP is not allowed on 5GHz channels so
SAP moves to a 2.4GHz channel and saves the current operating 5GHz
channel, now when again country change happens then SAP tries to
move to previous 5GHz channels, if SAP is not allowed on this 5GHz
channel in new country, SAP comes up on 2.4GHz channel.
Ideally SAP should come up on some other valid 5GHz channel instead
of 2.4GHz channel.
This scenario is possible for 6GHz channel as well.
To address above issue, add a fix to get first valid same band channel
if previous same band channel is not valid channel.

Change-Id: I39dc297846c838731a70cd01d696bcbd8a054970
CRs-Fixed: 3175740
2022-05-30 08:13:33 -07:00
Jia Ding
307406f111 qcacld-3.0: Properly check max supported EHT bandwidth
Per 11BE Spec, only 320 MHz support in 6 GHz is defined in EHT
PHY capabilities. Therefore when deciding max target supported
EHT bandwidth, 320 MHz support is first checked using target
advertised EHT phy caps. If 320 MHz is not supported, fall back
to VHT channel width supported, which includes 160 MHz and 80 MHz.

Change-Id: I26ddfa250db66d72ca55a3c9f966d71740cb0414
CRs-Fixed: 3190474
2022-05-30 03:55:56 -07:00
Dundi Raviteja
a52b682bcb qcacld-3.0: Move pre cac failure code to pre cac component
Move pre cac failure code to pre cac component.

Change-Id: Ie27c93737fff89a4f5f3c2ceaa51223bd246e43b
CRs-Fixed: 3199950
2022-05-29 22:51:57 -07:00
Dundi Raviteja
2bbdc1835e qcacld-3.0: Move pre cac success code to pre cac component
Move pre cac success code to pre cac component.

Change-Id: I9d4f6c52ada96905e185fecef6556c59e05ab284
CRs-Fixed: 3199947
2022-05-29 22:51:50 -07:00
Dundi Raviteja
71fc4f3fd4 qcacld-3.0: Move pre_cac start code to pre_cac component
Move pre_cac start code flow from hdd to pre_cac component.

Change-Id: Ia3bd7521bff9571dee18dbc20b28d08b76128944
CRs-Fixed: 3199948
2022-05-27 18:06:07 -07:00
Liangwei Dong
00c79e5785 qcacld-3.0: Add SAP P2P GO force SCC in same band
When SAP and GO home channels are in MCC in same band,
implement below requirement to avoid MCC:
1. SAP starts at first and GO starts later, then SAP will
  force SCC to GO's home channel after GO starts up.
2. GO starts at first and SAP starts later, then SAP will
  force SCC to GO's home channel during starting up.
3. SAP and GO SCC in same band, SAP changes channel to
  the other channel in same band, GO will follow SAP and
  move to SAP home channel.
4. SAP and GO SCC in same band, GO changes channel to the
  other channel in same band, SAP will follow GO and move
  to GO home channel.

And all the force SCC cases, if the target channel of force
SCC is not supported by the SAP or GO, then driver will
select other band's channel for the interface.

Change-Id: I7b24f3a972a401fd144a0c81dc19bd48ba224d85
CRs-Fixed: 3176087
2022-05-26 13:34:04 -07:00
Bing Sun
98cbab9a5a qcacld-3.0: Restart SAP after updating phymode requested from SON
EasyMesh agent fails to update the phymode requested by controller.

EasyMesh controller sends the channel selection request package to notify
EasyMesh agent to change phymode and channel. EasyMesh agent should change
them accordingly.

Update the phymode of the SAP, then restart the SAP.

Change-Id: Iab881b0bfbd1764072b48d426610adc8967111cd
CRs-Fixed: 3181195
2022-05-26 05:29:31 -07:00
Liangwei Dong
58ac0e7341 qcacld-3.0: Fix DFS channel weight factor issue
If normalize_acs_weight INI setting covers the DFS channel,
the existing DFS channel weight factor will be override.
Fix it by using the minimal weight factor for both setting.

Change-Id: Ie0fa3371bd99ee8d50c7abc81ddc8cd0eb84f9aa
CRs-Fixed: 3196688
2022-05-23 22:05:47 -07:00