Commit Graph

360 Commits

Author SHA1 Message Date
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
Neil Zhao
1d1801c53d qcacmn: add useful debug prints
CRs-Fixed: 2089479
Change-Id: I3378fa874095974cd4dce771a6725eee5adc9a41
2017-09-19 17:35:33 -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
Alok Kumar
3aa586ac29 qcacmn: Compile errors when a preprocessor flag is on
Fix for compile errors when QDF_DEBUG is enabled.

Change-Id: Iaf02b0588d0ae0443726621ef3884a94dc8147cc
CRs-Fixed: 2022696
2017-09-14 01:37:51 -07:00
Padma Raghunathan
9b1964e78a qcacmn: Fix compilation errors under BIG_ENDIAN_HOST
* MIPS uses BIG_ENDIAN_HOST
* This change fixes compilation errors  uncovered during MIPS build

Change-Id: Iaedf714f36416b21eaedf586ded6f10c84a74e9c
CRs-Fixed: 2095835
2017-09-11 23:27:21 -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
Sreelakshmi Konamki
77dd1efb64 qcacmn: Add support for PNO scan in connected state
qcacld-2.0 to qcacmn propagation

Add changes to support PNO scan in connected state to find better Ap's
based on rssi threshold, band and rssi preference.

Change-Id: I0744297cc5269f0fe37613247c911102e293d8e9
CRs-Fixed: 2000342
2017-09-08 15:46:55 -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
Sathish Kumar
e7b4922f93 qcacmn: Populate pdev params that are enabled in target header
Few pdev params are populated as unavailable param in the TLV layer.
Some of them are now enabled by the target. Populate the right pdev
param enum as per the definition in the converged WMI header.

Change-Id: Ia06498da9023f53035abde31c3aef2749f6b65b9
CRs-Fixed: 1115239
2017-08-31 08:54:41 -07:00
Sathish Kumar
7f9408bacc qcacmn: Add timestamp param and enable foreign channel exit in scan event
Add timestamp parameter in scan event received from FW to aid
in calculating dwell time and overall channel switch time in
off-channel operations.

Enable foreign channel exit event inorder to be notified
by FW through the scan event.

Change-Id: I4ba028756ee7db35f6528c0554b09c73087184a7
CRs-Fixed: 2056330
2017-08-31 00:20:20 -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
Sridhar Selvaraj
f8c766c957 qcacmn: Add support for action id bitmask in allowed action frames
Currently only action category is specified to be dropped/allowed
by fw. Add support for action id bitmask per category.

Change-Id: I208af7827532740104afbb3d0e9b8dda3a8b2d47
CRs-Fixed: 2072125
2017-08-29 20:56:46 -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
Keyur Parekh
5e32fdec2b qcacmn: Add support for wmi pktlog disable
Add API to send WMI command to FW when pktlog disable
by user.

CRs-Fixed: 2095489
Change-Id: Id5960aa9447fbee534a3c1e8a21085bc6f12dc50
2017-08-25 20:06:29 -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
Debasis Das
03bcfb0479 qcacmn: Fill rssi value in the mgmt rx event structure
The rssi field in the mgmt rx_event structure needs to be
filled.

Change-Id: I41b61c48f08ea70d749eee8f5a8987f4a6f3d32e
CRs-Fixed: 2096685
2017-08-22 01:38:56 -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
Karunakar Dasineni
09120790f8 qcacmn: Enable per TID AMPDU and AMSDU WMI params
Enable WMI PDEV parameters to configure per TID AMPDU and AMSDU in TLV implementation

Change-Id: I12982e78f880bf9bf8858aaa99aa416d7f775c17
CRs-Fixed:2089935
2017-08-15 16:27:54 -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
yeshwanth sriram guntuka
1276a11b8e qcacmn: Fix excessive logging
kmsg is flooded with excessive logs from wmi_control_rx.

Fix is to change log level to debug.

Change-Id: I327463387a5dac318ecc0ad7e773006cfc09b42a
CRs-Fixed: 2073718
2017-08-10 04:25:49 -07:00
Adil Saeed Musthafa
f5bed16eb4 qcacmn: Add debug print before calling WMI event handler
Print the Event ID before calling WMI event handler

