Commit Graph

518 Commits

Author SHA1 Message Date
Kiran Kumar Lokere
902d27c0d4 qcacmn: Vendor attribute for 6GHz connection with all security types
Add a QCA vendor attribute to configure the driver to allow the
6GHz connection with all security types. This attribute is used for
testing  purposes.

Change-Id: Icbd493a9a28bef77d8a31f12082a37a1bacdfd35
CRs-Fixed: 2900829
2021-03-24 04:33:40 -07:00
Kiran Kumar Lokere
3b81ea6e27 qcacmn: QCA vendor attribute to ignore SAE H2E requirement mismatch
Add a QCA vendor attribute to ignore SAE H2E requirement mismatch
for 6GHz connection. This attribute is used for testing purposes.

Change-Id: I9d1a5680d3949da1a8009f4689d0c2859f15989f
CRs-Fixed: 2900813
2021-03-24 04:33:36 -07:00
Pragaspathi Thilagaraj
0cb0420cc7 qcacmn: Introduce reason code for TWT teardown due to concurrency
The firmware sends new reason codes to indicate TWT teardown due to
single channel and multi channel concurrency. Update the enum
qca_wlan_vendor_twt_status to represent new reason code.

Change-Id: I49b35ca9570a4faf73f6c93eb957c357576efd1e
CRs-Fixed: 2904365
2021-03-23 21:39:39 -07:00
Deeksha Gupta
4ea1f79ac8 qcacmn: Add new TWT attribute to configure wake mantissa in us
Add support for below TWT setup additional parameters:
Mantissa in Microsecond

Change-Id: I4d60393892477ac63e28a5df5274e04334bcfe42
CRs-Fixed: 2892933
2021-03-18 03:38:28 -07:00
Amruta Kulkarni
64b096fde9 qcacmn: Support roam start and roam abort request in CM
Add support for roam start and roam abort request
in connection manager.

CRs-Fixed: 2882233
Change-Id: I5780e7f22363ee6014d39b0df9cb068b4afdd71c
2021-03-05 10:10:04 -08:00
Ashish Kumar Dhanotiya
ad9b0c99d0 qcacmn: Replace wlan_cm_roam_resp struct with wlan_cm_connect_resp
Structure wlan_cm_roam_resp and wlan_cm_connect_resp are identical
structures and in current code these structures are used for connect
and reassoc functionalities with different functions as these are
identical structures and only one structure can be used to reduce
the duplication of the code.

To address this code duplication issue replace wlan_cm_roam_resp
structure with wlan_cm_connect_resp.

Change-Id: I90949c25f46acd2fa78cebb70c9a04f0718b90c4
CRs-Fixed: 2875232
2021-03-04 06:37:09 -08:00
Himanshu Batra
d269165345 qcacmn: Set value for locally_generated flag for disconnect response
Set value for locally_generated flag for disconnect response based on
disconnect req source

Change-Id: I4f693be98ca10a5f883f1a9349ed50876679e723
CRs-Fixed: 2880520
2021-03-01 22:50:10 -08:00
Kiran Kumar Lokere
a7436df393 qcacmn: QCA vendor attribute to configure Punctured Preamble Rx in HE cap
Add a QCA vendor attribute to enable/disable the Punctured Preamble Rx
support in HE PHY capabilities.
This attribute is used for testing purposes.

Change-Id: I5d0089ddc95beb334c73538431dde3a034a1bc21
CRs-Fixed: 2886737
2021-03-01 13:15:37 -08:00
Kiran Kumar Lokere
f94de208c2 qcacmn: QCA vendor attribute to disable data and management frame Tx
Add a QCA vendor attribute to configure the driver to disable data
and management response frame transmission to test the BSS max
idle period feature.
This attribute is used for testing purposes.

Change-Id: I106da43f9044bd15727152e04a233376e79e034a
CRs-Fixed: 2886732
2021-03-01 13:15:33 -08:00
Kiran Kumar Lokere
1da1673aae qcacmn: QCA vendor attribute to configure RU 242 tone for data Tx
Add a QCA vendor attribute to configure the driver/firmware to
use only RU 242 tone for data frame transmission.
This attribute is used for testing purposes.

