Commit Graph

542 Commits

Author SHA1 Message Date
Surya Prakash Sivaraj
5e69b2f7f7 qcacld-3.0: Prevent CSA in middle of CAC
If precac interface is in the middle of CAC, do not
entertain any CSA request coming as part of userspace/
country change/unsafe channel handling. Processing the
Channel change request in middle of CAC leads to teardown
of the SAP as SAP is in SAP_STOPPED state.
This leads to pre-cac failure.

To fix this, prevent CSA while CAC and once CAC is finished,
check the sanity of the operating channel based on
unsafe/disable channel list and move it to a valid channel.

Change-Id: I2757753a2a13bdaef60f9b9a46fcd569ddb7306c
CRs-Fixed: 3505593
2023-07-03 01:47:47 -07:00
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
Jyoti Kumari
adf22d9ae4 qcacld-3.0: Fix policy_mgr_is_6G_chan_valid_for_ll_sap() api
Remove only 6 GHz using policy_mgr_is_6G_chan_valid_for_ll_sap()
if WLAN_FEATURE_LL_LT_SAP_6G_SUPPORT is not defined.

Change-Id: I828c61adf3c88c2a5100fff603a007d8a6c85a88
CRs-Fixed: 3532992
2023-06-22 22:01:36 -07:00
Jianmin Zhu
44d20ce3a6 qcacld-3.0: Fix dual sta roaming failure
MLO sta + 2nd sta case, 2nd sta got pcl type: PM_NONE, total pcl
freq num 0, but dual sta follow pcl strictly, so PCL 0 is sent to F/W,
failed to roam to any freq.

To fix it, for PM_NONE and PCL freq num 0 case, don't follow pcl strictly,
send all valid freq as PCL to F/W.

Change-Id: Ie3529fd85dcfcfd3cc44ed6c25fc8fefe7a6c769
CRs-Fixed: 3534201
2023-06-22 16:03:04 -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
Srinivas Dasari
db403bc9de qcacld-3.0: Allow CSA to DFS channel only if PCL list has it
Currently, PCL returns all 5 GHz channel and SCC channel for SAP
when an ML-STA is present. But this may lead to a case
where the CSA request might be for a DFS channel which needs CAC.

This needs a dedicated mac and ML-STA can't move to MLMR in such
cases. When firmware attempts to move STA to MLMR from MLSR,
firmware asserts as the other mac is occupied by DFS SAP for
CAC operation.
So, allow CSA to a DFS channel only if the channel is present in
PCL list as it covers the supported channel list anyway. Fix
policy mgr table entries also by allowing SCC channels only.

Change-Id: I079fa6beea97fcd7c926ad4bd2bf928a0442d146
CRs-Fixed: 3484572
2023-06-22 09:10:10 -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
Will Huang
add0c193f1 qcacld-3.0: Check all STAs (MLO links) to find 6 GHz channel
Currently policy_mgr_modify_sap_pcl_for_6G_channels() only find the
first STA or P2P-CLI, then check its channel is 6 GHz or not,
It will lead to different behavior if there is MLO STA which has one
link connected on 6 GHz, sometime PCL modify for 6 GHz channels,
sometime not.

Change to find first 6 GHz STA or P2P-CLI, only if has, continue to
do 6 GHz channels modify.

Change-Id: I96d01ded297fb900f0ea715b75cbdadb9faade3d
CRs-Fixed: 3526650
2023-06-20 00:40:43 -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
Jyoti Kumari
8f4111a071 qcacld-3.0: Add api to check 6 GHz channels till UNII-5 band
Add api to check 6 GHz channels till UNII-5 band for LL_LT_SAP

Change-Id: I05aa6baef455238f3e95a572855f2e740073dcac
CRs-Fixed: 3523007
2023-06-15 21:23:38 -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
Aditya Kodukula
744adf0e1c qcacld-3.0: Fix typos in cld
Fix typos spanned over multiple files in cld.

Change-Id: I88def5a2898c9e3e5cf32d123521faa53ef42e70
CRs-Fixed: 3521886
2023-06-07 13:58:12 -07:00
Gururaj Pandurangi
988af7b177 qcacld-3.0: Add EMLSR HW mode check to avoid excess logging
The policy manager API to fetch hardware mode capabilities
from hardware mode index is not using the get EMLSR mode API
and thus throws an error message whenever the device is in
EMLSR mode. This is resulting in excessive logging. Thus,
add the get EMLSR hardware mode check to avoid the flooding
of logs.

Change-Id: I1a84b5038eafde5aa08d2c19c923c61ee6558b45
CRs-Fixed: 3498843
2023-06-03 11:44:24 -07:00
Will Huang
f7c7264840 qcacld-3.0: Adding 4 SAP PCL table to support SBS mode
Previously 4 SAP PCL table only check 3 SAP in DBS mode,
it is not applicable if SBS mode available, for example if SAP1/SAP2
on channel 5805 and SAP3 on channel 5220 in SBS mode, if SAP4 start
on channel 2.4 GHz, it will be rejected.

