Commit Graph

59 Commits

Author SHA1 Message Date
Balaji Pothunoori
10f5253c35 qcacmn: aggr ba enable set for firmware compatibility
firmware will honor ADDBA aggr size config from host if host
set aggr_ba_enable else default behavior intact.

Change-Id: Iaaf929a74b44ac94370f1d98b7aef7aaec308eff
CRs-Fixed: 2852999
2021-01-21 21:17:00 -08:00
Ananya Barat
6b309b7dbe qcacmn: Enable STA DFS in F/W
If STA DFS is enabled before vdev creation through etc/config/wireless
then VDEV START is sent to F/W as a part of the normal flow to bring
the VAP up. However, if STA DFS is enabled/disabled on the fly for a
running VAP then do a VDEV STOP, followed by a VDEV START of the STA
VAP and set/unset WMI_CHAN_FLAG_STA_DFS flag in VDEV start.

Change-Id: I032ffa53d89eaafcb43c648670af3b3f2134561f
CRs-Fixed: 2843248
2021-01-13 02:34:49 -08:00
Shashikala Prabhu
8c3705336e qcacmn: Add support to send FTM responder/initiator cmd to target
Add support to send FTM responder/initiator support to target.

Change-Id: I6649d90941a7448ff1901a3f1194d8d0620481cc
CRs-Fixed: 2781144
2020-12-21 20:55:11 -08:00
Surya Prakash Raajen
21de33ef5d qcacmn: Add support for preferred streams in multivdev restart
Add support to send preferred_xt_streams and preferred_rx_streams
in multivdev restart.

CRs-Fixed: 2833470
Change-Id: I2c06a8bd9a64b15126e216eeb65699e104cbca64
2020-12-15 11:45:07 -08:00
Jayachandran Sreekumaran
e238ccb793 qcacmn: Add config option to set rts/cts rate
Add config option to set rts/cts rate.

Change-Id: Ifaaca2f60c90508ebbc88e096c6c1ce0b80bb7de
CRs-Fixed: 2771302
2020-09-16 13:40:22 -07:00
Madhvapathi Sriram
904b8cb53b qcacmn: Add support to configure rate mask to cap phy rate
This will help to configure desired rate mask. It can be
used to optimize link performance.

Change-Id: I15b6fbc512d9b0869a6ad6a6f24f1593abf14dae
CRs-Fixed: 2758871
2020-08-27 02:05:47 -07:00
Srinivas Pitla
bf0f1c90b3 qcacmn: Dynamic Tx VDEV config
This change allow Tx VDEV of MBSS mode to configured
dynamically by reset the VDEVs.

This change includes FW service bit parsing, checking
VDEV state of all VDEVs, sending MBSS information in
VDEV start command

Change-Id: I46b13629bd1c07be86b408d72c2967642ce8542e
CRs-Fixed: 2759229
2020-08-26 23:57:44 -07:00
Edayilliam Jayadev
c56100ad57 qcacmn: Indicate special vap type to FW
Special vap type is used by scan radio solutions.
Indicate special vap type to FW through
vdev create WMI command.

CRS-Fixed: 2746724
Change-Id: Ie5e4b059306c5c80d93dba0ebb4810b3e570878f
2020-08-11 14:09:00 -07:00
Abhishek Singh
e2097ddb09 qcacmn: Replace different struct of SISD with struct wlan_ssid
There are different version of SSID structure used in driver, replace
them with struct wlan_ssid.

Also move struct element_info from scan module to generic structures.

Change-Id: Ia32f82d943980c23b4ff478f5a06c5c053036de5
CRs-Fixed: 2721872
2020-07-01 00:26:20 -07:00
Santosh Anbu
ef8a6e1b47 qcacmn: Define restart bitmap using qdf_bitmap
Add change to define restart bitmap using the generalized bitmap
declaration. Also use generalized function to check if any of the
bits are set in the bitmap.

