Commit Graph

263 Commits

Author SHA1 Message Date
Jyoti Kumari
30ca608b32 qcacld-3.0: Handle eMLSR concurrency
In NAN+eMLSR concurrency, when NAN is already present
and if eMLSR comes. Host disables(by sending
MLO_LINK_FORCE_MODE_INACTIVE_NUM) one link only after
both vdev up. But there is a race condition where
firmware enters to emlsr mode just after link vdev up
and host sends the disable command after
WMI_VDEV_INSTALL_KEY_CMDID. This causes inconsistency
in firmware eMLSR state machine. Firmware asserts as
other mac is occupied by NAN and eMLSR module tries to
change the hw mode to eMLSR mode. Both mac's should be
free/available for eMLSR STA operation when firmware
tries to switch hw mode to eMLSR.

As part of fix, Host to send mlo_force_link_inactive=1
in peer assoc command of link vdev to indicate firmware
not to enter in eMLSR mode. Host shall disable one link
as part of concurrency evaluation post connection anyway.
Once the concurrency is gone, host to enable both links
to let firmware enter into eMLSR hw_mode.

Change-Id: I0ee141b51868a3c5c5d9ff6cf1bd3765bc450fa4
CRs-Fixed: 3527911
2023-06-30 00:55:21 -07:00
Liangwei Dong
2958ab1b39 qcacld-3.0: Handle link id bitmap from set link state response
Convert link id bitmap to vdev bitmap and update policy mgr
connection table.
Record the current force link command state to mlo context.

Change-Id: I0b28222de10a9493a153ee00189b87e4275a4231
CRs-Fixed: 3515467
2023-06-28 05:04:46 -07:00
Srinivas Dasari
6cce61196f qcacld-3.0: Avoid RSO stop and PCL update when roaming is in progress
Currently, RSO is stopped and PCL is updated to firmware when
SAP stop happens. But this causes inconsistency in roam sync
handling if roaming is in progress. As host driver RSO state moves
to STOPPED, host doesn't send ROAM_SYNC_COMPLETE though
ROAM_SYNC_IND is processed successfully. Firmware waits
for 6 seconds and asserts as it hasn't received either
ROAM_SYNC_COMPLETE or ROAM_ABORT(RSO_STOP).

So, don't stop RSO and avoid PCL updation when roaming is
in progress in SAP stop case. PCL gets updated to firmware
post roaming anyway. Same is applicable for SAP start also.

Change-Id: I9a6c4579d9cfab9041ee76739705d4db5a40192d
CRs-Fixed: 3518876
2023-06-27 21:48:32 -07:00
Ashish Kumar Dhanotiya
a57d5016d7 qcacld-3.0: Allow NAN+SAP SCC on unsafe channel
Currently host driver does not allow NAN+SAP SCC on unsafe channel.
With this change add support to allow NAN+SAP SCC on unsafe channel
if g_nan_sap_scc_on_lte_coex_chan ini is enabled.

Change-Id: Iccc37f28d8523cd335cce5fcfb0293f3f8cc8959
CRs-Fixed: 3531489
2023-06-22 16:02:58 -07:00
Abhinav Kumar
6063571728 qcacld-3.0: Process LINK_STATE_CONTROL_MODE in default mode
1.Host receives QCA_NL80211_VENDOR_SUBCMD_MLO_LINK_STATE
  vendor cmd.

2.Parse new attribute
  QCA_WLAN_VENDOR_ATTR_LINK_STATE_CONTROL_MODE.

3.Restore mlo link(s) state as per driver.

Change-Id: I79327618a007cd1f50ca1eafcb3633bcbac2e13f
CRs-Fixed: 3529507
2023-06-21 16:53:40 -07:00
Abhinav Kumar
3bccad6892 qcacld-3.0: Process MIXED_MODE_ACTIVE_NUM_LINKS vendor command
1. Host receives QCA_NL80211_VENDOR_SUBCMD_MLO_LINK_STATE
   vendor command.

