Commit Graph

370 Commits

Author SHA1 Message Date
Pragaspathi Thilagaraj
100c310363 qcacld-3.0: Set PS config per vdev
Currently the PS config received from kernel/userspace is set
to mac_ctx globally. This causes PS config set for one vdev to
override on the other vdev.

To avoid this, set the PS config per vdev.

Change-Id: I6a2e2a9d8fb67b94d9d5f1d4164077990bdaf4a5
CRs-Fixed: 3007060
2021-09-01 14:02:27 -07:00
Utkarsh Bhatnagar
d790174870 qcacld-3.0: Move get qos related API to LIM from CSR
Move get qos related API to LIM from CSR.

Change-Id: I44f32ea6588bebd2205bccf62d2267958884f260
CRs-Fixed: 3017623
2021-08-19 17:34:11 -07:00
Paul Zhang
fc8ccbf23a qcacld-3.0: Add ini wlm_latency_reset_on_disconnect
Currently, the WLM mode could be recovered after disconnection
or interface down/up about random MAC feature. Since some OEMs
have different mechanisms to config WLM mode on their framework
implementation and don't expect recovering the WLM mode.

So add logic to set default WLM mode when disconnection happens.
And add ini wlm_latency_reset_on_disconnect to differentiate
the implementation in driver. By default
wlm_latency_reset_on_disconnect is false.

Change-Id: Idcb3baf6ab8f0533eb01c28ff1c12513f9995946
CRs-Fixed: 3006875
2021-08-19 11:30:24 -07:00
Bapiraju Alla
6874af8035 qcacld-3.0: Fix ac fallback issue when TSPEC id deleted
When TSPEC session is deleted, the access category of the data packets
should be downgraded to next lower AC. But this is not happening due to
acm mask is not getting updated when bss descriptor is NULL.

To fix this ssue, update acm mask from bss descriptor only when beacon
IEs are not present.
Also move qos related logic to LIM and bring missig changes which were
there before connection manager.

Change-Id: I9da80cf492b01762b4cc0a7b73271a0f5fe4b4a4
CRs-Fixed: 3011069
2021-08-18 12:07:53 -07:00
Balaji Pothunoori
1cd76edad4 Revert "qcacld-3.0: addba request reject for peer ap"
Peer addba request is rejected when reject_addba_req is set from
ini or vendor command.
Current reject_addba_req ini is replacing with gRxAggregationSize
when it is set 1 from ini.
Hence this reverts commit I80a4b78c1af77f5bfa68be3163f9e9a78cc64245.

Change-Id: I1cc57b88311da4dd8f26eade17072aaa1f0ebb59
CRs-Fixed: 3002204
2021-08-17 15:46:23 -07:00
Surya Prakash Sivaraj
bad0b3e491 qcacld-3.0: Add an INI to configure SAE auth failure timeout
Currently, the SAE authentication request retry happens
after a fixed timeout of 1 second in a STA DUT.

To make this timeout user configurable, add an INI to
configure SAE auth failure timeout.

Change-Id: I3a3944ab14564a944e0c83cc31a92847b5e8c5e0
CRs-Fixed: 3011892
2021-08-16 15:52:25 -07:00
Ashish Kumar Dhanotiya
0f6fd1f8db qcacld-3.0: Add aliasing for gNeighborLookupThreshold ini
Based on new requirement, add aliasing for gNeighborLookupThreshold
ini and update the range of this ini as well.

Change-Id: I0a62e209d6a62001d6aec48849c4900062ae5bc7
CRs-Fixed: 3011060
2021-08-12 00:55:37 -07:00
Amruta Kulkarni
c71017d971 qcacld-3.0: Roam sync event migration
Wma to target_if migration for ROAM SYNC EVENT

Change-Id: Id2e9d5697f12f709cfdd665dabf1095863d87277
CRs-Fixed: 2990767
2021-08-07 02:58:54 -07:00
Kiran Kumar Lokere
f4ed112b3c qcacld-3.0: Add support to configure bss max idle period
Add support to configure the bss max idle period for STA.

Change-Id: Ifc56f6513a2b643ab574937c5216b53bdea1d2c5
CRs-Fixed: 2829159
2021-08-05 15:13:22 -07:00
abhinav kumar
a0e112969b qcacld-3.0: Restore dual sta config after SSR
Save dual sta configuration in hdd context and
restore it after SSR. This allows driver STA + STA
connection in MCC/SCC.