Move policy_mgr_get_index_for_3_given_freq_dbs() and
policy_mgr_get_index_for_3_given_freq_sbs() out of macro
WLAN_FEATURE_11BE_MLO, so it can be reused by 4 SAP case.
Use above APIs to get common four connection PCL table index
and remove exist four SAP connection PCL index.

Change-Id: I7a8a3e6736feaae139e2c81050f00b2078df371e
CRs-Fixed: 3500354
2023-05-30 23:55:45 -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
Will Huang
a50ef92320 qcacld-3.0: Update AP+AP SCC on 5 GHz PCL table
Currently if AP+AP SCC on 5 GHz, next AP prefer on 2.4 GHz,
If SBS mode support, next AP can prefer also on SBS channels
and other MCC/SCC channels.

Change-Id: I3e44fd381527cae24aeff14f9158621f14a278b3
CRs-Fixed: 3499268
2023-05-26 23:38:53 -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
Pragaspathi Thilagaraj
7e4bd3a7df qcacld-3.0: Move SAP to user configured freq upon STA disconnect
When SAP is on 5 GHz or 6 GHz channel other than the user
configured frequency due to concurrency and concurrent STA has
disconnected, then SAP doesn't move back to the user configured
frequency when MCC to SCC Switch mode is 4
(QDF_MCC_TO_SCC_SWITCH_WITH_FAVORITE_CHANNEL). SAP has to move
to the user configured frequency irrespective of the current
operating band.

Move the SAP to user configured frequency when SAP is standalone
after STA disconnection.

Change-Id: I3fb78cbd949c0e2ec7c393208569956dbcdd067a
CRs-Fixed: 3509288
2023-05-26 08:15:27 -07:00
Srinivas Dasari
c35183ec87 qcacld-3.0: Consider only active links to handle eMLSR concurrency
Currently, eMLSR concurrency API considers both the links to
decide whether to allow or disallow the command while
force-enabling links. But one link might have got disabled to
handle some concurrency and might not be present in the
policy mgr table. Driver has to consider the links that are
present in policy mgr to allow/disallow link-enable command
when an eMLSR connection is present along with other concurrency.

Also, user might try to force-enable the disabled link. Allow
that only if eMLSR concurrency is not present.

Change-Id: I0a68059b7d16629016b3c40dbc0345523d46ef21
CRs-Fixed: 3500106
2023-05-25 06:16:22 -07:00
Gururaj Pandurangi
01fcda20bf qcacld-3.0: Change WMI force mode for ML link switch case
Currently, to switch links from link A to link B, Host sends
two back-to-back WMI commands to FW, by setting link B force
active and link A force inactive respectively with force
mode MLO_LINK_FORCE_MODE_ACTIVE/MLO_LINK_FORCE_MODE_INACTIVE
but if association is in EMLSR mode, FW considers the first
WMI to set link B active (when link A is already set active)
to be a trigger to enter EMLSR mode and sends OMN frame as
part of it. To avoid this, Host has to send a single WMI
with force mode MLO_LINK_FORCE_MODE_ACTIVE_INACTIVE and
include both active and inactive vdev bitmaps within the
same command to clearly indicate the link switch.

Change-Id: Iae58fedc800c891625d737daf238fa476382f4a1
CRs-Fixed: 3487826
2023-05-23 21:56:41 -07:00
Liangwei Dong
7d07fb252b qcacld-3.0: Fix no force SCC on SAP with 3 connection
Current hw mode is SBS low share. STA 5180, SAP 1 2412,
SAP 2 5745, but SAP 1 is 2 GHz only, can't move to STA 5180,
SAP 2 is SBS with STA, policy_mgr_are_2_freq_on_same_mac
return false for 5745 and 5180 and finally function
policy_mgr_is_restart_sap_required return false, no force
SCC on SAP 2.
Add mcc connection count check for SAP2, if SAP 2 channel
is different from all of existing 2 or more connections, then
try to force SCC on SAP 2.

Change-Id: I7029fd3ec0b8e0ae4543edd9667daa1f87802a7a
CRs-Fixed: 3497431
2023-05-22 22:36:19 -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
Gururaj Pandurangi
0670335810 qcacld-3.0: Invoke API to update EMLSR HW mode support
The policy manager API to update hardware mode list is
invoked before the host can extract EMLSR capabilities
from the target via service ready extended event. Thus,
invoke the policy manager API again through SBS
frequency update API to set the EMLSR capabilities in
the host.

Change-Id: I4d71b983ddb4b09e2010d24f0af0c26e2077cbd7
CRs-Fixed: 3417254
2023-05-19 07:27:15 -07:00
Liangwei Dong
19e0551f91 qcacld-3.0: Fix 4th SAP force SCC issue
SAP 1 is started on 5 GHz 5180, SAP 2 is started on 5 GHz 5745.
ML STA 2 GHz 2437 + 6 GHz 6275 is up. SAP 1 is moved to 2 GHz 2437,
SAP 2 is not moved to 2 GHz 2437 because the SAP2 PCL is PM_SCC_ON_5_CH_5G
which have no 2.4 GHz scc channel. STA+SAP+SAP SCC is allowed
in same mac, but MCC is not supported.
Fix by:
1. Change PCL to include SCC channel in 4th pcl table for SAP/GO.
2. Add API policy_mgr_modify_sap_go_4th_conc_disallow to filter
out the channels which not supported in same mac based on
current concurrency combinations.

