Commit Graph

606 Commits

Author SHA1 Message Date
Vignesh Viswanathan
051ef2e644 qcacmn: Support FILS roaming
Add cmn support for the following:
- Update ERP info in RSO Start
- Update HLP info in a new command WMI_PDEV_UPDATE_FILS_HLP_PKT_CMDID
- Set/Delete PMK cache info with WMI_PDEV_UPDATE_PMK_CACHE_CMDID
- Process FILS TLV in Roam Synch Indication and update the FILS info
  [seq number,PMK, KEK, realm] to Supplicant.

Change-Id: I239bf5d6c4455d39181e335dbf73bcade16aee8e
CRs-Fixed: 2089128
2017-10-18 18:28:54 -07:00
Gurumoorthi Gnanasambandhan
c1e317ea40 qcacmn: Fix compile error
2017426 removed rssi_args causing compile error.

Change-Id: I5f428535373cd7716e993f4447b27fc33296aa5c
2017-10-13 13:43:44 +05:30
Himanshu Agarwal
99881a9668 qcacmn: WMI changes to send BSS scoring params from INI to firmware
Add support to send BSS scoring params from INI to firmware.
Firmware will use these params to select best candidate during
roaming.

Change-Id: Iad0e71c770ac4f4c31ce3b19552f09fd27dc37bf
CRs-Fixed: 2121739
2017-10-12 14:22:36 -07:00
Gyanranjan Hazarika
4a2f03c01c qcacmn: Add support for 'he_ltf' command
Currently, we do not have support for 'he_ltf' command. But we need
this command for certain IOP testcases. Add support for 'he_ltf'
command.

Change-Id: I296b18762aaa52da80a5755c5bcca8dbd12d9b13
CRs-fixed: 2118948
2017-10-12 14:22:30 -07:00
Sathish Kumar
b432fc0ef7 qcacmn: Add support for configuring ACK timeout pdev param
Add support in host to configure ACK timeout pdev param through
WMI interface

Change-Id: Ifc43cd146fbbf6ef818268acf69789b38b28e384
CRs-Fixed: 2042639
2017-10-12 14:21:53 -07:00
Poddar, Siddarth
24fd1943fc qcacmn: Add wmi send multiple mcast filter api
Add wmi command api that can add/delete
multiple mcast filters.

CRs-Fixed: 2100751
Change-Id: Id253c5a3dfdf682cdca66478d9d840990f9c4a23
2017-10-12 14:21:42 -07:00
Gurumoorthi Gnanasambandhan
1b5ceb75a2 qcacmn: Initialize pdev_id for PDEV STATS request and event
Initialize pdev_id for PDEV stats request and response event.
Add param to set pdev stats request timer.

Change-Id: I11f648070cd39f026129d1cf3aa13bf296d25e6e
2017-10-06 02:36:28 -07:00
Jeevan Kukkalli
e48dc35af0 qcacmn: Add functionality to send bridge MAC to firmware
Add functions to send bridge MAC programmed from user
space to firmware.This change is part of a workaround
to fix an looping issue which resulted in wrongly adding
bridge's own MAC address to fw WDS table.Send MAC address
to target to avoid adding our own bridge address to fw
WDS table as part of source port learning.

Change-Id: I815d3c3f106cd2f528ac9172712ec6c2f47f4410
CRs-Fixed: 2070956
2017-10-04 14:35:39 -07:00
Krunal Soni
78819cf2bd qcacmn: During host-invoked roaming, don't to send null data to AP
During host invoked roaming, set
WMI_ROAM_INVOKE_FLAG_NO_NULL_FRAME_TO_AP
flag so that FW will not send NULL data frame while doing transition.

CRs-Fixed: 2046964
Change-Id: I043c3d2431e4da5af36fb710bd36a520550abbd3
2017-10-03 16:02:43 -07:00
Kiran Venkatappa
482bc5ecbc qcacmn: Add support of extended service bitmap handling
Extended service bitmap is used by FW to indicate supported services
bitmap for services excedding the current limitation of 128. Add support
to save and use this bitmap to check services supported in FW. Also,
change exisiting services bitmap to be dynamic allocated buffer to
optimize the buffer used to save the bitmap.