Change-Id: I06859fc089f121559231a7e13bcab63322e5ef9b
CRs-Fixed: 2690914
2020-05-21 12:36:22 -07:00
Gyanranjan Hazarika
333ee0fc2b qcacmn: Add UMAC changes for EMA AP
Enhanced Multi-BSSID Advertisement is an enhancement to the
existing Multi-BSSID feature in terms of advertising
non-transmitted bssid profile using the transmitted bssid
beacon. Mandatory inclusion of RNR IE in lower-band AP
beacon to support Out-of-Band Advertisement of colocated
6Ghz AP may impose limitation in the beacon size. EMA AP
provides a standardized way of overcoming such a limitation

Relevant UMAC changes are:
1. Add fw_caps_ext support bit WLAN_SOC_CEXT_EMA_AP
2. Add vdev_control_flag WLAN_VDEV_MLME_FLAGS_EMA_MODE
3. Support of 32-bit ema_params in beacon_tmpl_params.
The 4 octets in this param field will respectively
indicate ema_beacon_profile_periodicity, ema_beacon_tmpl_idx,
ema_first_tmpl and ema_last_tmpl in the order of low to high

CRs-fixed: 2677701
Change-Id: I3d96fd3becd7609abb2529f977362bfa5401d600
2020-05-06 03:10:19 -07:00
Sumedh Baikady
84bcbc29b5 qcacmn: Add WMI support for Tbtt sync in Multi Soc
Support synchronization of Tbtt in multi SoC case.
Add WMI to send vdev details of one soc to another.
Info includes beacon interval, bssid and tbtt calculated
in host wrt to other Soc.

Change-Id: I465140268b0fe5e0cb69f636ebeb08dc80667cf7
2020-04-28 07:32:27 -07:00
Abhishek Ambure
2ae12c22d3 qcacmn: Retrieve max tx power allowd from vdev start resp
Wlan firmware updates "max tx power allowed" to host in fixed params
of vdev start response event.

Change-Id: Ide0dd7f55ed4b280deaae380670ca5617c018783
CRs-Fixed: 2654017
2020-04-21 01:46:49 -07:00
Gurumoorthi Gnanasambandhan
806b7c72df qcacmn: Beacon protection support
Changes to support Beacon protection. Additional key ix 6 and 7
support BIGTK. Update beacon template for Beacon protection support.

CRs-Fixed: 2632290
Change-Id: Ic37d17f5076bb28d2e1f2430da039cc8b9f759b6
2020-03-30 13:40:07 -07:00
Sumedh Baikady
c673777be4 qcacmn: Add WMI event support for dynamic Muedca
Add support for WMI event to host to process
dynamically selected Muedca values and update
the mgmt frames with the new set of values.

Extract the params and store in Muedca_param
struct from control path, to be used for
updating mgmt frames.

Change-Id: I6cc7756d1a246ff994edef195f6191d280bc5c47
2020-03-14 09:15:20 -07:00
Santosh Anbu
fdd3a5b314 qcacmn: Increase vdev id bitmap size
Add change to increase vdev id bitmap size to the number of vdev ids
bitmap as sent by the FW to avoid memory overflow on host.

Change-Id: I92a2ae31cf0079c989b1788afc61e7f3153dc426
CRs-Fixed: 2626887
2020-02-25 04:48:49 -08:00
Debasis Das
40a60c5196 qcacmn: Extend multi_vdev_restart parameter-list
Extend the parameter-list of the multi_vdev_restart
command to add phymode.

Change-Id: I2d9a48e6721813817ae47e992f5569d379fe2923
2020-01-19 08:28:26 -08:00
Sandeep Puligilla
a94efa0175 qcacmn: SAP is not advertising 20TU probe response
SAP not advertising 20TU probe response when
FILS Discovery is disbaled through ini.

Updated WMI fields to enable 20TU probe response
when 6Ghz SAP is operating.

Change-Id: Idc4b95047d2149f68a68a434afda4d325a5d0547
CRs-Fixed: 2600485
2020-01-17 02:57:48 -08:00
Santosh Anbu
060bf3975a qcacmn: Support multivdev restart response handling
Add UMAC change to support consolidated multi vdev
response handling.

Change-Id: I3383c723a96b1c8009665b00e19aa5aa4bf65bfb
CRs-Fixed: 2595743
2020-01-16 08:08:52 -08:00
Naga
1b9b61e7cd qcacmn: Add API to print start response status
Add inline API to print start response status as string
instead of value.