Change-Id: I32af9b34b335887279a41f64d7e93b14d6f44f41
CRs-Fixed: 2884735
2021-03-01 13:15:29 -08:00
Kiran Kumar Lokere
ddd3c558ed qcacmn: QCA vendor attribute to configure BSS max idle period
Add a QCA vendor attribute to configure the driver with a specific BSS
max idle period value to advertise in (Re)Association Request frames.
This attribute is used for testing purposes.

Change-Id: Ibe98ab7947b759d9dcd3f963629de4dd6a86b543
CRs-Fixed: 2884705
2021-03-01 11:09:12 -08:00
gaurank kathpalia
fffe13cbc9 qcacmn: Fix the pointer reset in cm_allocate_and_copy_ies_and_keys
In cm_allocate_and_copy_ies_and_keys instead of target's pointer
source's pointers are reset thus making the following code void

Fix this by resetting the target pointers which needs to be allocated
with new memory.

Change-Id: I4417492c43eb27833d365ec4aa644e07ed4eca51
CRs-fixed: 2884187
2021-02-24 01:51:45 -08:00
sheenam monga
df4587eb5f qcacmn: Add additional attributes for the QCA vendor command
QCA_NL80211_VENDOR_SUBCMD_GET_STA_INFO to get finer details on roaming
behavior, TSF out of sync count, and the latest TX rate, Rate Index used
for the transmission.

Change-Id: I34d112a263a587603f555069c0244f61dc44ec73
CRs-Fixed: 2876411
2021-02-19 02:35:22 -08:00
Amruta Kulkarni
d5cc294f49 qcacmn: Support roam invoke request in connection manager
Add support for roam invoke request in connection manager.

CRs-Fixed: 2869259
Change-Id: I618add058d39e9452530b1950cff57bfe6100448
2021-02-18 03:12:24 -08:00
Ashish Kumar Dhanotiya
4ea435bd55 qcacmn: Add an ini to ignore user configured sched scan params
Currently there is no mechanism in driver to decide whether
to consider the user configured number of sched scan plan or
to configure only 1 schad scan plan.
There is a requirement to configure only one sched scan plan,
add ini support to meet this requiremet.

Change-Id: Iea3bc3f18696837150ce6f4bd60416a8a45bd1d3
CRs-Fixed: 2868125
2021-02-10 12:31:49 -08:00
Ashish Kumar Dhanotiya
e6a652dcc7 qcacmn: Fix connect status and allow connect with null assoc IE
Currently driver rejects connect request if assoc ie length
is 0 or assoc ie is NULL which results in connect failure.

To avoid above issue do not reject connect request if
assoc ie is NULL. Also fix the connect status to send the
proper status code instead of WLAN_STATUS_UNSPECIFIED_FAILURE.

Change-Id: Icb775a88780350fa589ae8db65abdd79980558c6
CRs-Fixed: 2869967
2021-02-08 02:06:43 -08:00
Abhishek Singh
f49b0e6e4d qcacmn: Fix compilating issue in printing fils info
Fix compilating issue in printing fils info.

Change-Id: Ibeca5324df91d1444f387c658f7e84c1fa4dbd81
CRs-Fixed: 2866766
2021-02-01 23:00:25 -08:00
Abhishek Ambure
35135ea9a1 qcacmn: Fix the FILS params set
Host updates proper FILS param set i.e. username, auth_type and
is_fils_connection in the FILS response.

Change-Id: I0c30325bc7d620aa286aae0dd299dec9b26219ff
CRs-Fixed: 2865060
2021-01-29 08:17:50 -08:00
Abhishek Singh
fb8d6c3859 qcacmn: Fix unlink bss is success case
In connection success case the unlink BSS is not required, so
add the status check.

Change-Id: If5e2d02b37865267a096f01f0835bdccbc8e1c3d
CRs-Fixed: 2860102
2021-01-22 20:52:19 -08:00
Abhishek Singh
47108a8af2 qcacmn: Fix mcast cipher for WEP
Fix the param pass to get mcast cipher for WEP.

