Commit Graph

2396 Commits

Author SHA1 Message Date
sheenam monga
e1c5d1fa7f qcacld-3.0: Dump four port concurrency
Add support to dump concurrency for four
vdevs with mode, vdev id , hw mode and
mac details on which vdevs are in MCC/SCC.

Change-Id: If4c1622770b0e787f5f3de54a3ca92b35a0e1873
CRs-Fixed: 3218170
2022-06-11 03:30:49 -07:00
Liangwei Dong
8bcb061a89 qcacld-3.0: Fix 3 home channel issue for PCL PM_SBS_CH_2G
New PCL PCL PM_SBS_CH_2G,PM_SCC_ON_5G_LOW_5G_LOW,
PM_SCC_ON_5G_HIGH_5G_HIGH do not allow 3 home channel
scenario. Remove it from API
policy_mgr_is_3rd_conn_on_same_band_allowed.
Add PCL string print support for new type:
PM_SCC_ON_5G_LOW_5G_LOW, PM_SCC_ON_5G_HIGH_5G_HIGH.

Change-Id: Ie6dbb042f5ecb04cb999a7949ced8e7c7ab4ad5a
CRs-Fixed: 3215568
2022-06-11 03:30:39 -07:00
Paul Zhang
c51cf56c15 qcacld-3.0: Get chain rssi stats per request vdev_id
Currently, the driver gets the last vdev's chain rssi stats
if fw reports more than one vdev's chain rssi stats, it causes
the last one stats overwrites the former one and the last stats
may not be expected for the request vdev.

To resolve this issue, compare the vdev id before getting the
stats.

Change-Id: Ib789d148a010460108ed73b92ef603cf78c1493a
CRs-Fixed: 3212917
2022-06-10 21:50:26 -07:00
Jyoti Kumari
72c3404391 qcacld-3.0: Handle TWT renegotiation failure case
Generally below process should happen in renegotiation failure
case.
1. TWT setup (successful)
2. TWT setup (renegotiation failure)
3. TWT teardown
4. TWT GET STATUS - 0(dialog ID) 0 0 0
5. TWT setup - successful

Since all WMI TWT events gets executed in WMI thread. So when
renegotiation failure case hits, driver sends TWT
teardown to firmware and waits for twt ack in worker thread.
In same worker thread TWT event needs to be processed.
TWT ack event will not process as it's waiting in same worker
thread and it will get timedout.

As part of fix, break the context in renegotiation and
send the teardown in the new worker context.

Change-Id: I13c8d44d6582e39d1cc2c2aa10a500fffbf150b1
CRs-Fixed: 3204750
2022-06-10 18:58:11 -07:00
Gururaj Pandurangi
6e816ae090 qcacld-3.0: Add eMLSR HW mode support for ML STA
Add eMLSR HW mode support for ML STA. eMLSR mode
(Enhanced Multi-link Single-Radio) is a new HW mode within 802.11be
op mode. This change consists of the following
1) Handle the new eMLSR HW mode. FW sends this capability to host via
extended service ready event.
2) If FW supports this mode, then update the eMLSR capability sub-fields
in the Basic-variant MLO IE under the assoc request frame.
3) Provide peer info like eMLSR capability, transition timeout, and link
IDs to FW through WMI_PEER_ASSOC_CMDID.

Change-Id: Idc00f5f780b5617e513f307952b58277669dee85
CRs-Fixed: 3184708
2022-06-10 13:19:00 -07:00
Sheenam Monga
70c62c1728 qcacld-3.0: Restore deleted connection with total con count <= max count
Currently, deleted connections are not restored if current connection count
is geater than or equal to max no of allowed connection - no of deleted
connection which may cause issue when there are 4 connections and 2 ML sta
link got deleted temporarily for getting pcl list. As max no of connection
allowed are 4, deleted sta links should be restored. In check to restore
the deleted link comparison is done with < max no connection, so deleted
connections are not restored.

Fix is to add a check that current connection count + deleted connection
count should be less than or equal to MAX_NUMBER_OF_CONC_CONNECTIONS.

