Commit Graph

1606 Commits

Author SHA1 Message Date
Shreedhar Parande
e6b1ed7180 qcacmn: Read EML and MLD Cap from target
Extract EML and MLD Capabilities from Target via
wmi_service_ready_ext2_event. These values can be
used while advertising EML and MLD Capabilities.

Add helper function to get EML related delays in
Micro Secs from values got from EML and MLD advertisments.

Send EML Capabilities received from node to Target
via WMI_PEER_ASSOC.

CRs-Fixed: 3225495
Change-Id: Ibfa2ff8dbf11d4293125331376a7986e611d5f63
2022-07-23 19:14:48 -07:00
Shiva Krishna Pittala
3567bb3b57 qcacmn: Add support to process Spectral capabilities event
WMI_SPECTRAL_CAPABILITIES_EVENTID event will be sent by the target SW to
indicate the different capabilities of the Spectral HW.
Add support to process this event and extract the capabilities.

Change-Id: I03b3236b6def98d24e77b2a9ea51ee866e62e6fe
CRs-Fixed: 3238450
2022-07-22 07:00:18 -07:00
Yu Wang
c8ba5e36c8 qcacmn: add support for ACTION_OUI_EXTEND_WOW_ITO
Map ACTION_OUI_EXTEND_WOW_ITO to WMI_VENDOR_OUI_ACTION_EXTEND_WOW_ITO.

Change-Id: I2874e84fe88f1b4adfc6b579298937f353fa8900
CRs-Fixed: 3246877
2022-07-21 11:02:13 -07:00
Gururaj Pandurangi
a57b8d20e4 qcacmn: Add host fixes for 11be eMLSR mode
Add following fixes for STA to support and operate in
eMLSR mode
1) Update and send eMLSR cap flag to FW even in vdev start
request on both links.
2) Copy EML caps to wmi peer assoc mlo params to send it
to FW.

Change-Id: Ic17b9b82809659d7a4392c09eceecae7c53b2049
CRs-Fixed: 3237737
2022-07-18 23:36:38 -07:00
vijaraj
4f6505a158 qcacmn: Extract btcoex status in extract_roam_scan_stats_tlv
btcoex status is not extracted in the extract_roam_scan_stats_tlv()
which was required for ROAM_SCAN_DONE event logging due to
which wrong status is printed in ROAM_SCAN_DONE
logging.

Extract bt_coex status in the extract_roam_scan_stats_tlv()
in order send correct value of bt_coex status for
ROAM_SCAN_DONE logging.

Change-Id: I45ee27e5b8a52b79954dceb9f3cdc46870b7a48d
CRs-Fixed: 3236401
2022-07-18 02:51:29 -07:00
Aditya Kodukula
ec13c2ea39 qcacmn: Add infra to support DBAM feature
Add infra to support Dedicated Bluetooth Antenna Mode (DBAM)
feature. It is used to switch between dedicated antenna for
BT and shared antenna for WLAN and BT.

Change-Id: I21688093674ef9b63ee811df9168a31bd71c56b5
CRs-Fixed: 3239895
2022-07-17 23:12:37 -07:00
Pragaspathi Thilagaraj
38b8236ddc qcacmn: Add support for initiate pasn auth vendor command
Add support for initiate pasn authentication using the vendor
command: QCA_NL80211_VENDOR_SUBCMD_PASN
Fill the below required attributes to initiate PASN:
QCA_WLAN_VENDOR_ATTR_PASN_ACTION
QCA_WLAN_VENDOR_ATTR_PASN_PEERS
QCA_WLAN_VENDOR_ATTR_PASN_PEER_MAC_ADDR
QCA_WLAN_VENDOR_ATTR_PASN_PEER_SRC_ADDR

Change-Id: If33f54eafe5986b4571cc21a80fb0b61578db116
CRs-Fixed: 3232261
2022-07-14 04:12:51 -07:00
Shashikala Prabhu
79b3391de9 qcacmn: Replace WLAN_FEATURE_T2LM flag with WLAN_FEATURE_11BE
Replace WLAN_FEATURE_T2LM compile-time flag with WLAN_FEATURE_11BE.