2. parse the new attribute
   QCA_WLAN_VENDOR_ATTR_LINK_STATE_MIXED_MODE_ACTIVE_NUM_LINKS
   and get the number of MLO links to operate in the active state.

3. If any of the links is in an inactive state due to concurrency,
   we need to reject the request.

4. Host sends to FW via WMI command WMI_MLO_LINK_SET_ACTIVE_CMDID
   via the below WMI attributes with mode
   WMI_MLO_LINK_FORCE_ACTIVE_LINK_NUM and set the wmi flag
   control_flags to indicate if FW need to use force link number
   instead of force link bitmap.

Change-Id: I7596c4815630563cbc419e0e9df28f1330775334
CRs-Fixed: 3529488
2023-06-21 16:53:29 -07:00
Abhinav Kumar
59c0108fe6 qcacld-3.0: Process QCA_WLAN_VENDOR_ATTR_LINK_STATE_CONFIG
1.Host receives QCA_NL80211_VENDOR_SUBCMD_MLO_LINK_STATE
  vendor command.

2.Parse the new attribute
  QCA_WLAN_VENDOR_ATTR_LINK_STATE_CONFIG and get the
  link and corresponding link state.

3.Send it to FW via WMI command
  WMI_MLO_LINK_SET_ACTIVE_CMDID

Change-Id: I78a055f4a9fb60ccce106f9e4761fbf6d4d2f262
CRs-Fixed: 3529456
2023-06-20 20:47:19 -07:00
Abhishek Singh
d055aed7bb qcacld-3.0: Optimize force SCC API
Optimize force SCC API, to use PCL to get the required channel.

Change-Id: I440790e21dcb6437fe633316caf85bbf11a69f9a
CRs-Fixed: 3430837
2023-06-17 20:17:32 -07:00
Aditya Kodukula
7028b37955 qcacld-3.0: Fix typographical errors
Fix typographical errors spanned over various files in cld.

Change-Id: I82a7eec4335d617a43c89589418a21885074fde0
CRs-Fixed: 3529627
2023-06-15 21:23:48 -07:00
Rahul Gusain
8b87cede00 qcacld-3.0: Exempt STA + STA + NAN concurrency in host
Currently, host driver does not allow NDP formation if two STA is
in connected state. But driver should not allow NAN enable in first
if two STA is in connected state as STA + STA + NAN concurrency is
not allowed.

So, to fix this issue, add check for STA + STA concurrency in NAN
pre-enable in which NAN will drop if two STA + STA is present.

Change-Id: I6e6baa386d50b2903118660f10cc98ffcba60705
CRs-Fixed: 3481148
2023-06-15 21:23:43 -07:00
Will Huang
34b589ce84 qcacld-3.0: Update fourth connection PCL table to avoid MCC
If MLO STA connect with one 5 GHz low link and another 6 GHz (non-PSC)
link, and start 2 SAP on 5 GHz band, one SAP will start on 5 GHz low
channel doing SCC, another SAP will not start on 6 GHz (non-PSC)
channel and start on 5 GHz high doing MCC.

Add one PCL type which add SCC on 5 GHz low channel to
PM_SCC_ON_5G_HIGH_5G_HIGH_PLUS_SHARED_2G for this case, so that last
SAP can start on 5 GHz low channel doing SCC.

Change-Id: I4312873c159ac14652990c7c1079c13476dcd383
CRs-Fixed: 3508539
2023-06-15 16:31:03 -07:00
Ashish Kumar Dhanotiya
08ca873aa4 qcacld-3.0: Add helper APIs in policy mgr
With this change add two helper APIs to check if the input
concurrency mode is SAP mode and to check if the input mode
concurrency mode represents beaconing mode.

Change-Id: Iccc82fccf20e43f600efbb4a83c00d51f1d2cd14
CRs-Fixed: 3521665
2023-06-14 03:12:18 -07:00
Ashish Kumar Dhanotiya
ccb4fda527 qcacld-3.0: Update policy manager pcl tables for PM_LL_LT_SAP
Based on requirement a new concurrency mode PM_LL_LT_SAP is
added, add corresponding pcl table entries for LL_LT_SAP.