Change-Id: Ia8bb8c845f0f76e7ce41ff32ab0a3bc6d5111018
CRs-Fixed: 2998225
2021-08-04 21:13:15 -07:00
Srinivas Dasari
78cb3008e6 qcacld-3.0: wma to target_if migration of wmi_roam_event
Currently, wmi_roam_event_id data is extracted and processing is
also done in wma. This is not inline with component model where
target_if takes care of data extraction and handover the extracted
data to corresponding component(connection mgr in this case).
Add changes to support the same. As the legacy CSR/LIM is not
yet converged, have a wrapper from connection mgr to wma to call
these legacy APIs.

Change-Id: I0e22bbccfe21200b90771a01f9ee7454f4ecb119
CRs-Fixed: 2990355
2021-07-30 14:29:36 -07:00
Utkarsh Bhatnagar
91d6eaf0fd qcacld-3.0: Use wlan_cm_is_vdev_roaming() API in wma
Use wlan_cm_is_vdev_roaming() API in wma, instead of
wma->interfaces[vdev_id].roaming_in_progress.

Change-Id: Icb88246b2c45c052a1d42dece4983b1e534fe608
CRs-Fixed: 2993180
2021-07-23 18:01:40 -07:00
bings
5b8e66816a qcacld-3.0: register mlme mlo ext call back
register mlme mlo ext call back.
unregister mlme mlo ext call back.

Change-Id: Ifbfd474fcd01d091c65d6dbde08c9877d05e3cd5
CRs-Fixed: 2976146
2021-07-21 17:14:43 -07:00
Arun Kumar Khandavalli
a019216f89 qcacld-3.0: Remove mac address field from the csr session
csr has a mac address field which is redundant, the same can be
retrieved from the vdev object.

Hence remove the mac address field from the csr and update the same
from the vdev object.

Change-Id: I948cf858ddb26795e236aa4099186e5d10f504a6
CRs-Fixed: 2990480
2021-07-20 08:28:18 -07:00
Deeksha Gupta
ed12a74d8c qcacld-3.0: Add support for FT over DS
Add support to enable the "FT over DS" via
QCA_WLAN_VENDOR_ATTR_CONFIG_FT_OVER_DS vendor config
command.

This configuration helps the firmware to support
“FT over DS” instead of “FT over Air”

Change-Id: I493bf15f83bc39135aaeefa9d8ef328f0fc0cda3
CRs-Fixed: 2968680
2021-07-15 04:13:04 -07:00
Amruta Kulkarni
0c30cb8f04 qcacld-3.0: Roam sync frame event Wma cleanup
Wma to target_if migration for ROAM SYNC FRAME EVENT

Change-Id: I2a56dadf7f45a13a577bdf49bc9514ab2e6dee29
CRs-Fixed: 2968404
2021-07-12 19:12:01 -07:00
Abhishek Singh
bac97712b7 qcacld-3.0: Cleanup crypto params from roam profile struct
Cleanup crypto params from roam profile struct.

Change-Id: Ib3acb7f2ee669ba05da7011a56a54487d5100033
CRs-Fixed: 2988892
2021-07-12 12:09:40 -07:00
Abhishek Singh
15222dc106 qcacld-3.0: Cleanup pCurRoamProfile from csr session
Cleanup pCurRoamProfile and related code from csr session

Change-Id: I58cd74ed82f6bbccbdea3218c83c18dab2a8afb4
CRs-Fixed: 2987926
2021-07-10 02:58:24 -07:00
Utkarsh Bhatnagar
8a5ed473ea qcacld-3.0: Change EDCA ini from CFG_STRING to CFG_INI_STRING
Change ini type of all ini related to  edca_ani, edca_wme,
edca_etsi. Also, use cfg_get instead of cfg_default for
fetching these.

Change-Id: Iba252f81d236c5b217e1d86c6511bbc52c2900b7
CRs-Fixed: 2952537
2021-07-06 15:20:30 -07:00
Srinivas Dasari
c65ead975b qcacld-3.0: Let IOT APs recover by avoiding back to back DELBA
Station sends the BA and upgrades to the next possible BA window
size upon receiving all frames successfully from the current
window. Some IOT APs go out of sync from BA window size of the
station when AP fails to receive the BA sent from station. AP
transmits the frames again with previous window sequence number
and won't be ack'ed by station hardware as BA window has already
moved ahead. So, station deletes the upgraded BA and tries
to fallback.