Change-Id: If3253bf3aae04f434252bfc92d00b8649f831bfe
CRs-Fixed: 3238444
2022-07-12 08:57:02 -07:00
Kani M
c9f08ae24b qcacmn: Add beacon ratelimiting
Rate-limiting will be based on number of beacons received.
When the beacon is not from connected AP, the beacons
are dropped on a percentage of received beacons and
rate limit, which is configured by the user.

CRs-Fixed: 3230508
Change-Id: Iac591c37129fda6923ef254c2950cb0bdbb44ce9
2022-07-08 11:57:54 -07:00
Utkarsh Bhatnagar
000a8135b3 qcacmn: Use ch_freq instead of chan num for TDLS update peer TLV
Use ch_freq instead of chan_num while using tdls_ch_params
structure. As chan_num no longer exists and is replaced by
ch_freq.

Change-Id: Ifd6fd49e201b97a16294bad6c6e4ae49a04c380f
CRs-Fixed: 3234931
2022-07-07 23:29:51 -07:00
David Oladunjoye
f32e16123e qcacmn: wmi: Replace fallthrough comment with attribute
-Wimplicit-fallthrough is being enabled by default. Some compilers
such as clang require the attribute instead of just a fallthrough comment.

Change-Id: If7b79684df22441de75447dda84d22576573bfc5
CRs-Fixed: 3218242
2022-07-07 21:43:11 -07:00
Pragaspathi Thilagaraj
f0cac26bbb qcacmn: Add support to delete all pasn peers
Add support to delete all pasn peers

Change-Id: I2c3d95cb8994693d8944d69624d2db0992f2f03d
CRs-Fixed: 3158523
2022-07-06 23:08:01 -07:00
Pragaspathi Thilagaraj
b7fa703306 qcacmn: Add support to send PASN commands
Add support to send below PASN commands:
WMI_RTT_PASN_AUTH_STATUS_CMD
WMI_RTT_PASN_DEAUTH_CMD
WMI_VDEV_SET_LTF_KEY_SEED_CMDID

Change-Id: I5a50a634317d0a692feee5be5a36da22b4c5d713
CRs-Fixed: 3154530
2022-07-06 23:07:52 -07:00
Shashikala Prabhu
19243f9d82 qcacmn: API changes to get the number of Quiet IE enabled vdevs
API changes to get the number of Quiet IE enabled vdevs from the
SWBA event

Change-Id: Ia130786376a47bcc6b1f4f27ac098c2a3d590555
CRs-Fixed: 3229474
2022-07-05 12:41:03 -07:00
Utkarsh Bhatnagar
9ce3625921 qcacmn: Add TDLS wideband FW service capability
Add TDLS wideband FW service capability

Change-Id: I92a3a60d2e8b4c05888e2d9a717dc12265e2e90c
CRs-Fixed: 3223771
2022-06-30 10:54:27 -07:00
Utkarsh Bhatnagar
3031faee57 qcacmn: Add TDLS 6 GHz FW service capability
Add TDLS 6 GHz FW service capability

Change-Id: I8bf7b9b4fe2d57e5bd96018483c7eb128800ee68
CRs-Fixed: 3223678
2022-06-25 03:03:50 -07:00
abhinav kumar
edd1669c23 qcacmn: Handle vendor control command and event
WMI_ROAM_GET_VENDOR_CONTROL_PARAM_CMDID: Add support
for a new roam command to get vendor control parameters
from FW. Host needs to send proper param ID in command
(from enum WMI_ROAM_GET_VENDOR_CONTROL_PARAM_ID)
to get corresponding INI value from FW.

WMI_ROAM_GET_VENDOR_CONTROL_PARAM_EVENTID:
Add support for a new roam event to get param value
from FW. FW sends this event upon receiving
WMI_ROAM_GET_VENDOR_CONTROL_PARAM_CMDID command.

Change-Id: Ic7b3badb14daff183dd36927b4dae6bbc036e6cd
CRs-Fixed: 3225166
2022-06-25 01:08:55 -07:00
Pragaspathi Thilagaraj
87136b1636 qcacmn: Add bt_coex active field in roam scan done info
Add bt_coex active field in roam scan done info as
part of roam stats event handler.

Change-Id: Ief31efe491bede5ae4571bf0f5ace284aa6ea0fe
CRs-Fixed: 3226707
2022-06-24 18:21:28 -07:00
abhinav kumar
f55ec57e32 qcacmn: Support vendor handoff service bit info from FW
Add change to fetch and save the WMI service capability
bit of FW to support vendor handoff control feature
using service bit.