Change-Id: I25c24d86ffae7d0e4e03d1bf7a9457321a5de9d1
CRs-Fixed: 2859770
2021-01-22 12:07:37 -08:00
gaurank kathpalia
bd8eeecda6 qcacmn: Add missing params for the fils connection
Add missing params for the fils connection.

Change-Id: I7442670c30d7ddee201c2bc328372513302f971d
CRs-Fixed: 2857905
2021-01-21 17:04:45 -08:00
Santosh Anbu
6cc0d45bfd qcacmn: Fix connect resp struct params
Fix connect resp params.
-- Fix length of the assoc req and assoc resp
-- Remove unused params from connect resp

Change-Id: I992b1bf1037bb4a09ecd37501420168c29de8187
CRs-Fixed: 2857372
2021-01-21 03:43:40 -08:00
Himanshu Batra
6e59547918 Revert "qcacmn: Fix connect resp struct params"
Revert "qcacmn: Fix connect resp struct params"

Change-Id: Ib2149f33c9faddd4194644033b61144a3043d21c
2021-01-18 23:52:12 -08:00
Liangwei Dong
f29e4c0315 qcacmn: export wlan_get_connected_vdev_by_bssid API
Export wlan_get_connected_vdev_by_bssid API as utility API.

Change-Id: Ia412d324aaf5b47ab7bece63d9a6e6cbc5c2e06a
CRs-Fixed: 2855501
2021-01-18 05:40:43 -08:00
gaurank kathpalia
6dc7ecfcb8 qcacmn: Fix assignment of vdev in cm_ctx and few prints
Fix the assignment of vdev in cm_ctx and fix few prints.

Change-Id: I5d76ab2ca39a1a84b3987fd9cb566c2f08ecc399
CRs-Fixed: 2856499
2021-01-18 03:27:18 -08:00
gaurank kathpalia
9b7a248d36 qcacmn: Fix connect resp struct params
Fix connect resp params.
-- Fix length of the assoc req and assoc resp
-- Remove unused params from connect resp

Change-Id: I9ae7f4f155e16cd45dad2c99cc471773c9f12b84
CRs-Fixed: 2852445
2021-01-15 01:58:51 -08:00
Santosh Anbu
45a300ce7b qcacmn: Support roaming request to connection manager
Add change to support roaming request to connection manager.

Change-Id: I7f580e042522a245fc6a263d0e8f8b32b2f693f7
CRs-Fixed: 2845076
2021-01-11 01:52:47 -08:00
Alan Chen
8db987a33c qcacmn: Define VENDOR_NLA_POLICY_IPVXXX_ADDR for IPV4/IPV6
Define VENDOR_NLA_POLICY_IPVXXX_ADDR for IPV4/IPV6 to address kernel
version dependency.

Change-Id: If73fe24dc29a65c043af6cf3d797a756a264f602
CRs-Fixed: 2851486
2021-01-09 04:46:50 -08:00
Abhishek Ambure
4fb0c8fccb qcacmn: Add support to save gtk and set hlp data
Host add support to save gtk and set hlp data from fils ie of connect
response.

Change-Id: I5e6b9882359697f09a0935a9c07f3427dbe04cc2
CRs-Fixed: 2849123
2021-01-07 23:29:05 -08:00
Liangwei Dong
22151e9f26 qcacmn: Iterate vdev with "Create" state check
Use safe API - wlan_objmgr_iterate_obj_list to enumerate
vdev. It will check vdev in "create" state by
wlan_objmgr_vdev_try_get_ref.

Change-Id: I650801c07846e22f1863925ed4316c0a24bd9cae
CRs-Fixed: 2849177
2021-01-06 21:54:59 -08:00
Edayilliam Jayadev
9b98e19b51 qcacmn: Add Spectral disabled checks in some APIs
Add Spectral feature disable checks in some APIs
used by other modules.

CRs-Fixed: 2845252
Change-Id: I74d66da2aa85ab0f116ad1a6d2e859f3ee8eeeb9
2020-12-30 07:06:41 -08:00
Santosh Anbu
d36905a34a qcacmn: Add null check for connect request bssid
Add null check for connect request bssid before copying the previous
bssid.

