Commit Graph

597 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
Shwetha G K
e875fdf64e qcacmn: Extract mcs & gI info from peer tx event
Changes to extract mcs rate and gI from cfr peer tx
capture event.

Change-Id: Ia64807aed4559466dc25f20928ed8c43ae77be62
2021-06-15 08:02:40 -07:00
Jia Ding
2f7b7dbabf qcacmn: Set max EHT rate set to 4
802.11BE D1.0 9.4.2.295c.4 Supported EHT-MCS And NSS Set
field specifies maximum 4 optional EHT MCS map, which are
20 MHz-Only STA, BW <= 80 MHz except 20 MHz-Only STA,
BW = 160MHz and BW = 320 MHz.

Therefore set WMI_HOST_MAX_EHT_RATE_SET to 4.

Also add a debug message to log peer_flags_ext.

Change-Id: I3d56998bf0de381ef147d6c0551dcdb7fd935f60
CRs-Fixed: 2963536
2021-06-14 06:28:20 -07:00
Srikanth Marepalli
6a7cbdde53 qcacmn: Add the support for SAE EAPOL handshake offload
Set the SAE EAPOL offload support in resource config based on
WMI_SERVICE_SAE_EAPOL_OFFLOAD_SUPPORT bit received in service
bitmap from Firmware.

Change-Id: I878736105c070df514dfe8d989541227b3baad11
CRs-Fixed: 2957082
2021-06-07 22:54:50 -07:00
sheenam monga
b4602b3fea qcacmn: Add support to fetch BIG DATA fw cap
Add support to fetch fw capbality to handle
BIG data feature.

Change-Id: I3672230a26e2502164e991916404a5f6450f218e
CRs-Fixed: 2937221
2021-05-27 06:03:42 -07:00
Aditya Sathish
7cd924cef5 qcacmn: Add support for EHT preamble
Add a new enum to the WMI_HOST_RATE_PREAMBLE to
support EHT rates.

CRs-Fixed: 2948129
Change-Id: I738e5d563146b7af88ae3c053df4dc049d7d08c6
2021-05-20 17:57:43 -07:00
Venkateswara Swamy Bandaru
38f2c1baf2 qcacmn: WMI changes for setting eht op
Add WMI support for setting eht op in vdev start wmi command.

Change-Id: I7eb0e7e5ace9d78dd060e207c3227d86c3882bee
CRs-Fixed: 2858003
2021-05-11 08:03:27 -07:00
Utkarsh Bhatnagar
141c21c4a7 qcacmn: Add support for TDLS 11ax
Add support for TDLS 11ax

Change-Id: Iec8d9d7356390c6012269ae2840ff2185f61f9da
CRs-Fixed: 2925247
2021-05-10 09:03:12 -07:00
Bapiraju Alla
17f12e5b39 qcacmn: Fill peer assoc mlo params in peer assoc request
Fill peer assoc mlo params in peer assoc request command.
Also add definitions to the WMI_SERVICE_11BE.

Change-Id: Ied7959e022ee27f3bd698b84dc801491175f85b3
CRs-Fixed: 2934417
2021-05-05 04:47:01 -07:00
Hariharan Basuthkar
64fea295c5 qcacmn: Add support for 6% Transmit power scale
In WMI_HOST_TP_SCALE, add an option to support 6% transmit power scale
configuration.

Change-Id: I11a67f0efd13ba2c7f2d8d546643a1af37f33613
CRs-Fixed: 2936987
2021-05-03 10:51:47 -07:00
Shwetha G K
23d574115e qcacmn: Support to get dpd status from FW
WMI changes to rerieve current dpd status from target.

CRs-Fixed: 2885488
Change-Id: Iddfcbf63fccac87b52d3ac242ba078f8210cb6d0
2021-04-19 05:06:55 -07:00
Paul Zhang
cedbb9d221 qcacmn: Support congestion report on multiple interfaces
Support congestion report on multiple interfaces

Change-Id: I8a3dcc006576b26574e072cf6f74daee4925e6be
CRs-Fixed: 2909919
2021-04-14 05:34:26 -07:00
Priyadarshnee Srinivasan
2b51168ba8 qcacmn: Add 11BE wireless mode and NO11BE phybitmap
Extract the 11BE flags advertised by FW in WMI_SERVICE_READY_EXT2_EVENTID
and update the regulatory pdev wireless modes. The wireless mode is
currently represented as 'uint32_t' and all the 32 bits are exhausted.
To accommodate the new 11BE flags, change the data type of wireless_modes
from 'uint32_t' to 'uint64_t'.