Change-Id: Ifed90ae2b2fd8b1dc31f35d3debf6bf5020c85c2
CRs-Fixed: 2586089
2019-12-19 03:04:50 -08:00
Sumedh Baikady
48fdc2ddfb qcacmn: Add out of band advertisement in 6Ghz
Add WMI and objmgr support for maintaining RNR
buffer cache and receive tbtt events for all
vdevs using existing tbtt offset WMI.

Change-Id: Idfed63e104e629fbe455d1cf6202cd9b332f5cf9
2019-12-18 11:13:36 -08:00
Akshay Kosigi
71d3820a97 qcacmn: Move vdev_mlme timers to psoc_mlme
Add code to change the vdev_mlme timers to psoc_mlme timers
and also change code to send vdev_delete to FW while physical
destruction of vdev obj.

Change-Id: Ie041182155c75d0cc3825dc97b26abc6be38d76c
CRs-Fixed: 2563931
2019-12-05 11:50:53 +05:30
Arun Kumar Khandavalli
614d1e4476 qcacmn: create the vdev response timers in psoc_mlme
Move the vdev response timer from the vdev object manager structure
to the psoc mlme structure.

Change-Id: Ieb87ac6549aa23e0beb61441fea459d3db78c2f3
CRs-Fixed: 2563410
2019-12-05 10:45:08 +05:30
Liangwei Dong
49472056b2 qcacmn: Enable Fils Discovery frame sending in 6GHz SAP
To enhance visibility of 6GHz AP, 6G only AP shall send
Fils Discovery frame periodically in one beacon interval.

Change-Id: I51487380fca10418d2260dc2612e2adcf6cbb93b
CRs-Fixed: 2562434
2019-12-02 05:22:42 -08:00
sumedh baikady
a95ba1312a qcacmn: Add Wmi for FW dynamic control of Muedca param
Add WMI changes for the API he_muedca_mode
to swicth between manual, host and FW dynamic
muedca param selection.

Change-Id: If43b5da483fe082294bda33f8951187ebc7ea3c7
CRs-Fixed: 2554378
2019-11-14 07:47:46 -08:00
Rhythm Patwa
c5068e341f qcacmn: Add support to offload FILS Discovery to FW
Construct the FILS Discovery frame template and send
template to FW.

Change-Id: I1052b9b8240ea9461e19bb70887b49aabffc4e05
2019-10-16 21:54:34 -07:00
Aditya Sathish
fbf9ece75d qcacmn: Rename TX_DECAP_TYPE to TX_ENCAP_TYPE
The macros attributing the Tx encap type have been erroneously
named as TX decap.

Rename all occurences of TX_DECAP_* to TX_ENCAP_*. Also add support
to send WMI vdev params for tx_encap and rx_decap values.

CRs-Fixed: 2533710
Change-Id: Id6ef2955868010b264e76d2a416d22d30d2acedc
2019-10-10 22:59:18 -07:00
Rakesh Pillai
01b9b680fc qcacmn: Avoid REO destination change when IPA enabled in P2P mode
In cases where one of the interfaces is a P2P-GO and
IPA has been enabled, the P2P connection establishment
fails.

When IPA is enabled, the REO destination is changed to REO4
which can be reaped only by IPA module. But in case of P2P-GO
interface in operation, this change in configuration causes
all the RX packets to be stalled due to incorrect REO configuration.

Hence, to avoid this case, do not change the REO dest config
when the interface subtype is P2P.

CRs-Fixed: 2498315
Change-Id: Ie9f01c3b353c7c0503e1541d6c79c2f47c9782f3
2019-10-10 13:43:37 -07:00
Jianmin Zhu
ce7b04766e qcacmn: Don't set vdev packet type when vdev up
Vdev decap/encap type has been set when vdev create, don't need
set again when vdev up.

Vdev mlme mgmt.generic.rx_decap_type isn't initialized, can't be
used to set vdev decap type.

Add tgt_vdev_mgr_set_tx_rx_decap_type to set vdev tx/rx cap/decap
type by wlan_util_vdev_mlme_set_param.