Ideally, AP is supposed to consider the fact that "the previous
window transmission was successful when station upgrades to next
window size". But some APs take little longer time to
recover/upgrade to next window size. Don't delete the BA
immediately and have some tolerance(3 seconds) as the previous
negotiated BA just got deleted.

Change-Id: I6b277223f02dac521316cec20bd5d958785cc2e9
CRs-Fixed: 2970714
2021-07-06 02:15:48 -07:00
Jia Ding
b98114c954 qcacld-3.0: Enable to parse user configured edca params
Currently only default values of local edca params are used for
WME and ETSI profiles. Therefore expose them as INI config options
so that driver is able to parse user configured edca params used
locally by SAP.

Change-Id: I81759570160a67e26f68501576d71a5fd3568cd7
CRs-Fixed: 2976143
2021-07-01 11:23:12 -07:00
Abhishek Singh
a2c4145a3c qcacld-3.0: Cleanup unused params from csr structs
Cleanup unused params from csr structures.

Change-Id: I8384ad5e8c6a9d7f33ffe9bc1ed5508776f39607
CRs-Fixed: 2980067
2021-06-29 19:14:49 -07:00
Ashish Kumar Dhanotiya
89c41b9256 qcacld-3.0: Enable utf for connection manager
Add a logic to enable utf for connection manager.

Change-Id: Id8ac70c6437bb9d77cc374abbbeea17dab6f9e3a
CRs-Fixed: 2975701
2021-06-29 19:14:36 -07:00
Abhishek Singh
5ca9e12a4e qcacld-3.0: Code cleanup for connection manager MLME/SME
Remove unused code related to ndef FEATURE_CM_ENABLE in MLME/SME.

Change-Id: I022823296d2e186450a1a1082a975eccf0b7c122
CRs-Fixed: 2977907
2021-06-28 14:41:24 -07:00
Balaji Pothunoori
d56c5ea434 qcacld-3.0: revert Disable TX_AGGREGATION_SIZE ini for HSP
This reverts commit I9e49ad5218f913f116cf4472f768f572740f14df
since ini based tx aggregation is configured based on firmware
capability.

Change-Id: I54541cd282eda6606e75fa347989624a0e0fef01
CRs-Fixed: 2963280
2021-06-25 11:56:14 -07:00
Kiran Kumar Lokere
73061c8eff qcacld-3.0: Config support for STA bss color collision detection
Add INI configuration support to enable/disable BSS color collision
detection offload in STA mode.

Change-Id: I9d8f096813d74242566ccae5f92e872bcaca6295
CRs-Fixed: 2965133
2021-06-22 16:17:50 -07:00
Utkarsh Bhatnagar
d6a03bf7e0 qcacld-3.0: Refactor LFR3 code to use cm api
Refactor csr_roam_pmkid_req_callback to use
mlme_cm_osif_pmksa_candidate_notify and move other
unused API under CM flag.

Change-Id: I835d54804f733eddff48de38e4c545a87f34bb30
CRs-Fixed: 2965602
2021-06-10 10:21:35 -07:00
Kiran Kumar Lokere
5100c14d73 qcacld-3.0: Config support for WMM based TXOP feature
Add configuration support for WMM based TXOP feature.

Change-Id: Ide52b7d4b7bca590515e8697506d2b52744a7fa6
CRs-Fixed: 2947604
2021-06-08 03:16:03 -07:00
Utkarsh Bhatnagar
790223c7dd qcacld-3.0: Add pending changes for reassoc req
Add pending changes for reassoc req.

Change-Id: I805da0730be9f602fb04135f69c6f339ea8e2ac6
CRs-Fixed: 2958582
2021-06-02 04:51:56 -07:00
Huashan Qu
1557129851 qcacld-3.0: Add host roam preauth handling code for connection manager
Add host roam preauth handling code for connection manager.

Change-Id: Id97d716a6c47ba08b2e8ef5e3ed675c5dcf88ed8
CRs-Fixed: 2954515
2021-05-28 01:46:52 -07:00
Srinivas Girigowda
5a04deba8b qcacld-3.0: Add support for SAP TWT teardown
Add support for SAP TWT teardown.

Change-Id: I108ea425e69e07ee8a3657ca5afcb436420b2626
CRs-Fixed: 2944872
2021-05-26 21:09:02 -07:00
Ashish Kumar Dhanotiya
cc3c67977d qcacld-3.0: Add ini support to enable NAN on indoor channels
Currently there is no  support to enable NAN on indoor channels,
as per the new requirement add an ini support to enable NAN on
indoor channels.