Change-Id: I12bf51547984c714499f7f0f35581251306e1a84
CRs-Fixed: 3514184
2023-06-12 16:26:22 -07:00
Liangwei Dong
5c49e57e75 qcacld-3.0: Fix AP AP start fail
2 SAP start ACS but different channel range at almost
same time. First SAP selected and started on DFS channel
5260, second SAP select and start on MCC channel of 5180,
policy_mgr_allow_concurrency in
__wlan_hdd_cfg80211_start_ap check fail and abort the second
SAP start because of MCC not allowed for DFS channel SAP.
Refine the logic in API policy_mgr_is_ap_ap_mcc_allow
to cover this case, try to override 2nd SAP channel
to avoid start failure.

Change-Id: Ie483e1fc68f73ce87d14f647ee6fe27b015b5a79
CRs-Fixed: 3512135
2023-06-12 11:19:33 -07:00
Gururaj Pandurangi
1deaec1954 qcacld-3.0: Add support to force power save on active MLO links
Add support to force power save on all the active MLO links
for a defined number of beacon periods. Force power save
allows the firmware to suspend STA links for X beacon
periods and remain asleep even if the AP advertises TIM as
opposed to regular power save mode where STA links wake up
if the AP indicates that it has buffered data to send.

Change-Id: I98251f84edeebc462703cb2ad7d9ef3f73b460a4
CRs-Fixed: 3507781
2023-06-09 23:58:26 -07:00
Jyoti Kumari
e218dceb43 qcacld-3.0: Filter out passive/dfs channel during get pcl
Filter out passive/dfs channel during get pcl for LL_LT_SAP.

Change-Id: Ica11ca7d085369286a47b73af1a259bb17329ba8
CRs-Fixed: 3493007
2023-06-08 02:11:48 -07:00
Liangwei Dong
efd112bf15 qcacld-3.0: Postpone SAP force SCC if set link in progress
After ML STA link state changes, the connection table will
be updated. So defer the force SCC a few second to use
updated table to do force SCC.

Change-Id: I453b1a8d2707bb635f7c1d8d5b397811bf3b4f7b
CRs-Fixed: 3502411
2023-05-29 22:38:59 -07:00
Asutosh Mohapatra
ad7bf16e25 qcacld-3.0: Set roam pcl after computing pdev current channel list
Currently roam pcl is updated after roam, connection and CSA.
Pdev current channel list is updated for many other scenarios,
but roam pcl is not modified accordingly.

To address this issue, update roam pcl every time after computing
pdev current channel list.

Change-Id: Ie86d5592255419de8f4040a3206d275ef926cf03
CRs-Fixed: 3481026
2023-05-26 20:21:55 -07:00
Asutosh Mohapatra
7ebd1c2c35 qcacld-3.0: Don't disable connected 6 GHz channels
Currently host disables 6 GHz band when set_fcc_channel cmd
is received hence existing STA/P2P client 6 GHz connections
get disabled.
Add changes to keep existing STA/P2P client 6 GHz connections
intact and also keep SAP up on 6 GHz if STA+SAP SCC on 6 GHz
channel was present before receiving this command. Disable all
other 6 GHz operations.

Change-Id: I95c094e1b344d430a288b6f613842efe6e576e25
CRs-Fixed: 3495006
2023-05-26 20:21:49 -07:00
Ashish Kumar Dhanotiya
bbfff086f4 qcacld-3.0: Add new concurrency mode for low latency SAP
Current SAP does not support MCC and for low latency SAP,
host driver needs to support MCC.
To support MCC with SAP, add new concurrency mode for low
latency low throughput SAP as PM_LL_LT_SAP_MODE.

CRs-Fixed: 3469425
Change-Id: Ifb4b2db3bf3c2b433324580fde32d1673df5ae67
2023-05-22 16:45:46 -07:00
Jeff Johnson
ee81cbc693 qcacld-3.0: Fix policy_mgr_change_sap_channel_with_csa() stub
When FEATURE_WLAN_MCC_TO_SCC_SWITCH is not enabled, a compilation
error is observed due to the fact that the stub implementation of
policy_mgr_change_sap_channel_with_csa() does not return QDF_STATUS,
so add an appropriate return statement.