Add a regulatory phymode 'REG_PHYMODE_11BE' in enum reg_phymode.

If the chip does not support 11BE phymode, FW advertises it via
WMI_REGULATORY_PHYBITMAP enum with a value of REGULATORY_PHYMODE_NO11BE.
Extract the phybitmap and store it in the regualtory
as 'REGULATORY_PHYMODE_NO11BE' bitmap.

CRs-Fixed: 2901260
Change-Id: I4ed3fc7c907b1f76e59efb347c747acea2a163b0
2021-04-12 05:42:52 -07:00
Venkateswara Swamy Bandaru
216478aaae qcacmn: EHT changes as per latest fw cmn headers
Updated the EHT related variables as per latest fw cmn headers.
Address review comments from previous EHT gerrits.

Change-Id: I67cd58a4efcf3e06d2ca3b5570432593b1d80825
CRs-Fixed: 2902607
2021-04-05 04:45:25 -07:00
Venkateswara Swamy Bandaru
a8e24fd6c0 qcacmn: Add 11be support WMI peer assoc command
Add 320Mhz band width support and EHT capabilities information in
WMI peer assoc command.

Change-Id: Ie4ee95fb1790c828275e90b384b2bdc04efb3f29
CRs-Fixed: 2882054
2021-04-04 04:55:43 -07:00
Venkateswara Swamy Bandaru
b390b57146 qcacmn: Add 11be phymodes support in WMI
Extend phymodes to support 11be phymodes in WMI layer.

Change-Id: I98e7f5eac90952ed7daf26745fc9731c128756e5
CRs-Fixed: 2881926
2021-04-01 23:35:57 -07:00
Venkateswara Swamy Bandaru
11f4850bfd qcacmn: Initialization changes for 11be
EHT capapilities will be received as part of ext2 service ready message.
Update the structure as per firmware common header file and extract the
EHT capabilities field.

Change-Id: Id2dd170db4de588008742f95493d4d06a6431f1c
CRs-Fixed: 2857802
2021-04-01 06:11:30 -07:00
sheenam monga
937c5c5af7 qcacmn: Read fw capability to offload igmp
Read fw capability to support igmp offload

Change-Id: I87ff7b07a5add99d8e9f8234912b656e5b866569
CRs-Fixed: 2904971
2021-03-31 12:06:55 -07:00
Aditya Sathish
e15153c092 qcacmn: Add WMI service support for DCS AWGN
Add support to read the WMI service bit describing support
for the DCS AWGN interference detection mechanism.

CRs-Fixed: 2906768
Change-Id: Id062b9d63a09f522ac1efdbaf6731665fa438630
2021-03-30 01:46:56 -07:00
Aditya Sathish
b14ef93b0c qcacmn: Add WMI support for DCS AWGN interference detection
Add support for storing AWGN interference information for
dynamic channel selection

CRs-Fixed: 2903860
Change-Id: I5d0b6cc0a55303cfb27a02b99aba066557ad9c7d
2021-03-26 00:26:55 -07:00
Gururaj Pandurangi
08148f21fa qcacmn: Enable/Disable 6G edge channels ch2 and ch233
Enable lower 6G edge channel ch2 (5935MHz) for APL2 6G regdmn
using a service bit WMI_SERVICE_ENABLE_LOWER_6G_EDGE_CH_SUPP,
which is not enabled by default.
Also, disable upper 6G edge channel (7115MHz) using another
service bit WMI_SERVICE_DISABLE_UPPER_6G_EDGE_CH_SUPP, that
is enabled by default.

Change-Id: Ia7cb7f7d3165375178adbe70adb19b8671496b6d
CRs-Fixed: 2885623
2021-03-12 02:52:25 -08:00
Priyadarshnee Srinivasan
d617a3a77f qcacmn: FW-Host Handshake for REG_CHAN_LIST_CC_EVENT
In order to support different power levels of 6G AP and client,
the channel list event from FW namely "REG_CHAN_LIST_CC_EVENTID"
is modified to add few parameters specific to 6GHZ devices.
Hence the existing event is replaced by REG_CHAN_LIST_CC_EVENT_EXT for
all 2G/5G/6G pdevs in FW. Therefore, after the service ready event, FW
sends the channel list for the configured country/regdomain via
REG_CHAN_LIST_CC_EVENT_EXT. This mandates that all host software need
to have the processing capability of REG_CHAN_LIST_CC_EVENT_EXT to bring
up the AP.

