Commit Graph

730 Commits

Author SHA1 Message Date
Shiva Krishna Pittala
22be442546 qcacmn: Add supoprt to process WMI_MLO_LINK_REMOVAL_EVENTID
WMI_MLO_LINK_REMOVAL_EVENTID will be sent by FW to update the Host on the
progress of the link removal operation. Add support to process this event.

Change-Id: I0c4d5b047cf062b421380f85717fac5a9bdea9c2
CRs-Fixed: 3334950
2022-12-11 23:52:04 -08:00
Surya Prakash Sivaraj
68c9e15c31 qcacmn: Increase PMK max length to 64bytes
For SAE-EXT-KEY AKM with group-21 pwe, the PMK
length is 64bytes. Therefore, increase the max
size of the PMK to 64bytes in host to facilitate
PMK storage and PMK offloads.

Change-Id: I049cd14c1c71e1809b394199862409780a16371d
CRs-Fixed: 3353114
2022-12-09 09:36:15 -08:00
Surya Prakash Sivaraj
2be3e823e2 qcacmn: Add service bit for wpa3 sha384 roam
Add the service bit wmi_service_wpa3_sha384_roam_support
used by firmware to indicate the roaming support for
WPA3 SHA384.

Change-Id: I4bb4f9fd83085c48c646818124265486bae62c0c
CRs-Fixed: 3334343
2022-12-09 07:32:42 -08:00
Shashikala Prabhu
952dd4de06 qcacmn: Add API to parse the T2LM event ID
Add API to parse the TID-to-link mapping event ID for the AP vaps.
As part of this event,
	 - Update the mapping switch time TSF value in host data structures.
	 - When mapping switch time or expected duration expires in the FW,
	   update the host data structure.

Change-Id: I93232429fe5c2aa12dc4bf9f6a2f014761b7df15
CRs-Fixed: 3350697
2022-12-05 13:03:47 -08:00
Sai Pratyusha Magam
c87c0928b1 qcacmn: Add Keyix param for PN request to FW
Add Keyix param for PN request cmdid and event to FW
WMI_PEER_TX_PN_REQUEST_CMDID,
WMI_PEER_TX_PN_RESPONSE_EVENTID

Change-Id: I2803fdfaa20fae543cf0de34dd5c3f0966f2d605
CRs-Fixed: 3345914
2022-12-03 11:34:15 -08:00
Surya Prakash Raajen
6a2a1f1a5e qcacmn: Add vdev wmi cmd and event support t2lm ie info
Add support for vdev level WMI Command and event to send
and receive t2lm ie info

CRs-Fixed: 3339695
Change-Id: I8b896a961cba8f1d8e11111f900a98da090b9513
2022-11-27 12:31:47 -08:00
Divyajyothi Goparaju
7a737732fe qcacmn: Define set params for no host to target conversion
Currently if ENABLE_HOST_TO_TARGET_CONVERSION is defined,
host pdev/vdev set params can be translated to
target pdev/vdev set params through APIs
convert_host_pdev_param_tlv,convert_host_vdev_param_tlv.
If ENABLE_HOST_TO_TARGET_CONVERSION is not defined,
host pdev/vdev set params in
common code is sent to firmware directly, which is incorrect.

Define pdev/vdev set params in such away they represents
host params on ENABLE_HOST_TO_TARGET_CONVERSION enabled and
target params on ENABLE_HOST_TO_TARGET_CONVERSION disabled.

Change-Id: I5718c76c351b2d7904d8bf8b603073ffcb0a039d
CRs-Fixed: 3321556
2022-11-18 11:52:27 -08:00
Will Huang
f8f0b97ffa qcacmn: Add APIs to configure target AFC flags
Add common code to configure target AFC flags:
enable_6ghz_sp_pwrmode_supp, afc_disable_timer_check,
afc_disable_request_id_check.

Remove cfg_get set is_afc_reg_noaction code, add it to psoc regulatory
private data.

Add APIs to set and get these AFC configures.

Change-Id: Idf74b245113eee18b071a7fbb92bb151cd535ce8
CRs-Fixed: 3154185
2022-11-17 15:35:45 -08:00
Basamma Yakkanahalli
23001226b9 qcacmn: Critical update signaling for 20TU Probe Response
Critical update is the explicit signaling for STA to notify
any change in BSS param.

Present support is there for beacon, host notify to FW by
updating current link CU param in wmi_bcn_tmpl_ml_info TLV
of BCN TMPL CMD by setting the corresponding cu_vdev_map
for category 1 / category 2 based on change in critical
update params of ML VDEV.

The same Critical update signaling is extended to 20TU
unsolicited broadcast probe response.
In 6 GHz link host notify the same category 1 / category 2
cu_vdev_map critical update params of ML VDEVs in 20TU
enabled group wmi_prb_tmpl_ml_info TLV of WMI_PRB_TMPL_CMD.