Change-Id: I568289cc825adffa3fbcbab2419e093dc5c44cfa
CRs-Fixed: 3498278
2023-05-18 21:19:53 -07:00
chunquan luo
57696567aa qcacld-3.0: Get tx power value from each mac
When user space use "iw dev" to get tx power info,
driver send WMI_REQUEST_STATS_CMDID to fw,
fw update tx power info with two events, usually we
parse the last event, and maybe get invalid value.
Filter invalid value for each event, and get valid
tx power value from the mac which the AP/STA mode work.

Change-Id: I2411bb87e03fe385759852b028819e19a055b7f3
CRs-Fixed: 3474361
2023-05-17 21:29:30 -07:00
Sheenam Monga
69d0edd123 qcacld-3.0: Add api to get freq for ll sap separately
Currently, single API is being used to get sap freq for
both HT and LT profile type sap which may cause issue in
future because one could be in MCC but other will be strictly SCC.

To avoid any issue different APIs are introduced for different
AP profile type.

Change-Id: I7108ef96896d3bec2116c6936884500d82b24fa0
CRs-Fixed: 3489049
2023-05-10 19:12:17 -07:00
Liangwei Dong
4c41c39c8b qcacld-3.0: Fix ML STA + 2 SAP force SCC issue
After ML STA connected on 2.4 GHz + 5 GHz, two existing
SAP (2.4 GHz and 5 GHz) have to force SCC to respective
band's ML link home channel. Currently driver make the
CSA for two sap at same time but to different channel.
We only support CSA one by one (for different target
channel) because only one target channel is in
mac_ctx->sap.SapDfsInfo.target_chan_freq. Otherwise, the
value will be override by second SAP's CSA and causes
first SAP changed to wrong channel.
Fix by:
1. change __policy_mgr_check_sta_ap_concurrent_ch_intf to
trigger CSA for one SAP by break the loop.
2. reschedule the sta_ap workqueue after first CSA done in
multiple SAP case. Then do force SCC for second SAP.

Change-Id: I1de81b5839a7e24f862627ecc49663dcd0d91ce4
CRs-Fixed: 3470343
2023-05-07 18:10:41 -07:00
Srinivas Dasari
b01b3c5e00 qcacld-3.0: Handle eMLSR+NAN concurrency
eMLSR + NAN concurrency is not supported currently, so handle it
as mentioned below
1. eMLSR+NAN: If NAN is coming up when eMLSR is active, disable
   one ML link so that eMLSR gets disabled.
2. NAN+eMLSR: If eMLSR is coming up when NAN is already enabled,
   disable one link so that eMLSR doesn't get enabled.

Also, cleanup the APIs to carry a generic flag to indicate that
a concurrent connection is coming up instead of mode specific flag
as there is no dependency on modes to handle concurrency.

Change-Id: I625f8b18f9d7e991922d22af53f3e8743a3727bd
CRs-Fixed: 3443900
2023-04-17 17:50:14 -07:00
Surya Prakash Sivaraj
34ec96337f qcacld-3.0: Cleanup P2P GO support on indoor channel
Rename policy_mgr_is_sap_allowed_on_indoor() to
policy_mgr_is_sap_go_interface_allowed_on_indoor() since
it is common between SAP and GO. Cleanup the API as well.

Change-Id: I8380bd81c5050e9f12c00fff830455f14135c2b4
CRs-Fixed: 3423703
2023-04-06 20:05:37 -07:00
Paul Zhang
a15b2c8b52 qcacld-3.0: Add api policy_mgr_get_connection_count_with_mlo()
Since for MLO there may be several link connections, for TDLS
using api policy_mgr_get_connection_count_with_mlo() to replace
with policy_mgr_get_connection_count() to follow the original
logic.