CRs-Fixed: 2086665
Change-Id: Ie1b758a17882743fa4871b6ce4725c986769b01b
2017-08-09 16:07:47 -07:00
Edayilliam Jayadev
f9400bd5ab qcacmn: Fixing tlv length in spectral wmi command
CRs-Fixed: 2062535
Change-Id: Ic7d92272324c0d6ab6f84cf9b2dd9f9ab0019f9e
2017-08-06 21:46:58 -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
Deepak Dhamdhere
811c917719 qcacmn: Use sme session id in set_ric_req command
Use sme session id in send_set_ric_req_cmd_tlv() as vdev_id, otherwise
it causes target assert when WMI_ROAM_SET_RIC_REQUEST_CMDID is sent to
firmware.

CRs-Fixed: 2037815
Change-Id: Ic3cb08fc62b3ca006abb78ce3b5d5fa028935783
2017-08-06 03:57:40 -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
Wu Gao
a5e5c6410a qcacmn: Free events logs list of wmi handle
Free events logs list of wmi handle, avoid memory leak.

Change-Id: I7660239f3808ebf0f56baf5900c1290218507406
CRs-Fixed: 2062407
2017-07-21 20:15:16 -07:00
Varun Reddy Yeturu
b586792e63 qcacmn: Fix number of buffers in ROAM_INVOKE command
Fix the number of buffers being passed in ROAM_INVOKE command
to the firmware. Fill it only if there is a valid beacon or
probe response being sent to the firmware

Change-Id: I0f569b847091bb9eb92a92de949c90ace0ab51fe
CRs-Fixed: 2077075
2017-07-18 23:45:37 -07:00
Varun Reddy Yeturu
aa4811806e qcacmn: Fix CLANG warnings in wmi_unified_tlv.c
Fix implicit conversion from enumeration type 'A_STATUS' to different
enumeration type 'QDF_STATUS'
Fix implicit conversion from enumeration type 'QDF_STATUS' to different
enumeration type 'A_STATUS'
Fix implicit conversion from enumeration type 'WMI_START_EVENT_PARAM' to
different enumeration type 'WMI_HOST_START_EVENT_PARAM'

Change-Id: I1d8c7781baaaf6461273298e8eb82ff841d3c8fc
CRs-Fixed: 2063149
2017-07-18 23:35:16 -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
Gurumoorthi Gnanasambandhan
5214f28e3e qcacmn: Remove hardcoded stats_id in send_get_stats_cmd_tlv
Initialize stats_id based on stats_mask instead of hard coded value in send_get_stats_cmd_tlv

Change-Id: Ibe007311ecdc848dee34502dd3f288c99a6fe7e4
2017-07-15 10:05:31 -07:00
Gurumoorthi Gnanasambandhan
6e1128196a qcacmn: Add WMI_PMF flag to pdev for PMF support
In TLV path WMI_PMF flag was missing when setting the PEER flags

Change-Id: Ibae0ff57f0d6bfb6207365a090dd95bf7e776b8c
2017-07-14 21:04:38 -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
71a8dc51af qcacmn: WMI: Reduce the log spam in kmsg
Move the logs to appropriate log levels to reduce
the log spam in kmsg.

Change-Id: Icc2d55626908b6e6448567b259af106e3314827e
CRs-Fixed: 2017427
2017-07-12 20:12:51 -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
Sathish Kumar
8cc902e20e qcacmn: Enable SET_MGMT_RETRY_LIMIT pdev param for TLV based host
TX management retries is configured by host through pdev param sent
to the target. Populate pdev param enum to support configuration
of management retries during TX

Change-Id: I3f8b976ef089a0455481923ce18147f167733b14
CRs-Fixed: 2073391
2017-07-11 23:48:07 -07:00
Amar Singhal
3162e0daad qcacmn: Modify reg-domain to pdev level
In worst case, different pdevs can be in different countries and
hence different reg-domains. Also there could be differences due
to front-haul and back-haul.

Change-Id: Ib9e998b5f7de4e42a1736d07e9e5602d8506e7b6
CRs-Fixed: 2048784
2017-07-10 09:36:58 -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