Commit Graph

886 Commits

Author SHA1 Message Date
Rhythm Patwa
7a9dc17c65 qcacmn: Add support for AFC Host service flags
Add support for AFC specific Host service flags to switch
between LPI only and SP+LPI, disable AFC timer and request ID checks
in target.

Change-Id: I34d6adcad6e4a2cd6383c941ed07b98059daeed0
2021-08-31 22:23:51 -07:00
Kiran Venkatappa
718f574750 qcacmn: MLO setup, teardown, ready WMI API
Add WMI APIs for MLO setup, ready and teardown command send and extract
routines

Change-Id: If986124032c4fb9bb3ed2ffbf2ac6db8fe9e0f1f
CRs-Fixed: 2981067
2021-08-31 07:54:54 -07:00
Subrat Dash
8525330652 qcacmn: Add WMI support to send the wds AST commands to fw
Add host WMI APIs to send WMI_PEER_ADD_WDS_ENTRY_CMDID,
WMI_PEER_REMOVE_WDS_ENTRY_CMDID, and WMI_PEER_UPDATE_WDS_ENTRY_CMDID
to the Fw.

Change-Id: I32afdac7c366b647ee3196bcb76531295e640b8b
CRs-Fixed: 2997227
2021-08-31 05:39:37 -07:00
Srinivas Dasari
92ba4703ca qcacmn: Add roam_pmkid_request to wmi_ops
Add extract_roam_pmkid_request to wmi_ops to allow cld driver
to register the corresponding callback.

Change-Id: Ifa9cd73d6d62e7411b78b15086d7e166559f6d1c
CRs-Fixed: 3014249
2021-08-28 00:29:38 -07:00
Vijay Patil
e5748271d3 qcacmn: Add extract_auth_offload_event to wmi_ops
Add extract_auth_offload_event to wmi_ops to allow cld driver to
register the corresponding callback.

Change-Id: Ie3417f44360021570ce678ce1c3f949a92424494
CRs-Fixed: 3010510
2021-08-28 00:29:33 -07:00
Utkarsh Bhatnagar
b7ab2f5cd7 qcacmn: Add support for Thermal Stats Events
Add support for extracting Thermal Stats Events
from thermal event TLV for FW event
WMI_THERM_THROT_STATS_EVENTID.

Also, added support for FW Cmd to request for
Thermal Stats: WMI_REQUEST_THERMAL_STATS_CMDID

Change-Id: I2bc80d082bda45e2255371bcb0c31d35d9806525
CRs-Fixed: 3016845
2021-08-27 10:23:50 -07:00
Hariharan Basuthkar
21ee351e31 qcacmn: Extract AFC event in WMI layer
Extract the parameters of the WMI_AFC_EVENTID in WMI.

Change-Id: I086f095beb0961dfd7d3813c68e2caedf65a596d
CRs-Fixed: 3023089
2021-08-26 15:48:12 -07:00
Basamma Yakkanahalli
4597a3b4ad qcacmn: Increase WMI_BEACON_TX_BUFFER_SIZE to support 2.3k 20TU prb res
Redefine WMI_BEACON_TX_BUFFER_SIZE for WIN AP as 2500 bytes to support
2.3k 20 TU probe response.

Change-Id: Ia3414b9e49dfbe3839c7b993da74de8d963c24a4
2021-08-26 12:58:36 -07:00
Sai Pavan Akhil Remella
5adde265e2 qcacmn: Add extract_roam_stats_event to wmi_ops
Add extract_roam_stats_event to wmi_ops to allow cld driver to register
the corresponding callback.

Change-Id: I77ebb05a1a2ce9fa0b2f2f2ffb50c523ab9070e6
CRs-Fixed: 3007690
2021-08-24 13:12:53 -07:00
Aakanksha Doda
52595dc304 qcacmn: Add changes to extract halphy_cal_status from FW
Add changes to get halphy_cal_status properly from FW
defined variables to host.

Change-Id: I891420e0d021702553c69569d71db394e897067e
2021-08-23 15:44:10 -07:00
Shiva Krishna Pittala
57543be336 qcacmn: Add WMI layer functionality for MGMT Rx REO filter config command
WMI_MGMT_RX_REO_FILTER_CONFIGURATION_CMD is used to the configure re-order
criterion for incoming management frames. Add WMI layer support for the
same command.