Change-Id: Ia21235ffb4d5ecc3500001f215bab5a3c48de90a
CRs-Fixed: 3216952
2022-06-10 13:18:55 -07:00
Yu Ouyang
6b2b1cfb27 Revert "qcacld-3.0: Add the Full Power Down feature support"
This reverts commit I293647175c151da0fd6628345f98ea65c83b1bb3.

New solution idle shutdown in suspend prepare is better.

Change-Id: I69a0e7401c811e4a9656fcc8e3dd069f4317cc35
CRs-Fixed: 3213236
2022-06-09 19:37:09 -07:00
Yu Ouyang
3fbdeb8f84 Revert "qcacld-3.0: Idle shutdown in suspend"
This reverts commit I08818517d05e7866d50e3f92cfdc9fa1a4d0e63f.

New solution idle shutdown in suspend prepare is better.

Change-Id: I76b1ef8e6f945bbcba3955ff625484ebee727670
CRs-Fixed: 3213236
2022-06-09 19:37:03 -07:00
Arun Kumar Khandavalli
5e29697d88 qcacld-3.0: Add EHT bitrate support
Add EHT MCS to rate mapping for NSS 1 and NSS 2.

Update TX/RX bitrate for EHT connection depending on current MCS/NSS
configuration.

Change-Id: I0c55beab2c6b9a9609d5a2e454a0c0e8c1312d09
CRs-Fixed: 3181127
2022-06-09 11:42:24 -07:00
Amit Mehta
b389b5b1bd qcacld-3.0: Add vdev lock to dp component
Add vdev lock to DP component to protect against
vdev parallel delete while accessing vdev from
DP interface, also introduce get and put APIs.

Change-Id: I4ee838e1dea0caf9936ced13d6ddce6646333f6b
CRs-Fixed: 3198876
2022-06-09 11:42:18 -07:00
Karthik Kantamneni
5b7f718dad qcacld-3.0: Fix DP component Rx packet drop in MLO case
Currently in MLO use case DP component interface is not
mapped to netdev registered to ip stack and also Rx packet
over nl interface is broken.

Fix these issues by attaching DP component interface
to netdevice which is registered to ip stack for TX/RX.
Fix Rx packet over nl interface by checking
corresponding ops properly.

Change-Id: Ibf9cb03565a9e2d5cd02091995259376e1069790
CRs-Fixed: 3200617
2022-06-09 08:23:40 -07:00
Jianmin Zhu
7ab6928044 qcacld-3.0: Limit mlo link num and band by cfg
Limit mlo link num and band by psoc sta cfg mlo_support_link_num and
mlo_support_link_band.
If mlo_support_link_num is 1, only permit 1 mlo link, don't permit
partner link.
Disable both assoc link and partner link on disallowed band too.

Change-Id: I04f0725ceb0fb4e0bd14ca44ff1a870702b62285
CRs-Fixed: 3211973
2022-06-08 15:16:18 -07:00
Bing Sun
46f01746b9 qcacld-3.0: Add max link number cfg and band bitmap cfg
Add cfg to configure the max number of links supported for mlo sta
connection.
Add cfg to configure the band bitmap that mlo sta connection supports.

Change-Id: I6b27a7eb13eff026c5123e4bd24ba2424dba781d
CRs-Fixed: 3202029
2022-06-08 11:47:21 -07:00
Divyajyothi Goparaju
bf5a756cb2 qcacld-3.0: Add separate debug print for RSSI,SNR
Currently target_if_cp_stats_extract_vdev_summary_stats
function prints bcn SNR which can be RSSI as well based on
whether firmware supports reporting rssi or not.

Add check for firware support to print RSSI/SNR

Change-Id: Ifef7bfad7d79c1a1bb84641bc1d3632f6d683252
CRs-Fixed: 3209907
2022-06-08 09:44:10 -07:00
VIJAY RAJ
26ad4c366c qcacld-3.0: Optimize logs in wlan_cm_is_roam_sync_in_progress
In api wlan_cm_is_roam_sync_in_progress(), the roam_sync
status is checked for every instance of
wlan_cm_is_roam_sync_in_progress resulting in excessive
printing of cm_is_vdev_roam_sync_inprogress logs

Add check to verify roam_sync status for STA mode which
results in trimming of cm_is_vdev_roam_sync_inprogress()
logs.