Change-Id: I24a0321bc1a06ee3aedf1c6acbc379e907bbd464
CRs-Fixed: 2103617
2017-09-23 10:32:47 -07:00
Vignesh Viswanathan
d7d562de5a qcacmn: Pass new Bad RSSI threshold offset for 2G and flags to FW
Add new Bad RSSI threshold offset for 2G to 5G roam and flags
to roam_offload_scan_rssi_params and fill them in the WMI cmd TLV
to pass it to the firmware.

Change-Id: I78876f5104e67280b1342ec0957d0162edbaf502
CRs-Fixed: 2105894
2017-09-21 16:41:52 -07:00
Anurag Chouhan
d40d1d1df4 qcacmn: Add wmi interface command to support debug stats
Add wmi interface command to support set/get NUD debug stats.

Change-Id: I2c5e9e2f6b0bb2e7b7b0a6404e939b33bffa3f18
CRs-Fixed: 2011463
2017-09-21 16:41:48 -07:00
Jiachao Wu
56ce86e04f qcacmn: Pass beacon tx rate value to FW
Set bcn_tx_rate when send WMI_VDEV_START_REQUEST_CMDID to FW.

Change-Id: I402d996fe4382d8dfd765e3bf7957d4696549b00
CRs-Fixed: 2097703
2017-09-19 04:18:27 -07:00
Ravi Kumar Bokka
0090e226f1 qcacmn: Add ini param to control the crash inject
qcacld-2.0 to qcacmn propagation

Currently the crash can be injected by iwpriv command and FW
gets crashed.
Changes are done to add the gEnableCrashInject ini parameter

1) This ini param is disabled by default.
2) If this param is disabled the crash inject is ignored.

Change-Id: I7e908be1e37090a9d343dc04411fe387f776a937
CRs-Fixed: 1087774
2017-09-19 02:28:14 -07:00
Varun Reddy Yeturu
7a7a6e85bb qcacmn: Pass config parameters for bad RSSI roaming to firmware
Fill the roaming parameters wmi_roam_bg_scan_roaming_param and
send them to firmware to be consumed for the background roaming
at bad RSSI

Change-Id: I08786141d28f8459aad27aaf53816ec4cdec7f08
CRs-Fixed: 2082906
2017-09-18 20:27:43 -07:00
Gyanranjan Hazarika
e72853c63f qcacmn: D1.4 support - Code changes for HE-MCS & NSS Set
D1.4 defines Supported HE-MCS and NSS Set (under HE-cap)
differently from its earlier versions in D1.0/D1.3.
Make code changes to bring in these new changes.

Change-Id: I4a482e48c071bbbe02c7f33645b7fe80870482d9
CRs-fixed: 2100674
2017-09-15 12:22:53 -07:00
Om Prakash Tripathi
4d23cd7886 qcacmn: Add support to fetch min and max tx power
Add support to fetch min and max tx power from target for
a given set of mcs, nss, chainmask, bw, and other rate flags.

Change-Id: Iafe082db81503a52bdc704d4b71d86d23788fddb
CRs-Fixed: 2061802
2017-09-08 15:46:56 -07:00
Manoj Ekbote
7c2444ce91 qcacmn: Add function to extract MAC addr list
For DBDC/DBS cases, each radio will have a separate MAC
address. FW will provide the list to host in ready
event. Handler has been added to extract the list.

Change-Id: I6da96ae02a1f30995e3953358677090b84fc57c4
2017-09-06 20:56:03 -07:00
Soumya Bhat
3eec5f3273 qcacmn: WMI support for EXT NSS Signaling
Add required WMI commands to communicate support of
EXT NSS Signaling between host and FW. Also, if
EXT NSS Signaling is supported the use new WMI to
communicate the required information between host and FW.

Change-Id: If3e1ef11a55f8fbdffddb3b10963878a6a2ca415
CRs-Fixed: 2089043
2017-08-29 20:58:30 -07:00
Vikram Kandukuri
6915956d4c qcacmn: Update WMM params per VAP for lithium onwards
Update WMM params per VAP for lithium onwards