Change-Id: If1498fd4fbccd86e7d54d9eac268868b36523d06
CRs-Fixed: 2960472
2021-08-21 13:06:51 -07:00
Shiva Krishna Pittala
361f45dd82 qcacmn: Add APIs to extract MGMT Rx REO params tlv
When MGMT Rx REO feature is enabled, FW will be sending MGMT Rx REO
parameters TLV as part of WMI_MGMT_RX_EVENTID for the frames that require
reordering. Add APIs to extract the same.

Change-Id: I57b132927cf413384d680b5778bfe6a2e2737adf
CRs-Fixed: 2960471
2021-08-21 13:06:43 -07:00
Aditya Kodukula
e668136ffc qcacmn: Support Multicast Domain Name Server Offload
The purpose of the multicast Domain Name System (mDNS) is to resolve
host names to IP addresses within small networks that do not include
a local name server.

It utilizes essentially the same programming interfaces, packet formats
and operating semantics as the unicast DNS, and the advantage is zero
configuration service while no need for central or global server.
Based on mDNS, the DNS-SD (Service Discovery) allows clients to discover
a named list of services by type in a specified domain using standard
DNS queries.

Here, we provide the ability to advertise the available services by
responding to mDNS queries.

Change-Id: Ie6a3cd319d219c2f338d83f4bdbd704a090711c4
CRs-Fixed: 3008552
2021-08-20 22:02:19 -07:00
Shiva Krishna Pittala
a52614b732 qcacmn: Add WMI layer functionality for MGMT Rx FW consumed event handler
When MGMT frames are consumed by the FW, FW sends MGMT Rx FW consumed event
to the Host. Add WMI layer functionality for this event handling.

Change-Id: Id95f41a717b88589e861781e1111b17dc90475be
CRs-Fixed: 2959118
2021-08-20 12:57:21 -07:00
Naveen S
d73851c8e5 qcacmn: update for new wmi cmd and evt
Support WMI command/events to dynamically enable/disable calibration in FW
command: set_halphy_cal
command usage: cfg80211tool set_halphy_cal <<value>> <<channel>>
value: bitmap value to be passed ( 0 - 1023)
channel: 0 (home), 1 (scan), 2 (both)

Change-Id: I1d3ab39cf24d0880bf5feac5749b5a93e6d03761
2021-08-18 05:17:12 -07:00
Deeksha Gupta
cd01dad898 qcacmn: Add new TWT teardown status code
Add new TWT teardown status code to indicate host teared
down the TWT session due to PS disable.

Change-Id: I49c2d7bb1abc4ceb4f79b833cbafcb44e8b936fe
CRs-Fixed: 3013358
2021-08-17 13:18:01 -07:00
Arun Kumar Khandavalli
09cd3e0dd9 qcacmn: fill htt peer data version as part of init cmd
With latest architecture there are different HTT peer
data versions supported by the firmware, supported htt peer
version will be sent in the service ready and need to feedback
to the firmware in the init command.

Change-Id: Icd0470843198387cd7e0192cbe3821d45ef0534e
CRs-Fixed: 3008706
2021-08-12 03:14:29 -07:00
Amruta Kulkarni
693dbbdf2f qcacmn: Wma to target_if migration for roam sync
Roam sync event wma to target_if migration.

Change-Id: I6992675f4260120134563292e0b189132a955d48
CRs-Fixed: 3001497
2021-08-07 02:59:06 -07:00
Edayilliam Jayadev
3b08d50258 qcacmn: Add pdev params to enable/disable tx in DFS channels
Add pdev params to enable/disable transmissions
in DFS channels for scan radio.

CRs-Fixed: 2993345
Change-Id: I0f09c2506ad1f5b7841fed16edf1d00a2aafed96
2021-08-05 08:28:39 -07:00
Surya Prakash Raajen
770f172138 qcacmn: Support vdev level command for mcast steering
Support vdev level command to enable/disable per packet beamforming

CRs-Fixed: 2994832
Change-Id: I3623002764cac49b3880a6345ec00cefaf0b467b
2021-08-05 04:12:06 -07:00
Gyanranjan Hazarika
6f86a02b32 qcacmn: Add ema_init_config to target_resource_config
Add new field ema_init_config to signal the configured value of
beacon size while using MBSSID feature in 6Ghz.