Change-Id: If0228edb90d718c7fde2b8f34e0003256cfd139b
CRs-Fixed: 3211915
2022-06-08 07:35:16 -07:00
Wu Gao
ef79dea58f qcacld-3.0: Allow SAP+SAP+STA SCC
This is about SAP+SAP+STA case. Restart third SAP failed after start
up and then 5/6 GHz disabled. This change allows SAP+SAP+STA SCC on
same mac and avoid third SAP restart fail.

Change-Id: I691b2e03132acfb8f724fc2f75b3816d17eb4d17
CRs-Fixed: 3198977
2022-06-08 03:12:04 -07:00
Wu Gao
a4864947dd qcacld-3.0: Move AP AP MCC allow check to policy mgr
This is requirement about moving AP AP MCC allow check to policy manager.

Change-Id: I2ac147e1a4ebdd42dfbcdcd6f8df98cc5c269cc9
CRs-Fixed: 3200011
2022-06-07 23:08:09 -07:00
Sheenam Monga
7b7faf56ce qcacld-3.0: Pass session id of ongoing decr session
Currently locally generated vdev_id is passed to update
concurrency like to re-enable disabled sta link on one
p2p/sap down or handle concurrency on one ml sta link
down. This locally generated vdev id will be invalid/255
in case mode is non-sta, so hanlding will be done for non-sta
link down only.

Fix is to change vdev_id to session_id, so that session which
is deceremented due to session down can be provided and concurrency
handling can be done based on that.

Change-Id: Iaca9a339abbab3f5dab01e2224c3acd87df5bc0a
CRs-Fixed: 3212661
2022-06-06 11:37:25 -07:00
Sheenam Monga
b79c7cfedf qcacld-3.0: Don't add duplicate frequencies in pcl list
Currently if SCC frequencies are added in pcl list and
rest 5GHz frequencies are required to be added with lesser
weightage then all 5GHz/6GHz frequencies are added including
SCC channels. so in pcl duplicate entries are found for SCC
frequencies with different weightage.

Fix is not to add SCC frequencies during addition of 5GHz/6GHz
frequencies if SCC frequencies are already present in pcl.

Change-Id: I03123e4bf8caee62b0fcd0c3ae78d6cd7187c7de
CRs-Fixed: 3209858
2022-06-06 08:05:36 -07:00
Yeshwanth Sriram Guntuka
47a80af63c qcacld-3.0: Control GRO en/dis based on TC filter prio
The dynamic GRO enable/disable based on ingress filters
should currently is restricted only to standalone STA.
This was done to address issue where ingress filters are
added on STA interface whenever SAP is up disabling GRO
unnecessarily.

Fix is to allow dynamic GRO to work on all interfaces
and concurrency scenarios based on the priority of
the ingress filter configured to avoid unnecessary
GRO disable in STA+SAP.

Change-Id: I1742f4539353939e3a40ff4096b3f833f2029b12
CRs-Fixed: 3206815
2022-06-06 01:59:09 -07:00
Srinivas Dasari
5d5678b02d qcacld-3.0: Check if the freqs are on different mac for STA+STA
Currently, when driver receives connect request on secondary STA,
it checks if the secondary STA channel and first STA channel are
on different band to allow. This works fine for DBS solutions but
SBS solutions support same band(5GHz) channels on different MACs.
So, check if the secondary STA channel is on different mac to
allow connection.

Change-Id: If9cfe0f4605e31ab54b38a85fb9d38e9ca65871d
CRs-Fixed: 3212686
2022-06-04 13:41:51 -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
Jyoti Kumari
e526ca28f2 qcacld-3.0: Handle TWT for 11n case
When SAP and STA both are in 11n mode then STA doesn't populate
twt_req bit during assoc req. Because of this TWT commands failed.

As part of fix, check the below variable before setting twt_req
1. TWT requestor support from firmware
2. Enable TWT ini
3. TWT ini support in 11n
4. TWT requestor support from host

Set twt_requestor bit only if all above variable are set.

Change-Id: I77f2397f986b517cd5292109927eece7fdb4c7c1
CRs-Fixed: 3210015
2022-06-01 10:34:07 -07:00
Sheenam Monga
2a36fa5997 qcacld-3.0: update vdev param id enum for traffic config
Currently host sets wmi_vdev_param_set_traffic_config param
id to set traffic config param but convert_host_vdev_param_tlv
is disabled for MCC. so, latency/throughput flag is set for host
param id 0x99 but in FW vdev param id to configure traffic type
is 0xB6.