Change-Id: I5b674d99923335673cbcc3ddcbbbc4a6940bad47
CRs-Fixed: 2845808
2020-12-28 23:00:47 -08:00
Himanshu Batra
6df2698a64 qcacmn: Notify kernel if connect fails after cfg change
Notify kernel if connect fails after cfg change

Change-Id: I7cdf9adf5452204411566bd7ac52d67dcbe35481
2020-12-28 13:06:58 -08:00
Pragaspathi Thilagaraj
210ed2bc5f qcacmn: Add Vendor feature capability to notify TWT asynchronous response
The response for the respective TWT operations can either be synchronous
or asynchronous (wherever specified). If synchronous, the response to
this operation is obtained in the corresponding vendor command reply to
the user space. For asynchronous case, the response is obtained as an
event with the same operation type.

Drivers shall support either of these modes but not both simultaneously.
The support for asynchronous mode is advertised through the new flag
QCA_WLAN_VENDOR_FEATURE_TWT_ASYNC_SUPPORT. If the driver does not
include this flag, it shall support synchronous mode.

Change-Id: I359e12c5147b0115158d03a7a08d74beca78455c
CRs-Fixed: 2842872
2020-12-23 11:35:31 -08:00
Pragaspathi Thilagaraj
ae5d79bf9e qcacmn: Add new TWT operations and attributes to TWT Setup and Nudge
Define the following additional TWT operations:
QCA_WLAN_TWT_GET_STATS, QCA_WLAN_TWT_CLEAR_STATS,
QCA_WLAN_TWT_GET_CAPABILITIES, QCA_WLAN_TWT_SETUP_READY_NOTIFY.

Also define new attributes to qca_wlan_vendor_attr_twt_setup
and qca_wlan_vendor_attr_twt_nudge.

Change-Id: I687fd215c13aa12741d8ba7af23507f930d0ec81
CRs-Fixed: 2842072
2020-12-23 11:35:27 -08:00
Liangwei Dong
d4b3e3d043 qcacmn: Don't unlink connected bssid
In dual station case, wlan0 is connected to AP, wlan1
connects to the same ap and will get failed because two
interfaces can not connect to same band (same ap).
At present wlan1 will do unlink bss of ap after connect fail.
This may corrupt the bss tree in kernel because the bss is
still pointed by wlan0’s wdev -> current_bss.
Fix by avoid the unlink bss if the bss is still connected
in any interfaces.

Change-Id: I27c76eca2d4f130addabbdc2600f6959d24c8511
CRs-Fixed: 2837496
2020-12-16 09:55:49 -08:00
Paul Zhang
6e6b928fc5 qcacmn: Add vendor attributes for TWT nudge request
TWT nudge is a combination of suspend and resume in a single request.
Add TWT nudge operation and QCA vendor attributes to support
the TWT nudge request.

Change-Id: Iddc4cb6722e88ad9dd65933091bdaa468718f2cf
CRs-fixed: 2822267
2020-12-14 07:35:28 -08:00
Utkarsh Bhatnagar
4e87e6c554 qcacmn: QCA vendor attributes to configure TX and RX NSS
Define QCA vendor attributes to dynamically configure TX NSS and RX NSS
to be used with QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION and
QCA_NL80211_VENDOR_SUBCMD_GET_WIFI_CONFIGURATION commands.

Change-Id: I9b3b3d3c5be2abd01fa8669b10c2961c271ecdbb
CRs-Fixed: 2831257
2020-12-03 17:35:17 -08:00
Abdul Muqtadeer Ahmed
aa291dabe2 qcacmn: Vendor specific feature capability for dbs
Add feature capability indication for dbs for the
drivers to advertize support for this.

Change-Id: Ic6941e58a30d6aa6a867a12ddd7a8db5abbb1673
CRs-Fixed: 2821654
2020-12-03 05:36:18 -08:00
Ajit Vaishya
25622b4ed5 qcacmn: Vendor specific feature capability for Adaptive 11r
Add feature capability indication for Adaptive 11r for the
drivers to advertize support for this.