Change-Id: Ia3acbc133cab4865d8ad69992e893be91439f50f
CRs-Fixed: 2943668
2021-05-26 09:20:42 -07:00
Utkarsh Bhatnagar
cd22a0f327 qcacld-3.0: Add Reassoc req handling code for connection manager
Add Reassoc req handling code for connection manager.

Change-Id: I2735642df3132738993e801acdb6c9dcba1ac80f
CRs-Fixed: 2939872
2021-05-06 13:49:44 -07:00
Lincoln Tran
3dc6bd54f5 qcacld-3.0: Add INI to not consider TPE IE
Sometimes, the AP sends low values in the TPE IE resulting in low TX
power. This causes DUT to have throughput/connection issues. Add an INI
to skip over TPE IE only in 2g/5g case. TPE IE will always be considered
in 6G band.

Change-Id: Ia0750195bb0aabf304743e1ad89c8f6d0c9ef1a3
CRs-fixed: 2936492
2021-05-04 13:03:36 -07:00
Utkarsh Bhatnagar
8ce3d59fb0 qcacld-3.0: Move LFR2 FT logic to vdev mlme
Move LFR2 FT logic to vdev mlme.

Change-Id: I77435ec78a6eeacf47b26aec214d08ad056ebabe
CRs-Fixed: 2935076
2021-04-29 11:36:25 -07:00
abhinav kumar
9ca87d9490 qcacld-3.0: Address corner scenarios for dual sta roaming
Address below corner scenarios for dual sta roaming:

1. Initialize primary interface vdev id
with WLAN_UMAC_VDEV_ID_MAX.

2. Enable roaming while processing set primary interface
vendor command irrespective of dual sta roam policy.

3. Disable mcc_adaptive_scheduler before sending
WMI_RESMGR_ADAPTIVE_OCS_ENABLE_DISABLE_CMDID to FW and
enable it if host receives dual sta policy as unbiased.

Change-Id: I8e5254c6f9053bd5fe7f925af4b577e76c9b9a2e
CRs-Fixed: 2928870
2021-04-26 10:01:30 -07:00
Arun Kumar Khandavalli
40e2d02202 qcacld-3.0: update mlme caps for the EHT
update the mlme data structures with eht capabilities.

Change-Id: I3d6b450d673d07560086383a6e32f5602d59ae41
CRs-Fixed: 2911882
2021-04-19 00:52:39 -07:00
Bapiraju Alla
8b9c2b1322 qcacld-3.0: Add support for 11be parameters configuration
As part of 11be enhancements in the driver, new configuration
parameters will be added. Define new APIs to support EHT
configuration parameters in the host driver.

Change-Id: Ic1890943a2f941e864d0df102e4954aac75d9f11
CRs-Fixed: 2908030
2021-04-15 22:52:08 -07:00
Aditya Kodukula
d915a3dd26 qcacld-3.0: Restore the ini parameter etsi13_srd_chan_in_master_mode
The commit Ic695e36e9b4fc9952cc405d1345b4a6a7d543dad, removed the
ini parameter etsi13_srd_chan_in_master_mode assuming that the
ini is obsolete and no longer being used. But, the ini is still
being used by the OEMs. So, revert the previous changes.

Change-Id: I6b2ba8b8e41ab96981b92e5ff4b2f610f92d7e43
CRs-Fixed: 2923688
2021-04-15 17:45:52 -07:00
Srinivas Girigowda
1bc852f685 qcacld-3.0: Reject TWT setup if there exists another TWT session
Add support to reject the TWT setup request if there exists
another TWT session with different dialog id.

Change-Id: I59c0ba4279581bad14bec886d22c0ac65838ec17
CRs-Fixed: 2920494
2021-04-13 03:39:42 -07:00
Srinivas Girigowda
8703e09f92 qcacld-3.0: Enhance mlme_twt_is_command_in_progress() to return active_cmd
Currently, mlme_twt_is_command_in_progress() function checks if the given
command is in progress or not. For inputs like WLAN_TWT_ANY, if this function
returns true then from the current logs, its not known which
active command in progress.

Hence for better debugging, enhance this function to return active command.

Change-Id: Ibc5c5babb042408b0e8988fe229d344ed98bfff3
CRs-Fixed: 2920494
2021-04-13 03:39:37 -07:00
Yu Wang
fdc00052a7 qcacld-3.0: set msdu/mpdu aggr size for each vdev start
The global aggregation size is only set to firmware once
when vdev is created. And the size may be modified
dynamically for a specified AP during association, according
to the OUI based aggregation size configured by ini
'cfg_tx_iot_aggr'.