Fix is to update vdev parm id to 0xB6 to keep same vdev param
id in both Host and FW.

Change-Id: If67d00308810920e9a621fdfff1b05bcccc2e047
CRs-Fixed: 3209724
2022-06-01 06:50:42 -07:00
Ashish
aa31fd94c1 qcacld-3.0: Add support for new config item ConDTIMSkipping_MaxTime
With this change add support for new ini ConDTIMSkipping_MaxTime
to set max modulated DTIM in ms.

Change-Id: I89ce2b5074ce75a1701365b5d09d8ed0244aeeef
CRs-Fixed: 3038346
2022-06-01 01:44:51 -07:00
Aditya Kodukula
d0abe1c529 qcacld-3.0: Add sanity check for MLO get STA stats
In the current driver implementation, check for ml_vdev_count
before invoking get_station_cb for MLO station stats is missing.

This causes timeout and failure to get station stats.

To resolve this issue, add sanity check for ml_vdev_count
before invoking get_station_cb for MLO station stats.

Change-Id: I2e8fca1b732b1e8638cec6536ea70d2174c287f7
CRs-Fixed: 3209608
2022-05-31 13:17:53 -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
Dundi Raviteja
d346f272c2 qcacld-3.0: Move pre cac cleanup code to pre cac component
Move pre cac cleanup code from HDD to pre cac component.

Change-Id: I2839d447420e980941bfa271305685224b147cd8
CRs-Fixed: 3199949
2022-05-29 22:52:03 -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
Surya Prakash Sivaraj
7da2ef6f88 qcacld-3.0: Do not allow SAP SCC on non-PSC/non-VLP channels
SAP is allowed to come up on SCC with a STA operating
in 6GHz only if the STA is on a PSC channel in VLP mode.

Therefore, filter out all 6GHz channels from the PCL if
the STA operates on any non-VLP mode. Also, in case of
VLP mode, filter out non-PSC channels.

Change-Id: I37d9a510db3647fc07858af99eb614ebe824cc78
CRs-Fixed: 3206471
2022-05-29 16:49:27 -07:00
Pragaspathi Thilagaraj
142cab9c7e qcacld-3.0: Check for allowed frequency during set pcl
Sta is not allowed to connect/roam in 6 GHz frequency or indoor
frequency in non-DBS target if SAP is active.
But STA roams to 6 GHz AP when SAP is active since the PCL allows
6 GHz frequency.

While populating PCL to firmware, check if 6 GHz and indoor
frequencies are allowed for non-dbs target and set the
weight appropriately if the channels are not allowed

Change-Id: I0e5fdc5b3c4177283d91cdfc58359336cc11910d
CRs-Fixed: 3205494
2022-05-29 06:03:57 -07:00
Pragaspathi Thilagaraj
ad399448bc qcacld-3.0: Move SAP to STA channel during SAP start
When STA is connected to non-dfs, non-indoor channel and
SAP starts second with mandatory channel list enabled,
then SAP is moving to 2.4Ghz. But SAP should follow sta
and move to non-indoor, non-dfs channel.

Also when STA is connected on DFS channel and when SAP
is coming up with g_enable_sta_sap_scc_on_dfs_chan,
then SAP also should move to DFS channel

So when PCL channels are filtered based on mandatory
channel list, then allow dfs/indoor channels based on
concurrent STA frequency.

Change-Id: I2bcb81a8b014108b07db36a31d03d0a16fe49eb9
CRs-Fixed: 3207750
2022-05-28 20:49:48 -07:00
Paul Zhang
adc7c05154 qcacld-3.0: Add sanity check when get STA stats
If macro WLAN_FEATURE_11BE_MLO is enable, get_station_stats_cb for
TYPE_STATION_STATS is called only if last_req->ml_vdev_info.ml_vdev_count
none zero when WMI_UPDATE_STATS_EVENTID event comes back.

This causes timeout and fail to get station stats for legacy device or for
MLO device which does not set last_req->ml_vdev_info.ml_vdev_count.