Change-Id: Ic13c89f2e834196c01ca6966329cbd0d1552f292
CRs-Fixed: 3436049
2023-04-05 20:40:52 -07:00
sandhu
80b4e08023 qcacld-3.0: Update mlo set link api
Update and export api policy_mgr_mlo_sta_set_link for other
modules to use.

Change-Id: Iea5e27cabcf4d14d42db90c49fdcf33f0ea056a0
CRs-Fixed: 3439355
2023-04-03 04:30:44 -07:00
Liangwei Dong
6bad2014df qcacld-3.0: Enhance the 4 VIF concurrency check
Existing check for 4 vif concurrency in policy_mgr_allow_4th_new_freq
is insufficient to handle the case: ML STA on 2412 MHz and
5805 MHz, GO on 5180 MHz, SAP on 5805 MHz. Then user trigger
SAP CSA to 5240 MHz. Driver should reject the CSA because
DBS or SBS both can't meet the requirement that 3 VIFs MCC is not
supported in same mac.
Fix by loop all the hw mode to check vif channel and mode
combination are supported or not. If no one support the combination,
reject the 4th connection.

Change-Id: I67709395f7734d1f636a1410ac112a837cb66e79
CRs-Fixed: 3446747
2023-04-01 07:06:19 -07:00
Jyoti Kumari
1869c9e5f9 qcacld-3.0: Rename session_id with vdev_id to avoid confusion
Rename session_id with vdev_id in
policy_mgr_check_for_session_conc() to avoid confusion.

Change-Id: I9449395043f3f8d4e632f38770405febb1e227ab
CRs-Fixed: 3439906
2023-03-30 18:29:58 -07:00
Pragaspathi Thilagaraj
c2976a7b2d qcacld-3.0: Handle SAP + TDLS concurrencies
Disable TDLS offchannel on SAP start if concurrent STA with
TDLS exist.
Enable TDLS off channel after SAP start if SAP and
STA are not in MCC.

If TDLS is enabled, and off channel is required, update
TDLS off channel to be the SAP channel.

Change-Id: Ica508889acbae5e2dc4269d4d7518cf01d62714f
CRs-Fixed: 3444747
2023-03-28 04:34:46 -07:00
Rachit Kankane
4eec1b8e78 qcacld-3.0: Restart SAP / GO before STA
In STA + SAP / GO DFS SCC concurrency, switch SAP / GO's operating
channel before STA's switch upon received very first CSA on STA
interface from peer AP.

Once STA moves to new channel, enforce SCC with existing SAP / GO
if its in MCC. This is done to allow traffic on SAP / GO side
during CSA period.

Change-Id: Icb4a15ad21ae96faff1fe338985aa734a4398cd2
CRs-Fixed: 3431386
2023-03-24 19:21:47 -07:00
Jyoti Kumari
4ea4347be1 qcacld-3.0: Pass vdev_id as an argument in policy_mgr_get_pcl()
Pass vdev_id as an argument in policy_mgr_get_pcl()

Change-Id: If016b2ad1e47d1d8364037e44bd984e5b95c8d6f
CRs-Fixed: 3412927
2023-03-22 00:40:19 -07:00
Pragaspathi Thilagaraj
06be2cbc56 qcacld-3.0: Add support to disable TDLS offchannel completely
Add support for new TDLS off-channel mode type:
DISABLE_ACTIVE_CHANSWITCH. With this
off channel mode, the TDLS off-channel will be disabled
completely without passive disable mode.
DISABLE_CHANSWITCH -> Passive channel switch can be done i.e if
peer requests channel switch then firmware can do channel switch
DISABLE_ACTIVE_CHANSWITCH -> Disable all off-channel switches.

Add support to send peer channel lists based on concurrency
combination. Override the ini configured frequency to the
supported frequency based on the current concurrency.

Change-Id: Ie3210178eb8b57d6ab126a730ed91895b70edaa1
CRs-Fixed: 3416213
2023-03-21 11:50:51 -07:00
Sheenam Monga
d05fc12d8b qcacld-3.0: Add support to handle HT LL and LT LL policy separately
Currently, policy_mgr_is_ll_sap_present api is used to check if
ll sap is present or not but different operations may be required
for HT and LT LL AP policy example for LT policy i.e gaming/loss
less audio MCC is acceptable but for HT MCC is strictly prohibited.
So, wrapper functions are added to check HT, LT and any AP policy.