The current allowed range is 1500-3500 bytes.

CRs-fixed: 3004041
Change-Id: Id8cc1b7e4602b2e52b8eb215337070c6e3c26089
2021-08-03 19:54:48 -07:00
sheenam monga
b8483edd35 qcacmn: Add P2P_P2P_CONCURRENCY_SUPPORT wmi service support
Add P2P_P2P_CONCURRENCY_SUPPORT service capablity to
validate whether fw can support p2p concurrency
support or not. when firmware advertises this flag it
can support MCC,SCC, DBS for p2p-GO/GC + p2p-GO/GC.

Change-Id: Ifec4bf984595b06374be9024601733c8537a9c3e
CRs-Fixed: 2984165
2021-08-03 17:34:10 -07:00
Shashikala Prabhu
503a5adb9c qcacmn: Add a function pointer to convert host vdev param to FW
Add a function pointer to a function that converts host vdev param to FW
vdev param.

Change-Id: I01557d8bd87cb82548114626ff726aabba01dd19
CRs-Fixed: 3005160
2021-08-03 04:36:26 -07:00
Srinivas Dasari
938fd64017 qcacmn: Add extract_roam_scan_chan_list to wmi_ops
Add extract_roam_scan_chan_list to wmi_ops to allow cld driver
to register the corresponding callback.

Change-Id: I71b17b807d183aff31b73a4732d368d1525c118e
CRs-Fixed: 2990390
2021-07-30 21:51:40 -07:00
Srinivas Dasari
ad437e38ec qcacmn: Add extract_vdev_disconnect_event to wmi_ops
Add extract_vdev_disconnect_event to wmi_ops to allow cld driver
to register the corresponding callback.

Change-Id: I3fb891f9a0b4afc92c8a456b2a8fe17bcfecaefa
CRs-Fixed: 2990389
2021-07-30 21:51:35 -07:00
Srinivas Dasari
34285d8716 qcacmn: Add extract_btm_bl_event to wmi_ops
Add extract_btm_bl_event to wmi_ops to allow cld driver to register
the corresponding callback.

Change-Id: I1734f577b07f8c54924a83d3d367e8cdba07f41c
CRs-Fixed: 2990385
2021-07-30 21:51:30 -07:00
Srinivas Dasari
07e4d152fe qcacmn: Add extract_roam_event to wmi_ops
Add extract_roam_event to wmi_ops to allow cld driver to register
the corresponding callback.

Change-Id: I812105a1a81060de0de3f6b9857257e79aa23fc1
CRs-Fixed: 2990384
2021-07-30 14:29:49 -07:00
Shashikala Prabhu
b2f8ff4e7f qcacmn: Add support for multiple vdev set param WMI API
Add support for multi vdev set param WMI API to send vdev param for
multiple vaps.

Change-Id: If7381f0b242cacff0817e6bdc16606d3d776b48d
CRs-Fixed: 2994278
2021-07-30 11:46:48 -07:00
Shashikala Prabhu
3925ddf85b qcacmn: Add WMI MLO params for CSA beacon template
A new TLV is added to send partner link CSA/ECSA count offset to FW as
part of beacon template. Add WMI changes to populate these TLVs in the
beacon template send function.

To fix the compilation issue, added forward declaration of 'struct
vdev_mlme_obj' and removed 'include/wlan_vdev_mlme.h' include file from
wlan_mlo_mgr_public_structs.h.

Change-Id: I6e421b29bb887bec711a23db1458aca4d112ade4
CRs-Fixed: 2983249
2021-07-21 21:08:55 -07:00
Jyoti Kumari
e831cf3415 qcacmn: Handle TWT ack event support in wmi init
In WMI INIT, check whether firmware supports the ack event or
not. If it supports then enable driver support and send it to
firmware during WMI INIT.

Change-Id: Icfdee6bc06e6a393de880b87fdab70665ea7c8b4
CRs-Fixed: 2987898
2021-07-20 16:35:51 -07:00
Jyoti Kumari
fc3c62d771 qcacmn: Add support for TWT ack event
In case if TWT command (i.e setup, terminate, pause, resume,
nudge) comes from userspace and if the firmware is in below mode
1. scan in progress
2. roam in progress
3. CSA is in progress or
4. Any other error
then the command needs to be rejected in userspace context.