Change-Id: I28da5c3d7d4d841de980c841b1d4c39be12ed295
CRs-Fixed: 2817358
2020-11-30 12:49:27 -08:00
Arun Kumar Khandavalli
66ec120912 qcacmn: Add bus failure reason code to vendor indication
Add bus failure hang reason code in enum qca_wlan_vendor_hang_reason.

Change-Id: I0ea7fff779459a1cccd44c6336a0c49d73f8b37d
CRs-Fixed: 2825302
2020-11-29 23:28:12 -08:00
Yu Wang
ca591b0db7 qcacmn: move component 'coex' to qcacld project
'coex' component is MCC specific, move to qcacld project.

CRs-Fixed: 2721763
Change-Id: I271301c28748f6b14afb59e105cc9f418e43a9c4
2020-11-24 22:51:16 -08:00
Nandha Kishore Easwaran
a90712e15d qcacmn: Add extra parameters to gpio command
Add extra parameters to gpio wmi command since they
are required for smart antenna config.

Change-Id: I3b363c7b508862ded8aacffb9e0a39328e8b2b94
2020-11-23 06:38:30 -08:00
Nandha Kishore Easwaran
de94037c5f qcacmn: Add extra parameters to gpio attr
Add extra parameters mux_config, drive and init_enable
to gpio config command.

Change-Id: I439aec6cbd6769a36c7f5629f9249bdd25466138
2020-11-23 06:38:25 -08:00
Paul Zhang
47c1479e3f qcacmn: Add test configuration attr to enable/disable full bandwidth UL MU-MIMO
Define a QCA vendor attribute
QCA_WLAN_VENDOR_ATTR_WIFI_TEST_CONFIG_FULL_BW_UL_MU_MIMO to
enable/disable full bandwidth UL MU-MIMO subfield in the HE PHY
capabilities information field for testing purposes.

Change-Id: I666abb2654603069140bd603ae0377ea01a720fa
CRs-Fixed: 2816951
2020-11-20 08:35:18 -08:00
Abhishek Singh
1853c161d2 qcacmn: Add logic to ignore 6Ghz AP if security is not valid
Add logic to
- Check if connect req freq is 6Ghz and security
  is not allowed for 6Ghz, reject connect.
- Ignore 6Ghz APs if connect req security is invalid
  for 6Ghz

Also added user config key_mgmt_mask_6ghz mask
to allow specific AKMs, by default all are allowed.

Add added user config check_6Ghz_security to enable
security checks as per spec.

Change-Id: I37518731faa4de67a49853e5ac544efa3b3ce1d6
CRs-Fixed: 2813013
2020-11-12 03:28:37 -08:00
Himanshu Batra
50324c2260 qcacmn: Resolve compilation issues for CM
Resolve compilation issues for CM.

Change-Id: I3dc32cb327032ce59786e0d9ab922a8914e13ec3
CRs-Fixed: 2816317
2020-11-11 10:23:51 -08:00
Ashish Kumar Dhanotiya
3faf318e8c qcacmn: Add a check for vdev with bssid mac
There is a possibility that driver already has a vdev
with the mac address same as bssid, in this case sta
should not connect to this AP as it may lead to undefined
behavior.

To address above issue add a check to compare bssid with
already existing vdevs before connect start.

Along with above changes add few renaming changes also.

Change-Id: Ia12be0b392a01bf935b5261e505290064de68805
CRs-Fixed: 2809147
2020-11-04 17:02:00 -08:00
Arun Kumar Khandavalli
c05a963017 qcacmn: Add additional vendor specific hang reason codes
Add additional hang reason codes in enum qca_wlan_vendor_hang_reason to
address potential internal failure cases.

Change-Id: I4bf154805d3e06241e9fdd799f1e6ffc4c046fca
CRs-Fixed: 2803747
2020-10-30 17:07:39 -07:00
gaurank kathpalia
b8b58d8d12 qcacmn: Move disconnect wait logic from osif to connection mgr
Move disconnect wait logic from osif to connection mgr, so that
MLO/IF manager can use the wait logic for disconnect
during vdev delete.

Change-Id: Ied2bbcfd6a532209f8008499424f94acc41efc0e
CRs-Fixed: 2800990
2020-10-29 17:51:00 -07:00