Change-Id: I93dbcd65b1a102d0f879366db26f3d2cf01e030e
CRs-Fixed: 3435203
2023-03-17 12:42:01 -07:00
Asutosh Mohapatra
406999bf6d qcacld-3.0: Disable sta_sap_scc_on_indoor_chan ini
Disable sta_sap_scc_on_indoor_chan ini.

Change-Id: I6d9e91c27ce62c3cefc09739cb3e05e7b034b958
CRs-Fixed: 3432677
2023-03-16 09:29:50 -07:00
Rachit Kankane
e0b7095e74 qcacld-3.0: Update to change CSA count
Add variables and APIs in SAP and SME to change CSA count
for SAP / GO.
Currently the default CSA count is 10, this API allows
to reduce the CSA count if required as per the requirements

Change-Id: I17c101cd0c809f49d57d2aaf87fc37d90b92ea1f
CRs-Fixed: 3431384
2023-03-15 09:31:04 -07:00
Liangwei Dong
d6b1c34002 qcacld-3.0: Enhance Concurrency of CSA and AP Start
In MLO STA 2.4 GHz + 5 GHz High band and SAP concurrency case,
5 GHz Low band SAP will move to MLO 5 GHz link's home channel for
SCC after MLO STA is up.
But GO starts on 5 GHz high band when SAP CSA is in process and
pass the policy mgr concurrency check because the SAP channel
is still 5 GHz low band.
Fix by defer GO BSS start if any CSA is in progress and also
check any AP start is pending for STA, SAP force SCC concurrency
handling.

Change-Id: I0fcd799017d5048f3574687f913a396ab4d7ade1
CRs-Fixed: 3418351
2023-03-02 04:17:28 -08:00
Jyoti Kumari
da3f3f0403 qcacld-3.0: Do not pass mode as arg in policy_mgr_is_vdev_ll_sap
Do not pass mode as an argument in policy_mgr_is_vdev_ll_sap().
Use vde_id to get the mode for further condition check.

Change-Id: Ie12c31d4cf536ba6c80f0e28524b4c99c23600d1
CRs-Fixed: 3414277
2023-03-01 10:29:27 -08:00
Surya Prakash Sivaraj
534c627cea qcacld-3.0: Support P2P GO on indoor channels
Add a new ini "p2p_go_in_indoor_chan" to enable support
for p2p go operation on indoor channels.

Do not allow standalone SAP on indoor channels if the
SAP indoor channel support is not enabled.

Change-Id: I2e6220ebcefe09b4ad5de496c36879ef048cb5b8
CRs-Fixed: 3405597
2023-02-28 20:00:35 -08:00
Jyoti Kumari
d749270732 qcacld-3.0: Rename policy_mgr_is_ll_sap_present() properly
Rename policy_mgr_is_ll_sap_present() into
policy_mgr_is_vdev_ll_sap(). As this api mainly checks
whether the given vdev is ll sap or not

Change-Id: I7f87aceeb0ed6ac5bb7014db1fd6213e62e6305e
CRs-Fixed: 3413644
2023-02-24 04:58:36 -08:00
Liangwei Dong
2f9f0a579b qcacld-3.0: Handle link removal for ML STA
Handle link removal for ML STA vdev:
Send force link command to target if MLO STA link number > 1.
Select other inactive link to active if possible.

Change-Id: I40567364ad240399caf6be6683b96d17f6a4aab0
CRs-Fixed: 3352849
2023-02-24 01:57:28 -08:00
Gururaj Pandurangi
06bec08823 qcacld-3.0: Handle concurrency with new EMLSR connection
Currently, if there is a legacy connection and a new STA
connection comes up with EMLSR capability, Host does not
advertise EML caps in assoc request. But there is no support
to enable EMLSR mode if the legacy connection goes away.
Thus, add support to handle this concurrency scenario as
follows
1) Host should advertise EML support capability in assoc
request.
2) After association is complete, force disable one of the
EMLSR links.
3) Once the legacy connection goes down, re-enable the
disabled link.