To resolve this issue, add sanity check legacy device before invoking the
callback and set last_req->ml_vdev_info.ml_vdev_count if it is MLO device.

Change-Id: I8ca325482fc32de87cbedcba7d4af17d3876cbbc
CRs-Fixed: 3202588
2022-05-27 18:06:14 -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
Sheenam Monga
1d217e83de qcacld-3.0: Enance Logs to check disabled entry
Add log to check which mode, vdev and freq is
added as disabled ml link and dump disabled
links after moving vdev from connection table
to disabled link table and decrement session
count only if provided vdev entry is present
in connection table.

Change-Id: I19cd9323b7b66b29366f2ac930798da8ef91a709
CRs-Fixed: 3205975
2022-05-27 03:36:20 -07:00
Srinivas Dasari
ed58b63609 qcacld-3.0: Fetch right vdev id to continue MLO link disconnect
When disconnected request started for an MLO connection,
link vdev gets disconnected first and then assoc vdev. So active
disconnect request is queued for link vdev first. As part of
RSO stop request-response handshake, the disconnect request is
cached and RSO stop request is sent to firmware. Disconnect is
supposed to resume for link vdev after getting the RSO stop
response . But currently, first MLO vdev gets checked if it
has active disconnect. This may fail to fetch the active
disconnect request if the first vdev in the list is assoc vdev
as it doesn't have active disconnect but link vdev has.
Check if it's a link vdev to resolve this and fetch active
disconnect req always.

Also, if there is only one link present(e.g. single link
connection or failed to connect the secondary link, etc.. ) in the
vdev_list, current release of vdev refs at the end of the API
wlan_cm_mlo_update_disconnecting_vdev_id() is not valid as it's
trying to release all links. Release only the links for which
reference is taken.

Change-Id: Idcb8a979dbdadafd4690e51a7301c4a7dfe82f73
CRs-Fixed: 3203969
2022-05-26 21:20:25 -07:00
Liangwei Dong
c2a3afb1d3 qcacld-3.0: Set vdev high throughput/low latency parameter
Add API ucfg_mlme_set_vdev_traffic_high_throughput &
ucfg_mlme_set_vdev_traffic_low_latency to configure the
high throughput and low latency to vdev. In MLO STA concurrency
cases, the host or target may disable a certain link
based on the flags.

Change-Id: Iaae7cfdeb55e0086572b071d83520278aa3425ea
CRs-Fixed: 3191501
2022-05-26 16:18:38 -07:00
Liangwei Dong
fd1c4024e5 qcacld-3.0: Move GO to 5 GHz for ACS 2.4 GHz preferred SAP
In SAP+GO concurrency, if GO is started on 2.4 GHz and SAP is
doing ACS with 2.4 GHz preferred channel list, then we will
move GO to 5 GHz band. The purpose is to have more choice
in SAP ACS instead of starting on GO home channel for SCC.
Add API hdd_handle_acs_2g_preferred_sap_conc for such
purpose.

Change-Id: I6f2b4bab526c7e1c9163b8437c40350d3bf10bab
CRs-Fixed: 3181419
2022-05-26 16:18:32 -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
Surabhi Vishnoi
d912895695 qcacld-3.0: Acquire wakelock during roaming if key installation is pending
Currently, wakelock is only taken during initial connection if
pairwise key installation is pending and not during roaming. This
may lead to EAPOL delay/timeout during roaming as runtime pm and
suspend is allowed during roaming. To fix this issue, acquire
wakelock if key installation is pending during roaming.

This change also refactors the code and release the wakelock in
wma_remove_peer if EAPOL fails during initial connection or roaming.

Change-Id: Id4cac30b3c383ca3d3e963571846f8a30eaa1006
CRs-Fixed: 3189799
2022-05-26 13:33:57 -07:00
Qun Zhang
04f01b2cea qcacld-3.0: Let country IE take band channel info as need
When verifying WNM BSS transition function, it's possible to
ask peer STA to transition across multiple band. Some vendor
BTM implementation is needed to check country IE to get all
supported band channel info. Without full channel list in
country IE, it cannot make a transition across multiple band.
To solve the interop issue, let country IE take all supported
band channel info when the specific vendor OUI is detected in
association request.