Synchronize the TWT command so that whenever command goes from
driver to firmware, then driver will receive ack event first
followed by respective event (i.e add dialog, delete dialog,
pause, resume, nudge) with below condition
1. If driver receives the ack event as successful then driver
   waits for this ack event, respective event with status of the
   TWT action frame over the air is expected.
2. If driver receives the ack event as failure then it will
   rejects the TWT command in userspace context.

Change-Id: Ie885d98ecf2dad98d34676d889fd70e4c84f0a05
CRs-Fixed: 2987904
2021-07-20 11:09:21 -07:00
Jyoti Kumari
43c413bc3b qcacmn: Add TWT service bit capability support for ack event
Add TWT service bit capability support to check whether firmware
supports ack event or not. If firmware doesn't support ack event
then service bit capability will become 0 and whenever TWT
command comes, host will not wait for ack event and sends command
in a legacy way.

This support is mainly added to handle new host and old firmware
combination.

Change-Id: I55d373c2e017130b58a4b332da16f0eda8f34eba
CRs-Fixed: 2987749
2021-07-17 08:23:20 -07:00
Shwetha G K
90e7ec13c7 qcacmn: Extract AoA phase delta from WMI event
Changes to extract AoA phase delta values from WMI event.
The AoA phase delta values along with ibf calibration value
is shared to derive the phase values which is to be used in
CFR.

Change-Id: I70f50656db4194025a0b6b37c8b4a27048968e0f
2021-07-16 06:19:59 -07:00
Surya Prakash Raajen
61c188189e qcacmn: Add support for beamforming in mgmt frames
Add support for enable beamforming in mgmt frames to FW.

Change-Id: I0b7f8d13b6fc399d6255b217f5a53cd3c595fa51
CRs-Fixed: 2976861
2021-07-15 01:59:32 -07:00
Shashikala Prabhu
ea157e3a14 qcacmn: Read AP initiator burst and staggered service bits
Check the below service bits and set in psoc if the service is supported
by  FW.

WMI_SERVICE_RTT_AP_INITIATOR_STAGGERED_MODE_SUPPORTED
WMI_SERVICE_RTT_AP_INITIATOR_BURSTED_MODE_SUPPORTED

Change-Id: I13504958bf31b2d645d915b4db20719bdc9a4133
CRs-Fixed: 2969195
2021-07-14 10:33:01 -07:00
Venkateswara Swamy Bandaru
a071b03bcd qcacmn: Add WMI support for EHT puncturing
Add WMI support for EHT puncturing by filling puncture
bitmap in vdev start and peer assoc commands.

Change-Id: If1d2541655558f22a96a741999ec4ff7348f695a
CRs-Fixed: 2982498
2021-07-14 02:05:18 -07:00
Amruta Kulkarni
e962074dd7 qcacmn: Roam sync frame event wma cleanup
Wma to target if migration for ROAM SYNC FRAME EVENT

Change-Id: I6f61ff94f4b9e600e025284a82c060e1598edd13
CRs-Fixed: 2987272
2021-07-12 19:12:12 -07:00
Hariharan Basuthkar
9f2a6a4040 qcacmn: Add wmi_support to send AFC cmd to the FW
Add Host WMI APIs to send the WMI_AFC_CMDID to the FW.

Change-Id: I6849826ab4596f3c76b2dea3cb76116be46b4dd6
CRs-Fixed: 2985645
2021-07-08 04:50:04 -07:00
Alan Chen
a390375589 qcacmn: Add resource config flag to enable dynamic_pcie_gen_speed
Add resource config flag to enable dynamic_pcie_gen_speed.

Change-Id: Ieb61ca183b7544aa31dee08f047da1de8bfec21f
CRs-Fixed: 2977084
2021-07-07 06:41:49 -07:00
Aakanksha Doda
e175d5124c qcacmn: Add cmn_dev changes to get ANI status from FW
Add changes to send a command and in return, get an event
giving ANI status from FW.

Change-Id: I327e6134fef17bc4dc98b99d1ca4bc4d0a039625
2021-07-06 06:53:43 -07:00
Linux Build Service Account
b845bfdce4 Merge "qcacmn: Add WMI support for AWGN interference detection" 2021-06-30 04:12:54 -07:00
Yu Wang
15c52e32f7 qcacmn: Add WMI support for AWGN interference detection
Add APIs to extract AWGN information from the DCS WMI
interference event received from FW.