Change-Id: I5d9f37827e2a9f0571fa9733b4779668bd987f92
CRs-Fixed: 3363115
2023-02-16 21:30:12 -08:00
Gururaj Pandurangi
fa4bb2dfbf qcacld-3.0: Force active ML links based on link mac address
Add support to force enable/disable MLO links in MLSR mode
based on link mac address. The input will be an array of
active link mac addresses. Force enable the links associated
with all the mentioned link addresses and force disable the
links associated with mac addresses that are not given in
the input.

Change-Id: I14660f14ba6381da04460b641f971734c03aa9a7
CRs-Fixed: 3391992
2023-02-14 21:21:50 -08:00
Rachit Kankane
6890f7410c qcacld-3.0: New INI for STA+GO DFS SCC
In STA+SAP / GO concurrency, SCC is enforced by moving SAP / GO
to STA's operating channel. STA side, if there is a CSA
then SCC will be enforced only after STA moves to new channel.

In usecase of STA + GO SCC on DFS channel, CSA is sent with no-TX
and STA's movement will only happen once CSA count becomes 0.
This will block data transmission till then, which will have bad
user experience in case of XR where, it needs to have periodic data
transmission in every 1 second with GO interface.

This new INI is added to handle this scenario where SAP / GO will
move first followed by STA.

Change-Id: Id642872da4f3403a5168a2fad58b4c971cd88288
CRs-Fixed: 3380861
2023-01-30 10:35:50 -08:00
Srinivas Dasari
b8db5ef04a qcacld-3.0: Handle SAP restart case in fixed chan SAP
Currently, unsafe channels are avoided when SAP restart happens.
If WMI_COEX_FIX_CHANNEL_CAPABILITIES is advertised by firmware
and if the SAP is started in a fixed channel, don't restart even
if the current operating channel is unsafe.

Change-Id: I5f7d632bcc00a1b5351dad64aca0ce16f1057537
CRs-Fixed: 3381394
2023-01-19 23:32:58 -08:00
Jeff Johnson
4086862b28 qcacld-3.0: Fix Common Services Documentation
The kernel-doc script identified multiple documentation issues in
components/cmn_services, so fix them.

Change-Id: Ifdc8cefcbf7b31dc3e91cc3c5dab7cccd331e473
CRs-Fixed: 3363114
2023-01-10 11:30:44 -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
Krupali Dhanvijay
a3a9866f7d qcacld-3.0: Clean up code for sme apis
Clean up code for sme_get_valid_channels() and
sme_get_roam_intra_band() apis and
replace it with ucfg api.

Change-Id: Ic2f07e2193186d1e1ac81f6e5909417c10ab9c89
CRs-Fixed: 3335898
2022-12-02 01:24:32 -08:00
Jianmin Zhu
60c511d230 qcacld-3.0: Enable vdev PCL for SBS mode to avoid roaming to MCC
When dual sta connected as SBS mode instead of dbs mode, driver didn't set
pcl per vdev, so dual sta had same PCL in firmware, MCC may happened after
roaming.

Fix:
1. Host pass roaming MCC disallow flag to F/W by checking primary vdev id.

2. For platform SBS supported, when doing dbs or sbs, send PCL from table
to F/W directly, allow SCC and SBS<->DBS roaming, don't limit to intra
band, only avoid mcc case if no primary vdev.

3. Use policy_mgr_concurrent_sta_on_different_mac to replace
policy_mgr_concurrent_sta_doing_dbs, add logic to consider SBS when set
PCL to F/W.

4. Change dual sta PCL table to remove mcc channels.

5. When STA channel switch, also update PCL to F/W.

6. For roaming case, do vdev level PCL update for all sta after connection
update in policy mgr, or wrong PCL is got.

Change-Id: I631c84c96da2bba4011b69e4c076db174205c874
CRs-Fixed: 3336768
2022-11-27 23:28:03 -08:00