Change-Id: I6bc85f2807032bf84d391f34c814c91de906ab42
CRs-Fixed: 3225147
2022-06-23 08:51:02 -07:00
Jianmin Zhu
65161e36f3 qcacmn: Allow eht in WMI_SCAN_CHAN_LIST_CMDID
Set WMI_CHAN_FLAG_ALLOW_EHT in WMI_SCAN_CHAN_LIST_CMDID to FW.

Change-Id: I45c413a9a732e3f6be090dca6559f594bd07eeaf
CRs-Fixed: 3221023
2022-06-18 12:59:55 -07:00
Mohit Khanna
0c558b779b qcacmn: Enable notify-frame feature in FW
Enable bits in WMI_INIT command to let the FW know about host's
capability to support notify frame feature. If the feature is enabled,
host can mark certain TX frames as "notify frames" for hardware and they
need not be sent to FW. FW depends on this capability exchange to decide
whether to install HW rules for frames to be sent to HW.

Change-Id: I7158e79ae0fbdc73a2f4096ae1577337e8291246
CRs-Fixed: 3209399
2022-06-14 01:37:19 -07:00
Madhvapathi Sriram
f4bfa6616b qcacmn: Add method to configure TID queues flush
This enables the option to configure when a peer's
TID queue needs to be flushed. This is required to
discard packets that are no longer useful to the application.

Change-Id: I558debff043fc0c8038e5f5f2c815b64c90e1561
CRs-Fixed: 3130422
2022-06-09 19:37:26 -07:00
Gururaj Pandurangi
00f755c0ce qcacmn: Add eMLSR support for ML STA
Add eMLSR support for ML STA. It consists of 2 changes-
1) Since POLICY_MGR_HW_MODE_EMLSR_MODE_BITPOS macro has value of 32, a new
SET BIT function has been implemented to accommodate the 64-bit operation.
2) Add eMLSR related params to peer assoc mlo param struct to update FW
via peer assoc request.

Change-Id: I6e54c632677eacabc57338b0f159d97023b100f2
CRs-Fixed: 3185010
2022-06-08 17:10:10 -07:00
Nandha Kishore Easwaran
422bbf322b qcacmn: Add tx peer filtering WMI command
Add WMI command for tx peer filtering. This command is needed to send
the mac address to FW for which tx monitor peer filtering is needed
to be done.

Change-Id: Ia141fba81ba240b7f4ca015eb9251e3485294bb6
CRs-Fixed: 3199493
2022-06-06 04:26:55 -07:00
Aakanksha Doda
f420dce004 qcacmn: Add wmi changes to extract addba window size from mgmt tlv
Add wmi changes to extract addba window size from mgmt tlv

CRs-Fixed: 3156291
Change-Id: I09891ef15942d3a7d594dfa839b758a9d4a5ba78
2022-05-30 06:45:12 -07:00
abhinav kumar
8932989aaf qcacmn: Send connected links bitmap to FW
Send connected links bitmap to FW via a command:
WMI_REQUEST_STATS_EXT_CMDID in case of MLO connection.

Change-Id: I8ea88b0474769a56f5efa0cd006ba515e858accf
CRs-Fixed: 3149043
2022-05-24 09:39:14 -07:00
Aravind Kishore Sukla
a080cd6ace qcacmn: Incorrect FW enum to Host enum conversion
Roam result failure enum is not properly converted to
corresponding Host enum.

Change-Id: I8c521ef02a8673d6a601b39cf291dd839e27f514
CRs-Fixed: 3188826
2022-05-24 09:39:00 -07:00
Himanshu Batra
61d0aa9de0 qcacmn: Add wmi support to get link airtime usage stats
Add wmi support to get link airtime usage stats

Change-Id: Ie23c980de1178a7293eca19b3576da86d6318d21
CRs-Fixed: 3199400
2022-05-19 08:06:42 -07:00
Basamma Yakkanahalli
a684d24bfe qcacmn: Critical update signaling for beacon
Critical update is the explicit signaling for STA to notify
any change in BSS param.

There are two categories of critical update params.
Category 1 elements:  CSA, ECSA, Quiet, Quiet channel,
            Max Ch Switch Time, that are directly included in
            the per-STA profile of partner AP.