Change-Id: I025d8f314b255f4fa2da5c83916a122733b36c27
CRs-Fixed: 2064780
2017-08-28 08:12:03 -07:00
Varun Reddy Yeturu
1d25d6d7fc qcacmn: Add sanity check to avoid len overflow issue in WMI event data
In WMI/WMA, data from event buffer from FW is used without
sanity checks for upper limit in multiple places. This might
lead to a potential integer overflow further leading to buffer
corruption

Add upper bound checks for max limit of event buffer (1536)
in all affected places to prevent the potential integer
overflow

Change-Id: Ic9194a27c4a4c63fc68ff7fc61165a53e66ca4f4
CRs-Fixed: 2095545
2017-08-26 02:17:06 -07:00
Kiran Venkatappa
fe1abe8c70 qcacmn: Add hw_mode_id for SBS_OR_DBS mode
Update hw_mode_id enum to add an entry for SBS_OR_DBS mode.

Change-Id: I642682dabc4b04e8d292a54995be17488e026093
CRs-Fixed: 2097571
2017-08-25 21:27:06 -07:00
Varun Reddy Yeturu
34a374603c qcacmn: Configure MAWC NLO parameters to the firmware
Get the MAWC based NLO parameters from HDD/WMA and pass them
to firmware

Change-Id: I16ce12d36df7f3ccab4db32b4d7f72a0f9762795
CRs-Fixed: 2064837
2017-08-25 18:46:30 -07:00
Varun Reddy Yeturu
f0d90c7f28 qcacmn: Configure MAWC roaming parameters to firmware
Get the MAWC based roaming parameters from CSR/WMA and pass them
to firmware

Change-Id: I78a287a39715dbabcceb2cb5c4270726ba265d61
CRs-Fixed: 2064837
2017-08-25 18:46:28 -07:00
Rajeev Kumar Sirasanagandla
a3f4a29130 qcacmn: Add support to include selective scan IEs only
qcacld-2.0 to qcacmn propagation

Add support to include only selective IEs in probe requests in
order to improve user's privacy.

Change-Id: I59cf4181f60f5b4cd87a32fbcf29160d87ca59c8
CRs-Fixed: 1105495
2017-08-19 01:27:07 -07:00
Kiran Venkatappa
22046183ed qcacmn: Update chaninfo extract API for TLV target
FW implementation is updated to add more fields in chan info event.
Update host implementation to extract these fields.

Change-Id: I4935f3aa1c2e87d27a13a29651db8d8835cb4f91
CRs-Fixed: 2090787
2017-08-18 17:46:43 -07:00
Varun Reddy Yeturu
947606fe4a qcacmn: Fill rssi_thresh_offset_5g in WMI
Fill rssi_thresh_offset_5g in WMI to configure this
value into the target

Change-Id: I0e5dde987fcc9fbb1f0556ec6f195d0a5ada4ffe
CRs-Fixed: 2093335
2017-08-16 17:36:53 -07:00
Varun Reddy Yeturu
8ee469b48e qcacmn: Add ldpc_rx_enabled to vdev start parameters
Add a field ldpc_rx_enabled to vdev start parameters so that
this information can be propagated from the upper layers to
WMI and further to firmware.

Change-Id: I25fd148f77d86eb646a0e40fef6ac99c4fbcdf22
CRs-Fixed: 2023893
2017-08-15 16:27:53 -07:00
Rajeev Kumar Sirasanagandla
d8d18f187a qcacmn: Add support to randomize probe req SA and Seq number
qcacld-2.0 to qcacmn propagation

Randomize probe request's source address and sequence number to
improve user's privacy.

Change-Id: I265f15476f1a23a268f159a44b6a3e4243fb9068
CRs-Fixed: 1105081
2017-08-14 20:07:22 -07:00
Kiran Kumar Lokere
a78b4bfb67 qcacmn: Add support to process channel avoidance event
Add support to process channel avoidance event