Change-Id: I78dd4b88937277b54a7da4d72d8a94706965e9a6
CRs-Fixed: 3196957
2022-05-25 09:27:54 -07:00
Pragaspathi Thilagaraj
e48e6ea80e qcacld-3.0: Check TX flag for all frames
Currently driver checks TX flag only for authentication
frames. This causes wrong tag for the frames.

Check TX flag for Deauth/Disassoc & authentication frames
also.

Change-Id: Id499bc1978ee72bac2435be165b31d0db49ce9d8
CRs-Fixed: 3203858
2022-05-25 04:55:32 -07:00
Sheenam Monga
cbf4fda0d5 qcacld-3.0: Add 5 GHZ low/high SCC channel before rest 5 GHZ low/high
Currently in case of SBS, if two connections are on one mac and
one connection is on another mac new connection can come up only
on 5 GHZ Low/5 GHZ high based on the mac that can support new connection.
But weightage of all 5 GHZ low/high channel is marked same instead of
prioritizing SCC channel.

Fix is to provide more weightage to 5 GHZ low/high SCC channel than
rest 5 GHZ low/high channels.

Also Optimize few logs.

Change-Id: I4153b209e6a74fe79081116baecaae78be5b632b
CRs-Fixed: 3204041
2022-05-24 22:30:35 -07:00
Liangwei Dong
5119ab95a9 qcacld-3.0: handle 3 vif case for SAP force SCC
Add API policy_mgr_check_force_scc_three_connection
to select force SCC channel for 3 vifs existing case in
policy_mgr_check_scc_sbs_channel.

Change-Id: Ie092c15164939306a8723038f6418ab722314f7c
CRs-Fixed: 3178588
2022-05-24 21:03:49 -07:00
Abhishek Singh
2b4bc8d5df qcacld-3.0: Add logic to disable a link during STA connect/roam
Add logic to disable a link vdev if concurrency doesn't allow it.
Send mlo_force_link_inactive in peer assoc for this and add
it in deleted table on connection complete.

Also disable the link if roam sync indication indicate
that link is disabled.

Change-Id: Ib0615308a669a5fd9d2b8ef6f8ab3f50953f658d
CRs-Fixed: 3192728
2022-05-24 00:57:24 -07:00
Abhishek Singh
12e3558871 qcacld-3.0: Call enable/disable link APIs from connect/disconnect/roam
Call enable/disable link APIs from connect/disconnect/roam etc.

Cleanup policy_mgr_handle_sap_mlo_sta_concurrency and
policy_mgr_handle_sap_plus_ml_sta_connect API as
policy_mgr_handle_sap_cli_go_ml_sta_up_csa and
policy_mgr_re_enable_ml_sta_on_p2p_sap_down will take care of
ML STA + SAP/P2P cases.

Also optimize policy_mgr_handle_ml_sta_link_concurrency to consider
only ML STA+STA cases and called from connect/disconnect/roam etc.

Change-Id: Ib8b9b2a490832ea5cbe1d86e58009e1437b331b9
CRs-Fixed: 3189685
2022-05-24 00:57:18 -07:00
Sheenam Monga
86d1d71e70 qcacld-3.0: Enable/disable ML link based on SAP/P2P vdev traffic type
Add logic to enable and disable number of STA ML link, on vdev UP
and DOWN, if any link is causing MCC with exiting
SAP/P2P and SAP/P2P with traffic type as low latency or high tput.

Change-Id: Id599acf5a07042328917b5e15f077d2decc0ad5f
CRs-Fixed: 3189304
2022-05-24 00:57:13 -07:00
Abhishek Singh
f9352d58ff qcacld-3.0: Add callback in set link enable/disable req
Add callback in set link enable/disable req to handle firmware
resp.

Change-Id: I8f9906b440a4a7630c979bb7c74519960be02e9d
CRs-Fixed: 3188726
2022-05-24 00:57:07 -07:00
Abhishek Singh
f0ccd97d61 qcacld-3.0: Add disable ml link infra in policy manager
Add disabled links table and APIs to move and remove
vdevs from disabled links table.

Change-Id: I610bbd10e387a4bcd3a5d5c88c3dba5698878441
CRs-Fixed: 3181474
2022-05-23 22:06:05 -07:00