Change-Id: If487a890eafd0e4e5e6cda31c22d459e342770de
CRs-Fixed: 2516997
2019-09-06 23:40:50 -07:00
Priyadarshnee S
c76f68bf02 qcacmn: Add a START RESPONSE failure status eventid
Add WLAN_MLME_HOST_VDEV_START_CHAN_INVALID_REGDOMAIN and
WLAN_MLME_HOST_VDEV_START_CHAN_INVALID_BAND event in host enum
wlan_mlme_host_vdev_start_status. This corresponds to the event id
WMI_VDEV_START_RESPONSE_INVALID_REGDOMAIN and
WMI_VDEV_START_RESPONSE_INVALID_BAND sent by FW.

WMI_VDEV_START_RESPONSE_INVALID_REGDOMAIN is sent if there is a mismatch
between host and FW dfsdomain.
WMI_VDEV_START_RESPONSE_INVALID_BAND is sent if the channel sent by
host in VDEV START is not in the supported band by the current HW Mode.

CRs-Fixed: 2514884
Change-Id: I6126cb9bf29b80ae5728e5e5a4018891510cc41a
2019-09-06 06:23:07 -07:00
Abhishek Singh
22911578a1 qcacmn: Fix WMI timeout for runtime PM
For runtime PM if the bus is suspended driver need to consider
extra PMO_RESUME_TIMEOUT time for bus resume.

Thus add PMO_RESUME_TIMEOUT extra in WMI timeouts if runtime PM
is supported.

Change-Id: Ifda596626ba39a894bebcb20fcfc2018012b0b54
CRs-fixed: 2513791
2019-08-24 04:23:53 -07:00
Abhishek Ambure
c76db37021 qcacmn: Clean up CMN_VDEV_MGR_TGT_IF_ENABLE
WIN and MCL both uses common targer_if code for vdev manager.
So legacy code and "CMN_VDEV_MGR_TGT_IF_ENABLE" macro is removed.

Change-Id: I2984ae44f3a7cfa01b8f1455353d09deb4db5759
CRs-Fixed: 2503804
2019-08-11 10:38:20 -07:00
Gurumoorthi Gnanasambandhan
80e1ae17a6 qcacmn: Enable/Disable multi group key support
Support to Enable/Disable multi group key and configure
maximum number of group keys.

Change-Id: Ie6ce2a38d0ad04a47f966fc281f35a8af7125447
CRs-Fixed: 2490599
2019-08-06 10:31:49 -07:00
Abhishek Ambure
21ff0a53bf qcacmn: Common code changes for VDEV conversion
This change is required by MCL for VDEV conversion. This change
adds target_if all common code.

Change-Id: If43cbbe12c9b4a2bc7fc46ff01f24a2fb6fda09e
CRs-Fixed: 2460791
2019-08-05 07:50:05 -07:00
Naga
bf48fb69ac qcacmn: Add support to print vdev req/resp string
Add support to print vdev req/resp string
on target_if timer start conflict and timer
timeout handler

Change-Id: I0116c03089f4ab80623596bb9e8d0268efb0dd87
CRs-Fixed: 2495018
2019-07-29 02:22:54 -07:00
Himanshu Batra
1b60b56578 qcacmn: Replace void * data members of mlme with specific type
Replace mlme void * data members having different types across
different drivers with specific type.

Change-Id: I4343800e836c8ae0996c19b39a420b314e465a75
CRs-Fixed: 2477457
2019-07-27 18:21:29 -07:00
Naga
3998909959 qcacmn: Add MLME support for vdev delete all peer
Add umac/mlme support for vdev delete all
peer request which will replace individual peer
delete of peers under a vdev during vdev down.

Change-Id: I6afdfae619fce361acd60705fe2d7ad888a8e33e
CRs-Fixed: 2456858
2019-06-30 12:22:20 -07:00
Naga
f69b80a563 qcacmn: Add support for target_if timer restart
Add support for target_if timer restart when
vdev mgmt ops request is queued though the intended
response corresponding to request is not yet received.

Change-Id: I08e474ac66a0c399a93ffbc4a24aab78084072d2
CRs-Fixed: 2463180
2019-06-21 13:40:24 -07:00
Nirav Shah
05e77685a6 qcacmn: Add API to check vdev is in INIT state or not
Add API to check vdev mlme state is in INIT state
or not.