As there can be host software which has not yet implemented the
version of "REG_CHAN_LIST_CC_EVENT_EXT", backward compatibility is lost
if "ONLY REG_CHAN_LIST_CC_EVENT_EXT" is sent by FW.
Hence a 3 way handshake between host and FW is established.

1. FW advertises its capability of processing REG_CHAN_LIST_CC_EVENT_EXT
id via wmi service bit 'wmi_service_reg_cc_ext_event_support'.
2. If the host is capable of processing the "REG_CHAN_LIST_CC_EVENT_EXT"
event id (which is done based on registration of this event), host
sends the capability in WMI_INIT_CMDID setting a bit in host_service_flags.
3. Based on host capability advertised in WMI_INIT_CMDID, FW decides to
send the old event ("REG_CHAN_LIST_CC_EVENTID") or the new event
("REG_CHAN_LIST_CC_EVENT_EXT").
4. If there is no flag indicated by host to FW in WMI_INIT_CMDID, FW
by default sends the old event ("REG_CHAN_LIST_CC_EVENTID").

CRs-Fixed: 2876360
Change-Id: Ibe95f414ad9fff0e5641bcc6e60450ef9afe245b
2021-03-11 19:43:58 +05:30
Abhishek Ambure
cd38c6bd4e qcacmn: Add host support for OCV service supported by FW
FW advertises WMI_SERVICE_OCV_SUPPORT bit in service ready event if
firmware supports Operating Channel Validation feature.

Change-Id: Ida1ee9874f9cd32a684ceee728e3323306137c64
CRs-Fixed: 2880794
2021-02-19 05:40:14 -08:00
Lincoln Tran
98c5d1eef3 qcacmn: Register NDI tx beamform support bit
Add WMI service bit handling for NDI beamforming support.

Change-Id: Ib1a4dc0042510137412f3ad4ded61ea680596978
CRs-fixed: 2876723
2021-02-18 05:35:10 -08:00
Gururaj Pandurangi
8492c0f971 qcacmn: Add service bit to support backward compatibility
The host will send TPC power to FW via the new WMI cmd
WMI_VDEV_SET_TPC_POWER_CMDID going forward instead of
WMI_VDEV_PARAM_TX_PWRLIMIT to accommodate 6GHz channels.
But, to support backward compatibility for New Host+old FW
the TPC power will be sent to FW via legacy WMI cmds
WMI_VDEV_SET_PARAM_CMDID (during initial connection) or
WMI_VDEV_PARAM_TX_PWRLIMIT (power value change during RRM
req/bcn processing from connected AP) with the help of a
service bit WMI_SERVICE_EXT_TPC_REG_SUPPORT.

Change-Id: Iea1ecb62841c539c13a804ae9c475831b2d4c89c
CRs-Fixed: 2874250
2021-02-16 23:52:09 -08:00
Kai Chen
2667f112d8 qcacmn: Add CBF support for pktlog
Fix issue on enabling packet log.
Fix issue on logging CBF pkt in AP/STA mode.
Fix issue on setting data length 4 bytes aligned in pktlog header
, htt stats indication message header and Rx management TLV header.
Add CBF support for pktlog WMI enable command for firmware to enable
CBF receive.

Change-Id: Ib0067f32d7414be96503c4c67846c1312a59586e
2021-02-10 20:27:29 -08:00
Rajeev Kumar
afdf38701e qcacmn: Add WMI service handling for SAP and GO D3 wow
Add WMI service bit handlign for SAP and GO D3 wow mode
feature support.

Change-Id: I88efbf51d4cb0005f81ad86068f3278457f4eb05
CRs-Fixed: 2869065
2021-02-05 00:30:59 -08:00
Rajeev Kumar
459084ce35 qcacmn: Add SAP and P2P GO d3 wow support feature config
Add SAP and P2P GO d3wow feature support config to send it down
to FW during WMI INIT such that FW is aware when SAP and GO with
client connected mode d3 wow feature is enabled.

Change-Id: I04b398f71727112ce5c536bbf2bfcfd4eefe2752
CRs-Fixed: 2866604
2021-02-01 13:15:46 -08:00