Change-Id: I19ce742406a4778ac0f279faf0bf853bc9069eb0
CRs-Fixed: 2080241
2017-08-13 16:56:55 -07:00
Ganesh Kondabattini
34e0131b30 qcacmn: Add wmi command to set limit off chan parameters
Add WMI command for setting limit off channel command
parameters to firmware.

CRs-Fixed: 2068307
Change-Id: Ia99f1b4d4fe33082a561c9307af9d76ae16d8be4
2017-08-06 19:45:58 -07:00
Abhishek Singh
7a84fe0bba qcacmn: WMI changes to Send OCE rssi reject BSSID list to firmware
Add support for rssi based assoc rejection from a bssid and
Try to connect to this bssid only after time interval indicated in
Assoc reject or when rssi has improved by margin indicated in Assoc
reject.

On connection send OCE rssi reject BSSID list to firmware so that
firmware will avoid connecting to these BSSID until RSSI improve or
delta interval has elapsed.

Change-Id: Ic14f85894a4a2f47bcdde9ce977c7b92aeaf8fce
CRs-Fixed: 2076654
2017-07-27 07:21:18 -07:00
Govind Singh
3dda60e173 qcacmn: Remove redundant header file inclusion from wmi layer
Remove redundant header file inclusion from wmi layer by abstracting
the dependency with in WMI layer.

Change-Id: Ie113b69006a960b70d781134775bc44c7508fc4c
CRs-Fixed: 2023825
2017-07-26 08:14:52 -07:00
Nandha Kishore Easwaran
cf08b7385e qcacmn: convert target HT cap bitmap to host bitmap
HT cap bit map is different for tlv and non-tlv based firmware.
Convert target cap to host cap bitmap to abstract out the differences.

Change-Id: Ia803efa3a895c7faa159d8051277d2a926b365a5
2017-07-15 19:35:20 -07:00
Abhijit Pradhan
59626eba4b qcacmn: Set country code for full-offload using iwpriv command
For full-offload, send user country code to FW using WMI
command.

Change-Id: I84acbd7ce30aa9a8ce590c8fadea2cb5914240fe
CRs-Fixed: 2053849
2017-07-13 22:02:53 -07:00
Srinivas Girigowda
4831049768 qcacmn: Fix clang compilation warnings
Fix clang compilation warnings.

Change-Id: If7d2d148f4d478d151640ee1a85ca64a9096cdd2
CRs-Fixed: 2055513
2017-07-12 20:12:48 -07:00
Sathish Kumar
09d4de8f98 qcacmn: Populate tx params tlv for mgmt and offchan tx WMI commands
Populate tx params tlv that includes information related to power,
chainmask, bandwidth mask, preamble type, frame type etc to the mgmt
and offchan tx WMI fixed param

Currently, we send the command with TX params valid set to zero always
and hence target does not look for the TX param TLV. This change
implements API to populate TX params TLV that facilitates configuration
of parameters per TX frame be it data or management frame

If the TX params valid is set to false, target decides the values
to use for each of the mentioned TX parameters

Change-Id: I90a1b5e1c9bf0a54a907876ed3629c2d627b3c98
CRs-Fixed: 2070454
2017-07-12 20:12:47 -07:00
Abhishek Singh
d5406a73da qcacmn: Fix memory overflow in wmi roam scan filter cmd
The length of buffer used to send wmi roam scan filter cmd is not
properly calculated and thus the length is less than the actual data
to be copied.

Fix it by properly calculating the length of the buffer.

Change-Id: I6a3baa5ca5560d2d04f9bd41a709a37abc1b95a9
CRs-Fixed: 2072057
2017-07-11 23:48:13 -07:00
Selvaraj, Sridhar
a0e6f88b15 qcacmn: Add support to pass lca_disallow_config_params to fw
Add LCA[Last Connected AP] AP disallow params to
roam_scan_filter_params structure.

Change-Id: Id7a47bdc40d08b356483114b71981df352386172
CRs-Fixed: 2054195
2017-07-07 00:50:11 -07:00
Rajeev Kumar Sirasanagandla
2a46442db5 qcacmn: Send proper CTL info to fw in world regd
Currently, for world regd and some other regds where conformance test
limit is NO_CTL, host is sending invalid CTL info to fw instead of
NO_CTL (0xff) due to type conversion issues.

