Commit Graph

488 Commits

Author SHA1 Message Date
Kiran Venkatappa
fa601a66eb qcacmn: Cleanup fw_abi_version handling in WMI
fw_abi_version is used in WMI to check compatabilty of host and target
WMI interface. Cleanup handling to fw_abi_version.

Change-Id: Ia78c4683b9eff06d3c052df3921c024962abd828
CRs-Fixed: 2131311
2017-10-26 04:07:56 -07:00
Sravan Kumar Kairam
786886b483 qcacmn: Management MGMT TXRX component over HTT
Currently there is no support for management MGMT TXRX
component over HTT endpoint and supports only over WMI.
As a result for platforms which does not support MGMT
over WMI will break other components which uses MGMT TXRX
component to send mgmt packets.

In this change implement changes to support MGMT TXRX
component over HTT.

Change-Id: I487aca3893aa21905a744e2e5dc7104e6c414fdc
CRs-Fixed: 2097694
2017-10-25 17:48:07 -07:00
Houston Hoffman
353f06c4bd qcacmn: Allways do WMI_RX_EVENT_RECORD when wmi event recieved
Receipt of the wmi events wasn't being recoreded when the event
was being processed in the mc thread or tasklet.  Log the receipt
in all cases to root-cause unprocessed wmi events faster.

Change-Id: I2543a9ff9049e7d177c1ffa5df1e899035860f91
CRs-Fixed: 2125232
2017-10-24 19:19:12 -07:00
Ashish Kumar Dhanotiya
9563db8934 qcacmn: Remove wmi_id_to_name from wmi_unified.c
Remove wmi_id_to_name from wmi_unified.c as this
function is define in fw_api project.

Change-Id: I4b7d83ed79fe9a5d3a867149972a9ccb1e2f34c8
CRs-Fixed: 2002773
2017-10-24 15:38:22 -07:00
Varun Reddy Yeturu
0f6d121446 qcacmn: Log the debug information before freeing the buffer
Log the necessary debug information before freeing the dynamically
allocated memory while sending WMI commands
WMI_ROAM_CONFIGURE_MAWC_CMDID and WMI_NLO_CONFIGURE_MAWC_CMDID.

Change-Id: I10c8a96f8bb1a6cb661501f9ae9b9b21560980de
CRs-Fixed: 2094763
2017-10-21 06:20:35 -07:00
Vignesh Viswanathan
9b9aedcfb4 qcacmn: Add cmn changes for supporting flush PMKSA fw
Currently, driver sends add/delete pmksa entry to fw
whenever supplicant sends set/delete pmksa to driver.

Add support to flush all PMKSA entries as well.

Change-Id: Iace843cdf26bf06f3e70703f87c082997a78b894
CRs-Fixed: 2094234
2017-10-20 16:10:29 -07:00
Jeff Johnson
bcb1eefaf6 qcacmn: Fix camelCase issues with DHCP Offload
Both the unified DHCP offload struct dhcp_offload_info_params and all
of the function prototypes use "camelCase" which is frowned upon by
the Linux Coding Style. Replace the camelCase.

Change-Id: I3f2ce74bc150668b96b1946ef7b2d556c23dad94
CRs-Fixed: 2121485
2017-10-20 10:06:20 -07:00
Sridhar Selvaraj
e73a5ae04c qcacmn: Fix compilation issues of FILS roaming
Fix compilation issues of FILS roaming

Change-Id: I00c8dfe7090623c2962aa209030bc1de6ba2604d
CRs-Fixed: 2096104
2017-10-18 18:28:56 -07:00
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
Kiran Venkatappa
6cbb319e7a qcacmn: Add fw build version in (ext) service event data
FW reports build number in service ready and ext_service ready event.
Save these to display FW build version during brinup.

Change-Id: Ia86a392f826c5bb836be9353e3938ab1f811ab62
CRs-Fixed: 2125667
2017-10-18 02:03:09 -07:00
Shaakir Mohamed
03a8b15221 qcacmn: Handle dfs pulse information in host side
Adds support to dump dfs pulse information from firmware to host
for debug purpose.

Change-Id: I3b2042f8df6e077eed1a3847cd2d8550794bc6f7
CRs-fixed: 2121833
2017-10-16 05:55:59 -07:00
Varun Reddy Yeturu
edb7a95706 qcacmn: Dump PMKID information
Dump the PMKID information in host driver for debugging purposes.

Change-Id: I0be8add08d45bc09d9120bf36eb9110600c56673
CRs-Fixed: 2111909
2017-10-14 05:59:22 -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
Manjeet Singh
c73cd7db11 qcacmn: Follow spec for NL80211_CMD_START_SCHED_SCAN
qcacld-2.0 to qca-wifi-host-cmn propagation

If no SSID are passed to NL80211_CMD_START_SCHED_SCAN cmd,
interface spec requires that an active scan is not needed.
Therefore a passive scan is now requested by cfg80211_sched_scan_request
for this case.

Change-Id: I1b1b9232ffb9d8d5c0bc9a1d75145d39c9fe9e6b
CRs-Fixed: 902092
2017-10-12 14:22:11 -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
Sravan Kumar Kairam
02139a7de9 qcacmn: Validate buffer length in wmi tlv check and pad tlvs
Currently there is no validation of the buffer length passed by the
caller in the function to validate the TLV's coming for an event/
command. This may cause possible null pointer reference. In this
change validate the buffer length passed by the caller.

Change-Id: Ia365cf78acce3a235b9e15e6ed95a1aaa06b4c6f
CRs-Fixed: 2105739
2017-10-12 14:21:40 -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
Jeff Johnson
60246bcf4b qcacmn: wmi: Replace instances of unadorned %p
Replace instances of unadorned %p in wmi.

Change-Id: If9a880bbfcef60be5220a17d779701724110e6b5
CRs-Fixed: 2111274
2017-10-03 16:02:28 -07:00
Edayilliam Jayadev
41ac5cf9a7 qcacmn: Add fields to wmi channel info event object
Populate tx frame count and mac clock frequency to the
wmi channel info event object.

CRs-Fixed: 2114541
Change-Id: I6180e377d576409705e57d7aa9172141965f79ad
2017-09-28 04:48:01 -07:00
Govind Singh
e265e3315c qcacmn: Add watchdog timer for WMI work queue lock-up
WMI work queue rx context can block other work queue
shared on the same CPU if it takes more time.

Add watchdog timer for WMI work queue housekeeping and
assert if takes more time in SLUB DEBUG build

Change-Id: I60b1dad21afbf93a5b88aa855a2835bb0f85b82f
CRs-Fixed: 2104106
2017-09-28 01:57:28 -07:00
Vignesh Viswanathan
21fae9fd6a qcacmn: Enable LCA Disallow for Background Roam Scan
Currently LCA Disallow (Last Connected AP) bitmap is hardcoded
to be enabled only for PER roam scan.

Add Background Roam Scan also to the LCA Disallow bitmap set from
host to fw.

Change-Id: I4878350ef772f168ba909fd8b30cf2aa31f68fcc
CRs-Fixed: 2109974
2017-09-25 23:42:32 -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
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