Change-Id: I86a919331d674f1defd896d5b8ae93a87a0a9376
CRs-Fixed: 2459908
2019-05-28 03:46:52 -07:00
Abhishek Singh
3b2666f1a5 qcacmn: Cleanup VDEV SM related flags and unused code
Legacy code for VDEV_SM is no more used, thus clean up flags
CMN_VDEV_MLME_SM_ENABLE and CMN_VDEV_MLME_CMPT_ENABLE.

Change-Id: I4f7b1099d4929f6250b1868c53b73d7c235a9c22
CRs-Fixed: 2457270
2019-05-24 06:42:20 -07:00
Abhiram Jogadenu
f404593b7c qcacmn: Increase response timer timeouts
Increase response timer timeout for Vdev delete response and
Vdev stop response as these take longer when KASAN is enabled.
Value is being increased from 2 secs to 3 secs after it passed
wifi up/down, load/unload for a period of ~10hrs.

Change-Id: I1884370bbc214683a238d0028c4fc26bba6c2ccb
CRs-Fixed: 2441815
2019-04-27 04:22:32 -07:00
Naga
9dad9767b1 qcacmn: Cleanup duplicate fields in vdev_mlme
Add change to cleanup duplicate fields of
of vdev_mlme, which are also in mlme_channel_param
and their dependencies while updating
vdev_start_param. Cleanup unused mlme_cfg_ids.

Change-Id: Ie32971283a337f04692c0c0bc7f41fff75c090c3
CRs-Fixed: 2407953
2019-04-11 01:14:21 -07:00
Naga
613a74a6cf qcacmn: Add change to send custom AMPDU/AMSDU aggr size
Add change to support sending AMPDU/AMSDU custom aggregation
size to FW using converged MLME and target_if framework.

Change-Id: Icf665e3bf30c5ef5903342264e89776611c7774a
CRs-Fixed: 2430278
2019-04-10 05:27:02 -07:00
Akshay Kosigi
3d91d4d32c qcacmn: Add mgmt tx rate code to send to FW
Add a new mgmt tx rate code id to send mgmt rate code to fw

Change-Id: If294982bae5c273c085d1b9bf46f3ad53db60b93
CRs-Fixed: 2428713
2019-04-08 17:43:46 -07:00
Akshay Kosigi
8ca3339524 qcacmn: Add beacon tx rate code to send to FW
Add a new beacon tx rate code id to send rate code to fw instead of
sending beacon tx rate

Change-Id: I8cfe6024b9adf4b25c8686e837c94b86dddceab5
CRs-Fixed: 2428706
2019-04-08 17:43:42 -07:00
Akshay Kosigi
aeaa258b54 qcacmn: Change to remove WMI dependency from mlme component
Replace WMI references in mlme component with wlan_mlme macros.

Change-Id: I7fcd241581972674e19e088c44409d7a5f6ebf58
CRs-Fixed: 2414375
2019-04-06 11:36:09 -07:00
Akshay Kosigi
d3f552ff90 qcacmn: Fix the typo for PROFILE_IDX
Fix the typo for PROFILE_IDX and also add WMI macros
for short slot time update under MLME.

Change-Id: I3c09a7f01029af0f075086166be1c85bd1d7de34
CRs-Fixed: 2412160
2019-04-06 11:36:05 -07:00
Akshay Kosigi
a178724b30 qcacmn: Add new API to set ratemask config
Introduce new API to set ratemask configuration value and also send it
to FW

Change-Id: Iba236500a896c6f4893f506511483bde98072368
CRs-Fixed: 2415610
2019-04-05 17:21:49 -07:00
Naga
df242752b2 qcacmn: Add TxBF caps in target_if/mlme
Add change to frame TxBF caps from vht_info
in target_if and send to FW

CRs-Fixed: 2412867
Change-Id: Ibc26b96cad2a5e72eb293f5a5d6847f19122ea0f
2019-04-03 15:45:05 -07:00
Akshay Kosigi
658d712ace qcacmn: Add code to send rate mask info to FW
Add support to send rate mask information to FW using utils API

Change-Id: Ibb62e4f92b0c3e656cc11ae941c58723a43fbf12
2019-03-18 13:07:21 -07:00