Change-Id: Ieb482076d961234d3987b2daebab4c407ee0b7f5
CRs-Fixed: 3479297
2023-05-18 23:27:55 -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
Will Huang
3a5fbe1891 qcacld-3.0: Set correct center frequency for bandwidth 160 MHz
Currently center frequency pass to API to check unsafe channel is
not correct set for bandwidth greater than 80 MHz. It lead to
unexpected shrink bandwidth.

For channel bandwidth greater than 80 MHz, center frequency should
set to mhz_freq_seg1 instead of mhz_freq_seg0.

Change-Id: I278590cd128b4760e35f4ea5921a6ed687dc1308
CRs-Fixed: 3466845
2023-05-18 18:41:44 -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
Srinivas Dasari
9769f70f13 qcacld-3.0: Don't enable eMLSR STA link when concurrent AP is UP
Currently, host driver disables eMLSR STA link when a SAP is
coming UP. Once the SAP is UP, host driver evaluates the current
concurrencies and re-enables the link if it can. This allows the
driver to bring UP disabled link(if any) as the SAP would do SCC
with one of the ML-STA links. But this is not applicable for
eMLSR STA. No other concurrency can co-exist with eMLSR STA
currently. So, one link has to be force-disabled always to let
the firmware not enter into eMLSR mode.
So, don't allow the validation of current concurrencies in
policy_mgr_handle_sap_cli_go_ml_sta_up_csa() eMLSR API
policy_mgr_handle_emlsr_sta_concurrency() takes care of
eMLSR concurrencies.

Change-Id: I78a15447a8ea5a3a98146d9c9b577095bb8496de
CRs-Fixed: 3492030
2023-05-16 09:15:44 -07:00
Liangwei Dong
c2b9737b8f qcacld-3.0: Avoid STA CSA to disallowed channel
STA is on 5 GHz 5260, SAP on 6 GHz 6415, GO on 5 GHz 5745.
STA receives CSA event to move to 5540. Then 3 vdevs are
MCC in 5 GHz high band which is not supported by target.
And we should avoid SAP+GO on same band MCC.
Fix by:
1. Check allow concurrency for STA CSA for more than 2 connection
case.
2. change SAP PCL to only includes SCC 5 GHz channel and 2.4
GHz channel to avoid SAP choosing 5 GHz MCC channel if STA+GO is in
SBS mode.

Change-Id: Iadf8cfd215393baf4823c0e7cb6aa3656d8004dd
CRs-Fixed: 3482252
2023-05-15 15:11:34 -07:00
Will Huang
1635db1213 qcacld-3.0: Add back four SAP concurrency pcl rules
The four SAP concurrency pcl table is deleted by change:
I494e7a8d6ecc0a550027ff7f64de5deb11b987a9, it is still needed
for MDM platform, otherwise the 4th SAP will be rejected by
policy manager.

Add back original four SAP concurrency pcl rules.

Change-Id: Ib80c58f114f494a2c66fc15286b1a434d577dd26
CRs-Fixed: 3490580
2023-05-15 10:05:57 -07:00
Gururaj Pandurangi
df73ec02e0 qcacld-3.0: Drop EMLSR entry request if concurrency exists
Drop any vendor command request to enter EMLSR mode if there
are any concurrent connections existing with MLSR STA as
this combination is not supported.

Change-Id: I3b1f2bbe714c83628a8394068f7483d3913ce421
CRs-Fixed: 3478257
2023-05-11 15:36:35 -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
Liangwei Dong
2d1de39605 qcacld-3.0: Enable 4th connection table for MDM
When MLO STA is supported in MDM, driver needs to
use the new PCL table for 4th connection.
Move the existing PCL table under macro MDM_PLATFORM
to support this.

Change-Id: I494e7a8d6ecc0a550027ff7f64de5deb11b987a9
CRs-Fixed: 3467738
2023-04-19 10:36:26 -07:00
Vinod Kumar Pirla
9a9e93f8d2 qcacld-3.0: Restrict no of conc ML SAP instances to one
Allow a maximum of one ML SAP instance at a time and restrict any
other ML SAP start. The existing code allows secondary ML SAP to
come up if no other concurrent connections are present.

Add the condition to check only SAP mode in the policy manager list
so that other opmodes are not considered.
Allow new ML SAP instance only if no other ML SAP instance exists.

Change-Id: I3ea08b2c8de92f84e288e078a19cac0da261e69e
CRs-Fixed: 3460774
2023-04-19 00:01:19 -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
Prasanna JS
1a47922e9e qcacld-3.0: avoid filtring of DFS channel
avoid filtering of DFS channel when sta_sap_scc_on_dfs_chan enabled

Change-Id: I7ed7704aff5973835eb69a3ea1487b9dbd652d6b
CRs-Fixed: 3459177
2023-04-08 07:08:29 -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