Change-Id: I4b2f9f4ef012553dac2a405dc7ac12aef9452354
CRs-Fixed: 2958675
2021-06-29 23:49:31 -07:00
abhinav kumar
96f19b772c qcacmn: Add support to print candidate rssi in kmsg
First Requirement:
In case of WTC_BTM roam trigger reason, if FW reports rssi
threshold for 5G and 6G AP via wmi_roam_trigger_reason,
Host should print it in kmsg.

If wtc_candi_rssi_ext_present is set (1), It means fw
reports 5g and 6g candidate rssi (new firmware case).
If wtc_candi_rssi_ext_present is clear (0), It means fw
doesn’t report 5g and 6g candidate rssi (old firmware case).

Host use flag "wtc_candi_rssi_ext_present" to keep backward
compatibility.

Second requirement:
As per user space, value for scan mode in WTC command, is
like below:
0: no Scan, 1: partial scan and 2: full scan.

For NO scan case, FW sends value
ROAM_TRIGGER_SCAN_MODE_NO_SCAN_DISCONNECTION (3)
in wmi_roam_trigger_reason-> wtc_scan_mode. When driver receives
WTC scan mode as ROAM_TRIGGER_SCAN_MODE_NO_SCAN_DISCONNECTION,
it should print value as 0 instead of 3.

Convert WTC scan mode comes from FW to
wmi_configure_roam_trigger_parameters->scan_mode to make it
compatible to WTC command.

Change-Id: I8266460aac1272d345e4349c2ca52b4f9a745d4c
CRs-Fixed: 2965362
2021-06-29 12:45:46 -07:00
Balaji Pothunoori
ae2a90d9fc qcacmn: add wmi service for tx aggregation support
Add wmi service to differentiate max tx aggr support
from firmware.

Change-Id: I2f9a4101815b06b41d4a75d888e30ee42b9307ec
CRs-Fixed: 2959207
2021-06-25 11:56:36 -07:00
Surabhi Vishnoi
6663105f9b qcacmn: Add support to handle wmi smart monitor event
Add functions to parse and extract wmi smart monitor
event received from target.

Change-Id: Ic18e3134b684c5f8e12839e997d628909a7e27c9
CRs-Fixed: 2969247
2021-06-25 09:40:32 -07:00
Hariharan Basuthkar
2234d80a72 qcacmn: Make 6G edge channel APIs common
Currently the 6G edge channel feature is MCC specific.
Make the 6G edge channel feature common for WIN and MCC.

Change-Id: I723b6db1d74dca5a911eede4ec6e6167f6b3e6bc
CRs-Fixed: 2976871
2021-06-25 07:20:05 -07:00
Kiran Venkatappa
8b5f8ef911 qcacmn: Add WMI MLO params for peer assoc command
New TLVs for MLO flags are introduced in peer assoc WMI
command. Add WMI changes to add these TLV in the peer assoc
command.

Change-Id: I366a96c973c3bedda03e4c370099ff809e0bd83d
CRs-Fixed: 2958851
2021-06-22 01:38:37 -07:00
Kiran Venkatappa
9b1509ec99 qcacmn: Add WMI MLO params for peer create command
New TLVs for MLO flags are introduced in peer create WMI
command. Add WMI changes to add these TLV in the peer create
command.

Change-Id: I38a129b30b366b6e3939231699f210d1bac362a1
CRs-Fixed: 2958849
2021-06-22 01:38:32 -07:00
Yu Wang
dcd269c55a qcacmn: enhance crypto api to install key synchronously
Add parameter 'bool sync' for wlan_cfg80211_crypto_add_key()
to indicate whether or not to add key synchronously.
If it's set to true, wait until install key complete event
is received.

Change-Id: I9a69d486665fb3f65a5720ccfbfb638c09329418
CRs-Fixed: 2865832
2021-06-21 23:14:27 -07:00
Kiran Venkatappa
18a1a3d4a5 qcacmn: Add WMI MLO params for vdev start
New TLVs for MLO flags and partner link info are introduced in vdev
start WMI command. Add WMI changes to add these TLV in the vdev start
command.

Change-Id: Ic7d54c406f69346a6eedb43b1ebcf7266c448bd8
CRs-Fixed: 2958843
2021-06-17 20:09:45 -07:00