Category 2 elements: Except category 1 all operational IEs
           HT/VHT/HE/EHT and WMM/EDCA/MUEDCA params.

Defined below vdev flags to track change in Category 1 and
Category 2 CU params per ML VDEV
WLAN_VDEV_OP_CU_CAT1: Change in category 1 param
WLAN_VDEV_OP_CU_CAT2: Change in category 2 param

Host notify to FW by updating current link CU param in
wmi_bcn_tmpl_ml_info TLV of BCN TMPL CMD.
Set the corresponding cu_vdev_map category 1 / category 2
based on change in critical update params of ML VDEV.

Change-Id: I8fe71309ab92a459524bdc5739f8b4a4a545562e
CRs-Fixed: 3199331
2022-05-19 01:57:30 -07:00
Rajeev Kumar
fd2ba9f34e qcacmn: Log qmi event id in hex for easier debugging
Log wmi event id received in QMI stats response in hex for
easier debugging.

Change-Id: I7812f6aa31ccaa8c186679cac49e7a0a192ac7f5
CRs-Fixed: 3199171
2022-05-18 23:01:53 -07:00
Ripan Deuri
b434bd1dc2 qcacmn: delta tsf calculation based on use_tqm_timer flag
Add WMI parameters to support delta tsf calculation based on the
use_tqm_timer flag.

Change-Id: I6346f0b661bdede56874f4589f4dcc4d8b95c439
CRs-Fixed: 3193329
2022-05-18 05:21:00 -07:00
Abhishek Singh
ba4e301f48 qcacmn: Handle mlo_force_link_inactive in ml peer assoc flags
Handle mlo_force_link_inactive in ml peer assoc flags.

Change-Id: Ic72c42401b03cfbd5b97fafec72d45d47ab787ea
CRs-Fixed: 3192730
2022-05-18 01:40:47 -07:00
Liangwei Dong
28ceb47c1d qcacmn: populate num_max_active_vdev in WMI init
Set num_max_active_vdevs to WMI init command and
extract it from WMI ready event.

Change-Id: I6d6377c03214fcab74c675839f136301ebf27834
CRs-Fixed: 3183010
2022-05-15 20:51:00 -07:00
Shashikala Prabhu
e8e9381db1 qcacmn: Correct the TID-to-link mapping debug print
Correct the TID-to-link mapping debug print.

Change-Id: I625c646f0747583be6809180ca195c6ba154d9cd
CRs-Fixed: 3196565
2022-05-15 11:29:50 -07:00
Aditya Kodukula
16c15a6499 qcacmn: Add support for MLO stats
As part of MLO stats feature, add support to send ll_stats
and get_station stats request to firmware for all the MLO vdevs.

Change-Id: Ic50a6294f868f0604d4cfc0d4b657b6085da2fb4
CRs-Fixed: 3181020
2022-05-14 03:35:17 -07:00
Liangwei Dong
8b89b06a6a qcacmn: Add vdev parameter wmi_vdev_param_set_traffic_config
Add mapping of wmi_vdev_param_set_traffic_config
to WMI_VDEV_PARAM_VDEV_TRAFFIC_CONFIG.

Change-Id: I2147cad3fb5726551de64edcfc41bee2707150a6
CRs-Fixed: 3191504
2022-05-12 06:52:51 -07:00
Kai Chen
627746d6bb qcacmn: AFC device deployment type support
Add init sequence handling to support AFC device deployment type
Set AFC device deployment type to regulatory private obj

Change-Id: Ib041d2010552412aaaa41395915d948aa2ea2bba
CRs-Fixed: 3190288
2022-05-10 22:12:35 -07:00
Aravind Kishore Sukla
6932ea7f8a qcacmn: Replace kmsg logs to debug logs
Change kernel log level to debug level

Change-Id: Ib2736aff0f653d046d502d460f204bba2247246f
CRs-Fixed: 3182588
2022-05-10 09:11:47 -07:00
Himanshu Batra
826f250128 qcacmn: Add support for mlo peer delete params
Add support for mlo peer delete params

Change-Id: Ic6ef0786f73a7bb16c8a5de035b13a0a56862125
CRs-Fixed: 3188357
2022-05-09 04:08:28 -07:00
Srinivas Dasari
cc60bec109 qcacmn: Ignore H2E RSNXE support for test config
Userspace sends the vendor command WIFI_TEST_CONFIGURATION by
setting the attribute WIFI_TEST_CONFIG_IGNORE_H2E_RSNXE when
driver needs to ignore the SAE H2E mismatch for 6 GHz connection.
This is needed for certification test support