CRs-Fixed: 3314429
Change-Id: I84dbd1901c5a3f2ef28f981c581fd7350d147829
2022-11-14 11:11:46 -08:00
Hariharan Basuthkar
9b699d0eb9 qcacmn: Add WMI_SERVICE_EIRP_PREFERRED_SUPPORT service bit
Add WMI support for WMI_SERVICE_EIRP_PREFERRED_SUPPORT service bit,
which indicates that the target prefers EIRP in the
WMI_VDEV_SET_TPC_POWER_CMD_ID.

Change-Id: I1433bd698e124336082e12f509f271c9dd7df40a
CRs-Fixed: 3307372
2022-10-22 19:48:49 -07:00
Rachit Kankane
a9083f7afe qcacmn: Add macro for Spatial Reuse
Add below macro for SR:

1. HESIGA_Spatial_reuse_value15_allowed bit
2. NON-SRG PD disabled threshold
3. Minimum PD Threshold
4. Add service bit - wmi_service_obss_per_packet_sr_support

Change-Id: I9560518cadc5c6f916579af63ef44d41c748fd8d
CRs-Fixed: 3307369
2022-10-17 06:48:16 -07:00
Jeff Johnson
bf756f06de qcacmn: wmi: Fix misspellings
Fix misspellings in wmi/...

Change-Id: I7fe506919cf382e3c19feeee550ce41646c974df
CRs-Fixed: 3304705
2022-10-15 12:12:39 -07:00
Ashish Kumar Dhanotiya
a55da582be qcacmn: Update vendor1 requirement1 version for feature set
With change update vendor1 requirement1 version to the latest
version 3.3.

Change-Id: I56df41ca093d4d4dd3db5aa01c630fa61f976b8d
CRs-Fixed: 3309525
2022-10-14 13:43:05 -07:00
Ashish Kumar Dhanotiya
4432410b9c qcacmn: Add support to send band capability to fw
Currently host does not update band capability to fw as
part of feature set info.
With this change update band capability as well as part of
feature set info.

Change-Id: I09982f2f1b7b831a62f6f4db97691aeb4a4fb894
CRs-Fixed: 3303427
2022-10-06 15:15:45 -07:00
Bing Sun
fbcb2bb588 qcacmn: Define WMI_HOST_PEER_* for no host to target conversion
Currently if ENABLE_HOST_TO_TARGET_CONVERSION is defined, WMI_HOST_PEER_*
can be translated to WMI_PEER_* through API
convert_host_peer_param_id_to_target_id_tlv.

If ENABLE_HOST_TO_TARGET_CONVERSION is not defined, WMI_HOST_PEER_* in
common code is sent to firmware directly, which is incorrect.

Define WMI_HOST_PEER_* to WMI_PEER_* if ENABLE_HOST_TO_TARGET_CONVERSION
is not defined. Then WMI_HOST_PEER_* can be used in common code.

Change-Id: I50aa604d8822a81eed223c8551e542007929424e
CRs-Fixed: 3271470
2022-09-16 16:31:31 -07:00
Naveen S
d276b0eda6 qcacmn: Add feature flag for Health Monitor Feature
Adding feature flag for Health Monitor so that it can be disabled
for 16M and 256M profiles

CRs-Fixed: 3277434
Change-Id: Ibbbe582acd15ebff7e189fcbaa36429ea519db37
2022-09-09 04:08:54 -07:00
Jithender Miryala
354a68e77c qcacmn: Add host-FW handshake for 320 MHz bang radar support
FW-Host Handshake for BANG_RADAR_320_SUPPORT
1. FW advertises its capability of processing BANG_RADAR_320_SUPPORT
id via wmi service bit 'wmi_service_bang_radar_320_support'.
2. If the host is capable of processing the "BANG_RADAR_320_SUPPORT"
event id, host sends the capability in WMI_INIT_CMDID setting a bit in
host_service_flags

Change-Id: Ia26a7b8e8ee78aceb801d0053770379bd6d5a9cb
CRs-Fixed: 3270525
2022-09-04 23:13:54 -07:00
Venkateswara Swamy Bandaru
5b61207f4c qcacmn: Update peer_chan_width_switch_info
Update peer_chan_width_switch_info as per latest
fw common header file to include puncture parameter.

Change-Id: I1a68991ed8b9c653d31c4bc0c3ad3660d1104de3
CRs-Fixed: 3278709
2022-09-03 12:32:54 -07:00
Venkateswara Swamy Bandaru
8a0afca1e2 qcacmn: Add Support for setting puncture bitmap peer param
Add Support for setting puncture bitmap peer param

Change-Id: I819ef2b56fbc5d0240cbb1702fe5b2da2c4f5ec0
CRs-Fixed: 3278857
2022-09-03 06:21:52 -07:00
Gururaj Pandurangi
9fa8fc8b46 qcacmn: Add API to extract MSD caps from cmn info field
Add API to extract MLD AP MSD capabilities from MLO IE
common info field if present. This will be shared with FW
via peer assoc cmd.