To fix this, use proper unsigned type for CTL info.

Change-Id: I0407d30c6cd6f7f485d767c97bc5381c9c731440
CRs-Fixed: 2056847
2017-07-03 15:58:01 +05:30
Keyur Parekh
fad6d088fa qcacmn: Packet log changes for wifi3.0
Change-Id: I82462f426e4e449c5bc65331e39f07a062e8e242
2017-06-27 23:37:33 -07:00
Ravi Kumar Bokka
4a517a223e qcacmn: Auto Detect SoC Power Collapse Failure changes
Add host support for detecting SOC power collapse failures in FW and
communicating the same to framework.

Change-Id: Icee39c896802c4d7136e0b8ef442a33feeb4799c
CRs-Fixed: 2016580
2017-06-27 22:13:06 -07:00
Deepak Dhamdhere
e99d6683f7 qcacmn: Enable PMK cache and OKC with RSO command
Firmware now supports PMK caching in addition to OKC
(Opportunistic Key Caching). Use additional bit flags to enable
PMK caching in PMK configuration in roam offload scan request.

CRs-Fixed: 2004963
Change-Id: I536a4d45d5d915ab02dc13db6124a1ce8949fe48
2017-06-26 11:57:55 -07:00
Selvaraj, Sridhar
d6789e55d3 qcacmn: Add min_candidate_rssi to wmi_per_roam_config structure
Add min_candidate_rssi to wmi_per_roam_config. This is added to
provide the configured min candidate AP threshold to fw to be used
for PER(Packet Error Rate) based roaming.

Change-Id: I6e0ae1ebe578bcd6d858e1d5252dead6e849d54a
CRs-Fixed: 2050039
2017-06-19 12:43:28 -07:00
Govind Singh
5a990aa2a7 qcacmn: Converge WMI beacon template cmd implementation
There are two implementation of WMI beacon template wmi cmd.
Remove redundant code by converging WMI beacon template
cmd implementation.

Change-Id: Icc9e1f5326c3197a7994ed10ea1ef6386edc7efd
CRs-Fixed: 2061681
2017-06-18 17:36:52 -07:00
Nitesh Shah
b256bb0e81 qcacmn: Add support to send DBS Scan command to firmware
This change adds support to send the DBS Scan command to
the firmware.

Change-Id: I147855690f09af03a43f85f2e57626d7f73998de
CRs-Fixed: 2029402
2017-06-14 08:23:51 -07:00
Venkateswara Swamy Bandaru
8c0030f8e6 qcacmn: Add support for wmi_service_chan_load_info
Added support for wmi_service_chan_load_info which is newly
added in wmi service bitmap.

Change-Id: I95905ac95c5305f8f84ec512ecf1859955704193
CRs-Fixed: 2057719
2017-06-12 09:07:06 -07:00
Amar Singhal
2e55c111a8 qcacmn: Implement 11d state machine
Regulatory component needs to listen to vdev messages in order to track
whether a master mode vdev is getting created or destroyed. It is also
used to kick-start the state machine. Also re-run the state machine when
user-space country code is set.

Change-Id: I5112396314a936f84dad2f0e07329f9cb237aa78
CRs-Fixed: 2048784
2017-06-08 13:46:53 -07:00
Kiran Kumar Lokere
82c8645b38 qcacmn: Add support for 11d FW commands and events
Add support to send 11d scan start and stop commands to FW and
process the 11d new country update event from FW.

Change-Id: I5c1588cfb5af672cdb5738784de1bd0b83bdbe77
CRs-Fixed: 2048784
2017-06-08 13:46:51 -07:00
Kiran Venkatappa
1c7d897d9c qcacmn: Add support to extract pdev_id from utf seg info
pdev_id is required to get the pdev object from utf event. Extract
pdev_id from the seg info within utf event's data stream.

Change-Id: Id8d3263a7f33d234c7cb43c99a0a44f28df5724d
CRs-Fixed: 2055128
2017-06-05 11:41:39 -07:00