If global AMSDU size is 0, considering the case as below:
1. connect to AP-1 which is included in 'cfg_tx_iot_aggr',
   the AMSDU size will be set to the specifed value.
2. connect to AP-2 which is NOT in 'cfg_tx_iot_aggr',
   it doesn't reset the AMSDU size to 0, and firmware is
   still using the value set in step #1, it's wrong.

To fix this issue, set the global size for each vdev start,
as init values for each connection.

Change-Id: I790d580fc5762e6816e840ba5484b3cd758334df
CRs-Fixed: 2918046
2021-04-13 03:39:19 -07:00
Jianmin Zhu
ac8d6a6ba2 qcacld-3.0: Disable TX_AGGREGATION_SIZE ini for HSP
HSP doesn't support TX_AGGREGATION_SIZE ini, need disable it to avoid
confusing.

Change-Id: I9e49ad5218f913f116cf4472f768f572740f14df
CRs-Fixed: 2918796
2021-04-10 22:52:22 -07:00
Srinivas Girigowda
6879ad5d67 qcacld-3.0: Add support for TWT re-negotiation failure
1. If the TWT setup parameter re-negotiation results in failure,
   then host driver shall trigger TWT teardown for the
   existing TWT session.
2. Upon receiving the TWT teardown confirmation from the firmware,
   host driver shall cleanup TWT session, send teardown notification
   to the user space and ready for next TWT setup command.

Change-Id: I553ae7de8d900a3dc12d563b781f9fefa36f8a0b
CRs-Fixed: 2916548
2021-04-09 02:47:12 -07:00
Pragaspathi Thilagaraj
1d6fac590c qcacld-3.0: Clear TWT context on receiving roam synch indication
The userspace doesn't expect TWT teardown or notify events after
roaming. So to clear the driver internal TWT context, for old
peer, call the mlme_init_twt_context() on roam synch complete.

Change-Id: If1e4fe2d79561885052caf8d5231d1c943f10c96
CRs-Fixed: 2912872
2021-04-07 19:28:59 -07:00
Kiran Kumar Lokere
c702414dd6 qcacld-3.0: Add support for RF test mode and safe mode config
Add RF test mode and safe mode configuration support for 6GHz.

Change-Id: Icb6382f425b21e89a8cb2481c8f7bf480c4f6c19
CRs-Fixed: 2904749
2021-04-02 15:03:09 -07:00
Aditya Kodukula
d4cad42cac qcacld-3.0: Remove INI parameter etsi13_srd_chan_in_master_mode
As part of WiFi ini clean-up FR, the ini parameter
etsi13_srd_chan_in_master_mode, is identified as an obsolete. Hence,
it can be deprecated and use its default value for the config
CFG_ETSI_SRD_CHAN_IN_MASTER_MODE.

Change-Id: Ic695e36e9b4fc9952cc405d1345b4a6a7d543dad
CRs-Fixed: 2896031
2021-03-31 06:04:48 -07:00
Aditya Kodukula
38bc15e6c7 qcacld-3.0: Remove INI parameter ImplicitQosIsEnabled
As part of WiFi ini clean-up FR, the ini parameter ImplicitQosIsEnabled,
is identified as an obselete parameter and hence it can be deprecated.

Change-Id: Id2ea893ec714150d6144aead2dc3c2b5967d805b
CRs-Fixed: 2896059
2021-03-29 17:47:13 -07:00
Aditya Kodukula
7beff561cc qcacld-3.0: Remove INI parameter gDataInactivityTimeout
As part of WiFi ini clean-up FR, the ini parameter
gDataInactivityTimeout, is identified as it is no longer used
and hence it can be deprecated.

Change-Id: Ic01ba8934058cf2fb3bec042f11b01ea70ef7a3f
CRs-Fixed: 2896042
2021-03-28 23:36:47 -07:00
Pragaspathi Thilagaraj
fb88149381 qcacld-3.0: Add new ini to disable TWT in 2.4Ghz connection
Add new ini "enable_twt_24ghz" to enable/disable host triggered
TWT in 2.4Ghz connection. Check this ini value in TWT get
capability. The userspace will query the self capability before
triggering the host TWT.

Change-Id: I3544de89f438fc526f8a2554c6aeebcd25d6c415
CRs-Fixed: 2904775
2021-03-24 02:12:10 -07:00