Change-Id: I0ebcd5408a40f3314932d4a2a7e586c208af2ee5
CRs-Fixed: 3271118
2022-09-02 21:00:31 -07:00
Sheenam Monga
46644d2926 qcacmn: cleanup key_rsc_counter pointer from set key param
Remove unused param key_rsc_counter of set_key_param
structure, as key_rsc_ctr is used to send key rx sc
counter to fw and rename key_rsc_ctr to key_rsc_counter
as win is using key_rsc_counter.

Change-Id: Id58aabb30d772f8f620ac9f96890fcac0193777b
CRs-Fixed: 3256574
2022-08-29 10:00:47 -07:00
Jianmin Zhu
fa9ac21bbd qcacmn: Fix assert for deauth sent on inactive link
Set WMI_MLO_MGMT_TID for mlo link agnostic mgmt frames

Change-Id: I385c1e9b50bc9ef6fe5f8875e0408bb2afca8945
CRs-Fixed: 3269920
2022-08-23 21:02:56 -07:00
Divyajyothi Goparaju
3ec79c4856 qcacmn: Optimize vdev and pdev set param command frequency
Currently host sends many vdev or pdev set param commands
separately to firmware.

Combine all vdev or pdev set params together where ever
possible, send to WMI.Based on service capability
WMI_SERVICE_COMBINED_SET_PARAM_SUPPORT, host decides whether
to send all set params to firmware at once to reduce number of
transactions or need to follow legacy way i.e send params
separately one after the other.

Change-Id: I0a36dd66a7ccb27f2ecd437cf7b9d08667e27472
CRs-Fixed: 3151418
2022-08-23 15:17:07 -07:00
Sham Muthayyan
1e28e45ce7 qcacmn: Add WMI health monitor events
Add WMI health monitor events to send the health
monitor data to application.

Change-Id: I792b733822b03518dc964f38fe4a158132b0ac49
CRs-Fixed: 3266229
2022-08-21 00:37:39 -07:00
Yu Wang
67011a392c qcacmn: add support for CoAP
Add support for Constrained Application Protocol.

Change-Id: I425206a990778cf946a4805192eff4d54562a945
CRs-Fixed: 3254128
2022-08-17 23:14:34 -07:00
Ashish Kumar Dhanotiya
ae8d97dcac qcacmn: Send feature set info to fw in wmi init command
Based on new requirement, driver needs to send feature set
information to fw as part of wmi init command.
With this change, fill the feature set info in feature set bitmap
and send this to fw with wmi init command.

Change-Id: Ic405c7e8e5ddd1399deacfaab240e979468c53c2
CRs-Fixed: 3262862
2022-08-12 18:55:50 -07:00
Ashish Kumar Dhanotiya
09c76ef447 qcacmn: Parse file name info as well from oem data event
Based on new requirement parse file name info as well from
oem data event.

Change-Id: Ifd4d086402821cd42e267f48879dc31a74017fa1
CRs-Fixed: 3262696
2022-08-12 04:28:32 -07:00
Ashish Kumar Dhanotiya
e1e2b8e42f qcacmn: Add support for feature set event capability
Add support for feature set event capability.

Change-Id: I6bfaaf5845722cde47602b6eb8d2bf205151cffd
CRs-Fixed: 3262642
2022-08-11 15:23:37 -07:00
Shiva Krishna Pittala
8641a158f3 qcacmn: Hook the UMAC reset in the target attach path
Call UMAC reset initialization API from soc_attach_target().
FW exposes a service bit for this feature, use that to conditionally
enable this feature. Also, add default log levels for this feature.

CRs-Fixed: 3253464
Change-Id: Ia7c9cf07a7ab7b000ebe452ab074a82173b70129
2022-08-03 07:35:26 -07:00
Paul Zhang
dfb517c3f8 qcacmn: Enhance congestion report
Enhance congestion report by pdev extend stats.

Change-Id: I88e8456fa1e2cbe4f3aa8e94138dafba1166c9a9
CRs-Fixed: 2951006
2022-08-03 01:34:33 -07:00
Jianmin Zhu
3b39d67856 qcacmn: Send roam param by QMI
If found rx link speed change from good to poor, or poor to good, need send
to F/W. It may happen frequently. To avoid power side effect, send to F/W
by QMI instead of WMI.

Change-Id: I2e7ddd3ae539257c6b195cb13da221f886debbba
CRs-Fixed: 3255042
2022-08-02 08:54:48 -07:00
Nidhi Jain
69b1820753 qcacmn: Add support for wmi halphy stats event path
Added event path support for halphy stats.

CRs-Fixed: 3242406
Change-Id: Ic4820f20ad09a027cec3ae11d746d8bcc084872a
2022-07-27 03:52:52 -07:00
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
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
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
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
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
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
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