Change-Id: I5c1838598478ab74d72d57a765452d7fd989b701
CRs-Fixed: 3072578
2022-05-06 16:41:55 -07:00
Shiva Krishna Pittala
80edcddb01 qcacmn: Spectral init path changes for QCN9224
Add the Spectral init path changes required for Waikiki.

Change-Id: I6c6bb826ff4ce02988560100b187fe1acffa3f7d
CRs-Fixed: 3160798
2022-05-05 01:21:04 -07:00
Venkateswara Swamy Bandaru
7d275c46f6 qcacmn: Add EHT PPET peer debug prints
Add EHT PPET peer debug prints on assoc path.

Change-Id: I6e2217bc3e4fb827243a8c718f4bd546f8d72c05
CRs-Fixed: 3186652
2022-05-04 10:48:40 -07:00
Pragaspathi Thilagaraj
87ce989ee0 qcacmn: Add support for RTT PASN events
Add support in wmi to handle below new RTT PASN events:
WMI_RTT_PASN_PEER_DELETE_EVENTID
WMI_RTT_PASN_PEER_CREATE_REQ_EVENTID

Change-Id: Ib33c2def2d7ef66a6a2717e2a8e1756ab4318e4d
CRs-Fixed: 3150069
2022-04-30 22:49:49 -07:00
Deeksha Gupta
55b630d160 qcacmn: Increase the size of EHT PHY cap as per D1.4
Increase the size of EHT PHY cap as per D1.4

Change-Id: Ibe228e12a0277bd1015a3bf87a96b11410d51a77
CRs-Fixed: 3185926
2022-04-29 17:21:15 -07:00
Shashikala Prabhu
a12a2c47c8 qcacmn: Add WMI changes to send the T2LM command to FW
Add WMI changes to send TID-to-link mapping to FW as part of peer assoc
command and as part of WMI_PEER_TID_TO_LINK_MAP_CMDID.

Change-Id: Ia3a8fb10d49e1d54d6f4f418be3f684bc0147c5c
CRs-Fixed: 3183734
2022-04-29 13:50:00 -07:00
Edayilliam Jayadev
1c9f82f0ec qcacmn: Use PPDU duration to find end time stamp
Use the PPDU duration given by FW to find the end time
stamp of management frames.

CRs-Fixed: 3181500
Change-Id: Ibabe82c8e2d3cd7e494e764a9a2baeded89a7300
2022-04-28 10:40:59 -07:00
Kiran Venkatappa
ae6d816cbf qcacmn: Enable copy engine 14 for diag on qcn9224
Copy Engine(CE14) is used for diag events on qcn9224. Add changes to
configure this CE as dest ring and fix diag event handler to use
wmi_handle from first pdev similar to other WMI events.

Change-Id: I314939169f9be32cd277af68dcd3ef7a0eb06187
CRs-Fixed: 3177987
2022-04-28 06:50:18 -07:00
David Oladunjoye
52945c51a9 qcacmn: umac: Add mapping for WMI to Host TWT nudge status
Add mapping for WMI_NUDGE_TWT_STATUS_ALREADY_PAUSED on host side.

Change-Id: Ia7bcd78cfc709677b9b28a9fc2703e30f3cb2b7b
CRs-Fixed: 3181119
2022-04-27 13:01:48 -07:00
Kiran Venkatappa
a5e928212a qcacmn: Add extract API to get sw cal version
cal version is included in EXT2 svc ready message to indicate the bdf
and ftm version to host. Add API to extract this from ext2 message.

Change-Id: I83f4d6e83a3f78f993b40527aed7291c6496777c
CRs-Fixed: 3182634
2022-04-27 04:54:42 -07:00
Kiran Venkatappa
25753f9cc8 qcacmn: Use correct macro to get pdev_id from mac_phy_caps
pdev_id and hw_link_id is included in same uint32. Lower 16 bits are for
pdev_id and higher 16 bits are for hw_link_id. Use proper macro to get
pdev id from mac_phy_caps.

Change-Id: I91806c0fba63767efa0105df5697dd685f38b819
CRs-Fixed: 3182651
2022-04-27 00:50:44 -07:00