Commit Graph

1650 Commits

Author SHA1 Message Date
Jeff Johnson
8bfc29e8cc qcacld-3.0: Converge on struct dhcp_offload_info_params
The driver currently defines two different data structures to hold
DHCP Server Offload configuration:
- typedef tSirDhcpSrvOffloadInfo
- struct dhcp_offload_info_params

To align with the converged software architecture as well as the Linux
coding style remove the legacy typedef and exclusively use the unified
WMI structure.

Change-Id: Ia2b537a917bbe9e36ba4bc3b289e8c2e9ec630d6
CRs-Fixed: 2399938
2019-02-18 20:50:22 -08:00
Jeff Johnson
e77641ea77 qcacld-3.0: Fix DHCP_SERVER_OFFLOAD featurization
When the DHCP_SERVER_OFFLOAD feature is enabled the driver does not
build, so address the build issues.

Change-Id: I42103afd91c4bed2d04f22bdb6159e286ff12fa0
CRs-Fixed: 2399937
2019-02-18 20:50:17 -08:00
Nachiket Kukade
92ee534ea3 qcacld-3.0: Cleanup usage of RA rate limit variables in WMA
By design, when APF is supported by target, RA filtering need
not be configured. Legacy code handled this by passing INI value
of RA rate limit value to WMA and intersecting it with APF
enabled flag. Change Iabb75b46fce64b2c4a7a303848d7cb6b4714253b
replaced this implementation by a single check in PMO. So remove
the WMA legacy code since it has no purpose now. Also remove
unused PMO prototypes pmo_update_ra_limit and
pmo_update_target_service.

Cleaunp the WMA code that intersects RA rate limit and APF
variables.

Change-Id: I870a1271a627d47242000f5e04068e628f567216
CRs-Fixed: 2379745
2019-02-15 11:46:18 -08:00
Sandeep Puligilla
01fcd3df08 qcacld-3.0: Advertise the MBSSID capability
Advertise MBSSID capability in association request frame.

Change-Id: Id70fbd35b6e486d9e3e0f6f483983d599cf4aca3
CRs-Fixed: 2396078
2019-02-15 06:47:36 -08:00
Kiran Kumar Lokere
9cab525856 qcacld-3.0: Add support for 11ax draft 3.3 changes
Add support for 11ax Draft 3.3 specification.

Change-Id: I18eda46c724f8febe5652876175bebfda3f7fc88
CRs-Fixed: 2388130
2019-02-15 03:27:15 -08:00
Jeff Johnson
19ce8d0f84 qcacld-3.0: Replace typedef tSirTxPowerLimit
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirTxPowerLimit typedef does
not meet any of those criteria, so replace it with a reference to the
underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: I0c466bfbf4b820911e983f8bf74dc9e6f7e8ab70
CRs-Fixed: 2399110
2019-02-14 20:18:30 -08:00
Jeff Johnson
e943bca8f9 qcacld-3.0: Replace typedef tSirLinkSpeedInfo
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirLinkSpeedInfo typedef does
not meet any of those criteria, so replace it (and the "tp" variant)
with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: I36ab84336b9f0290bc68eb5a42678fd49d0f3c51
CRs-Fixed: 2399107
2019-02-14 20:18:25 -08:00
Jeff Johnson
10cde6968b qcacld-3.0: Replace typedef tSirSmeHOFailureInd
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirSmeHOFailureInd typedef
does not meet any of those criteria, so replace it (and the "tp"
variant) with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: I313e1155aa463bc55ae2467539755fd75cf8a8eb
CRs-Fixed: 2399109
2019-02-14 20:18:21 -08:00
Jeff Johnson
bf8299a5a3 qcacld-3.0: Remove enum wma_tdls_off_chan_mode
As part of TDLS componentization the legacy enum
wma_tdls_off_chan_mode was replicated, creating enum
tdls_off_chan_mode. All of the TDLS code has transitioned
to the new enum. Since the legacy enum is obsolete, remove it.

Change-Id: I02f9fba0d3fc0cf1f9bada82d3fedc49845f99ee
CRs-Fixed: 2397352
2019-02-13 14:47:22 -08:00
Jeff Johnson
f51c7fa48b qcacld-3.0: Converge on enum tdls_peer_state
As part of TDLS componentization the legacy enum WMA_TdlsPeerState was
replicated, creating enum tdls_peer_state.  Unfortunately this left
the driver with two different enums which serve the same purpose,
which is pointless. Furthermore, due to the way in which these enums
are used, there is an implicit requirement that they be exactly
identical. This approach is very fragile. To align with the converged
software architecture and to improve code maintainability remove the
legacy enum and exclusively use the TDLS public enum.

Change-Id: I4ded30d12cd7c8ebcf6a36331240f5c26c413d85
CRs-Fixed: 2397351
2019-02-13 14:47:18 -08:00
stonez
396a973271 qcacld-3.0: Get evm inforation of each antenna in groups
User layer need to get evm info of each groups of antenna.
Host first get this info by WMI command and then transfer
it to user layer by netlink.

Change-Id: I6e15b85962d06718799f91b86f07ddd8762adb5c
CRs-Fixed: 2381569
2019-02-12 10:06:11 -08:00
Jeff Johnson
a7f41dd592 qcacld-3.0: Replace typedef roam_offload_synch_ind
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The roam_offload_synch_ind typedef
does not meet any of those criteria, so replace it (and the "tp"
variant) with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: Ieb91f75f4444873ab465d419409d46c05c65b091
CRs-Fixed: 2396068
2019-02-11 23:57:51 -08:00
Jeff Johnson
d686ba7411 qcacld-3.0: Replace typedef tSirRoamOffloadScanRsp
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirRoamOffloadScanRsp typedef
does not meet any of those criteria, so replace it (and the "tp"
variant) with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: I8c9a3680d7b78e99fecd64d8dee095b28a502ce1
CRs-Fixed: 2396067
2019-02-11 23:57:45 -08:00
Jeff Johnson
e6da4b054b qcacld-3.0: Replace typedef tSirRoamOffloadScanReq
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirRoamOffloadScanReq typedef
does not meet any of those criteria, so replace it (and the "tp"
variant) with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: I3e7d5bd70618d132cc028b978583e55c729a2c21
CRs-Fixed: 2396066
2019-02-11 23:57:38 -08:00
Jeff Johnson
562ccad1e9 qcacld-3.0: Replace typedef tSirKeepAliveReq
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirKeepAliveReq typedef does
not meet any of those criteria, so replace it (and the "tp" variant)
with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: I68e1607c76c1ed1b7bc570ecae677e9c790803cb
CRs-Fixed: 2396065
2019-02-11 23:57:32 -08:00
Jeff Johnson
d6fda81520 qcacld-3.0: Replace typedef tSirHostOffloadReq
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirHostOffloadReq typedef does
not meet any of those criteria, so replace it (and the "tp" variant)
with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: I21970981e7a128f71abdd601181c596b9b32320b
CRs-Fixed: 2396064
2019-02-11 23:57:25 -08:00
Jeff Johnson
b13a559dfb qcacld-3.0: Remove WMA_TDLS_SET_OFFCHAN_MODE handling
As part of TDLS componentization the handling of TDLS off-channel was
relocated to the TDLS component. Subsequently change
I983851d8cc0d3605c3d6bd0d8975c72844f71740 ("qcacld-3.0: TDLS: remove
remaining legacy code") removed the logic which previously sent the
WMA_TDLS_SET_OFFCHAN_MODE message. Unfortuntely it left behind the
legacy logic which processed this message. Since this legacy logic is
obsolete, remove it.

Change-Id: Idb5c1af9a06ce744bb8a689fc40700f3837ad0fc
CRs-Fixed: 2396062
2019-02-11 23:57:14 -08:00
Jeff Johnson
2ba3c27fe6 qcacld-3.0: Remove WMA_TDLS_CONNECTION_TRACKER_NOTIFICATION_CMD
Change I9163e8ec7a41750085d8673b25cf4797d1b84714 ("qcacld-3.0: TDLS:
remove legacy connection tracker") removed the usage of
WMA_TDLS_CONNECTION_TRACKER_NOTIFICATION_CMD, so remove the obsolete
command.

Change-Id: Id0a715ea03af44221f512e57775e3d7028739178
CRs-Fixed: 2396061
2019-02-11 23:57:07 -08:00
Jeff Johnson
834dcdd3d6 qcacld-3.0: Replace typedef tSirIbssPeerInactivityInd
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirIbssPeerInactivityInd
typedef does not meet any of those criteria, so replace it (and the
"tp" variant) with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: I392d7db54aa78c390aa268aacca39818b6ec5aca
CRs-Fixed: 2396056
2019-02-11 23:56:42 -08:00
Harprit Chhabada
f4340b13e4 qcacld-3.0: remove unnecessary typecast in wma_fill_roam_synch_buffer
As typecast can mask programming errors,
remove typecast from chan, key and fils_info.

Change-Id: If33ec4e4e5d8071b80c6323271a48cefdf354512
CRs-Fixed: 2395909
2019-02-11 15:32:42 -08:00
Jeff Johnson
cbc8532c57 qcacld-3.0: Replace typedef tSirSmeMissedBeaconInd
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirSmeMissedBeaconInd typedef
does not meet any of those criteria, so replace it (and the "tp"
variant) with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: I24f35dd3248c78c9f9cab3d724032ae1fa5e890d
CRs-Fixed: 2395997
2019-02-10 04:04:43 -08:00
Jeff Johnson
ffb93e1699 qcacld-3.0: Replace typedef tSirSmeMicFailureInd
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirSmeMicFailureInd typedef
does not meet any of those criteria, so replace it (and the "tp"
variant) with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names and
so-called Hungarian notation, so in conjunction rename the underlying
struct to be in compliance.

Change-Id: Ic5cd76804a3e1462c1e92be3d1d2dd6911b108dc
CRs-Fixed: 2395996
2019-02-10 04:04:37 -08:00
Jeff Johnson
b120a829a9 qcacld-3.0: Replace typedef tSirPlmReq
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirPlmReq typedef does not
meet any of those criteria, so replace it (and the "tp" variant) with
a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names
and so-called Hungarian notation, so in conjunction rename the
underlying struct to be in compliance.

Change-Id: Ie7eb223daef08337dda492e2d63754eb69ca09b9
CRs-Fixed: 2394995
2019-02-09 18:02:34 -08:00
Sandeep Puligilla
d3201dd085 qcacld-3.0: Add check for bss_list size in wma_group_num_bss_to_scan_id
In wma_group_num_bss_to_scan_id(), bssid_list may get accessed
outside of the available buffer size.

Fix the possible out of boundary access by adding a check.

Change-Id: I5e278bd96b8f57c96f53d7c3cd8f4f3e5a67fc6c
CRs-Fixed: 2385431
2019-02-09 01:41:33 -08:00
Jeff Johnson
f115894a17 qcacld-3.0: Implement WAR for tdls_peer_update_state convergence
An upcoming set of changes will converge three sets of TDLS structs
into one. In order to allow the qcacld-3.0 changes to be made
independent of the qca-wifi-host-cmn changes change the call to
wmi_unified_update_tdls_peer_state_cmd() to use (void *) typecasting.

Note that this is a temporary change since the typecasting will be
completely removed when the convergence has been completed.

Change-Id: I59089575b2f5f7470ad60ca85247367c14e72bcd
CRs-Fixed: 2395336
2019-02-08 20:05:31 -08:00
Kiran Kumar Lokere
47d0dacaf4 qcacld-3.0: Correct the key type value in set key request
Send correct key type parameter value to crypto component in
set key request.

Change-Id: I17554a72f62e356871cb0a684a066c7d794f4d02
CRs-Fixed: 2388032
2019-02-08 17:47:56 -08:00
Jeff Johnson
ecd4f21b4a qcacld-3.0: Replace typedef tSirSupportedRates
The Linux Coding Style enumerates a few special cases where typedefs
are useful, but stresses "NEVER EVER use a typedef unless you can
clearly match one of those rules." The tSirSupportedRates typedef does
not meet any of those criteria, so replace it (and the "tp" variant)
with a reference to the underlying struct.

Further note the Linux Coding Style frowns upon mixed-case names
and so-called Hungarian notation, so in conjunction rename the
underlying struct to be in compliance.

Change-Id: I5007379a50223b6de85830e7ae389e65cdb8e4d3
CRs-Fixed: 2392398
2019-02-06 04:25:07 -08:00
Krunal Soni
f9ba53dbbc qcacld-3.0: Implement iwpriv cmd to get WLM stats from FW
As per new requirements to debug game latency related issues,
implement an iwpriv command which:
1) sends a bitmask to FW's Wireless Latency Manager module (WLM).
2) receives from WLM a measurement header along with measurement data.
3) converts both the header and data to a hexadecimal encoded string.
4) returns the hexadecimal encoded string to userspace

Change-Id: Ic79c4b757fe2d4e806306750250e3c102745c486
CRs-Fixed: 2388920
2019-02-05 23:44:10 -08:00
Dustin Brown
e8d91fc50a qcacld-3.0: Remove WMA_MAX_SUPPORTED_BSS
As part of the effort to use a single definition for the maximum number
of vdevs, replace WMA_MAX_SUPPORTED_BSS with WLAN_MAX_VDEVS.

Change-Id: I7f0bd615b65e21dc0052933d5e194ca650336b42
CRs-Fixed: 2393167
2019-02-05 13:37:41 -08:00
Pragaspathi Thilagaraj
d5cb9e8196 qcacld-3.0: Add vdev valid check for vdev level wmi commands
Check if vdev is active for the following vdev commands before
sending it to firmware:
1. WMI_SCAN_PROB_REQ_OUI_CMDID
2. WMI_VDEV_WMM_ADDTS_CMDID
3. WMI_VDEV_SET_WMM_PARAMS_CMDID
4. WMI_BCN_TMPL_CMDID

This will avoid the race condition where the vdev is deleted
and the vdev related commands for the deleted vdev are sent
to firmware before wmi_stop_inprogress is set at wmi.

Change-Id: Ib3eacc191002395de9640516b9088b01b3a64966
CRs-Fixed: 2392770
2019-02-05 04:02:01 -08:00
gaurank kathpalia
c380383cbf qcacld-3.0: Use the peer mac address array instead of structure
Currently the driver uses structure for peer mac address
to store the mac address.

Use the already existing peer mac address array for the same.

Change-Id: Id3715f6abbbf23f4f8d1836eb548b5193a62500a
2019-02-05 01:38:59 -08:00
gaurank kathpalia
2e1aa99e00 qcacld-3.0: Check peer address before peer create
Check peer address for group or zero before peer create
as there is no way a MGMT frame can be sent to such
a peer, and it also may lead to peer leak in FW, if
this peer is created, as peer delete doesn't go for
such a peer.

Fix is to have a sanity check and then only allow
peer create in host and FW.

Change-Id: Ia7f9e870f10ff8fea5b03f01697370d05ca06668
CRs-Fixed: 2392771
2019-02-05 01:38:55 -08:00
Harprit Chhabada
6420b58077 qcacld-3.0: Fix null pointer dereference in wma_fill_roam_synch_buffer
chan, a pointer to wmi_channel is derived from
param_buf->chan. param_buf->chan is derived from
WMI_ROAM_SYNCH_EVENTID_param_tlvs structure and
can be null. This may lead to null pointer dereference
when chan try to access the mhz field, chan->mhz.

Change-Id: I84ade344d2df3dfb5e35e7afaca3ddb768e22769
CRs-Fixed: 2385447
2019-02-04 15:36:29 -08:00
Nachiket Kukade
2fb1fdb1ac qcacld-3.0: Combine all NAN related flags with WLAN_FEATURE_NAN
Flag WLAN_FEATURE_NAN_DATAPATH was added to protect NAN Datapath
related code, while WLAN_FEATURE_NAN_CONVERGENCE was added to
protect the converged code inside NAN Component. Since the
original NAN Discovery related code has now been moved inside
NAN component and NAN Datapath cannot exist without NAN Discovery,
keeping these flags separate doesn't make sense. Combine these
two flags with WLAN_FEATURE_NAN flag which is the original NAN
feature flag.

As a cleanup of NAN code, combine all NAN related flags with
WLAN_FEATURE_NAN flag.

Change-Id: If98ecaace17f8724e9c28325ef61e721f42e1d8f
CRs-Fixed: 2377375
2019-02-04 10:44:30 -08:00
gaurank kathpalia
0c48d3d640 qcacld-3.0: Replace WNI dot11 mode with mlme dot11 mode
As part of CFG ini convergence, remove the macros of WNI
and replace them with the new enums of mlme dot11 mode

Change-Id: Ib7fbf480aa067d02690eb1448c74fcc083d94c59
CRs-Fixed: 2389401
2019-02-01 16:01:43 -08:00
Jeff Johnson
9d45f33ab9 qcacld-3.0: Refine the "set scan oui" logic
Make the following updates to the "set scan oui" logic:
1) Exclusively use the Unified WMI data structures.
2) Update the HDD<=>SME interface to enforce the contract that SME
   must not make any assumptions about the buffers provided by HDD.
3) Replace instances of mixed-case identifiers.
4) Document the API definitions, not the implementations.

Change-Id: I5df3962fc45395b37b4e566f98b840e37f601d26
CRs-Fixed: 2389640
2019-01-30 18:54:07 -08:00
Wu Gao
2f2cddb2ea qcacld-3.0: Cleanup unused WNI_CFG_DNLD_REQ
WNI CFG needn't to download since all wni cfg refactored based on new
cfg framework, so remove WNI_CFG_DNLD_REQ.

Change-Id: Icd85b7797fcbc41debe55edb6b1f68478797d726
CRs-Fixed: 2387589
2019-01-30 14:31:19 -08:00
Wu Gao
55020ecda8 qcacld-3.0: Remove unused cfg messages
Legacy cfg is cleaned up since all wni cfg refactored based on new cfg
framework, so remove unused cfg messages.

Change-Id: Ibb31eae1d17dcd9c2481b13c6246dd89b954e710
CRs-Fixed: 2385963
2019-01-30 14:31:14 -08:00
Arif Hussain
0fe654a4e7 qcacld-3.0: Fix possible OOB read in stats event handler
Fix possible OOB read while handling
WMI_REPORT_STATS_EVENTID from firmware.

Change-Id: I9c6efae3bc11447aeb36bd9c4db43848e277f86f
CRs-Fixed: 2382056
2019-01-30 06:01:07 -08:00
Jeff Johnson
5c68c5b672 qcacld-3.0: Use new vdev_id field in struct add_ts_param
Change I93743c3b1e3180589a3af83ed9e51d8dc95324d9 ("qcacmn: Rename
sme_session_id in struct add_ts_param (1/2)") introduced a new name
for the sme_session_id field in struct add_ts_param, so use the new
name, vdev_id.

Change-Id: I84b21c14b9254996ff034de8786838e89bc52b38
CRs-Fixed: 2384158
2019-01-29 21:47:16 -08:00
Arif Hussain
770477fde7 qcacld-3.0: Fix null pointer dereference stats event handler
Fix possible null pointer dereference while handling
WMI_REPORT_STATS_EVENTID from firmware.

Change-Id: Id8b4f7c26bbae428cd7bc6f2f88b5bd72fd27284
CRs-Fixed: 2380746
2019-01-29 16:54:27 -08:00
Harprit Chhabada
31e3e168b3 qcacld-3.0: clean up max scan count CFG/INI
Clean up CFG_MAX_SCAN_COUNT CFG CFG item.
Remove ini for max_scan_count. Use WLAN_MAX_ACTIVE_SCANS_ALLOWED
to initialize max_scan_count and send to firmware.

Change-Id: I52e07b63a82297d30f2532bc5a8e05004877b141
CRs-Fixed: 2382308
2019-01-29 09:57:48 -08:00
Wu Gao
9a94b4e7c6 qcacld-3.0: Cleanup legacy cfg related files
Since all wni cfg is refactored based on legacy new cfg framework, no
legacy cfg files is needed now. Cleanup related files in this change.

Change-Id: If46ae4c59f1010a655aa65e3502fc0c660e33cdc
CRs-Fixed: 2383387
2019-01-29 09:57:44 -08:00
Pragaspathi Thilagaraj
8b12fbe756 qcacld-3.0: Update phymode during channel width updation
When roaming is completed if the phymode of the target AP is
different from current phymode, then firmware will have updated
phymode and host driver will have older phy mode. The host driver
will update the opmode when new opmode is found over beacon or
vht opmode action frame. During opmode updation over
wma_process_update_opmode(), phymode is also sent to firmware.
As the phymode on the host driver is not updated to new value
after roaming and there will be mismatched phymode sent to
firmware. Firmware will not be able to handle this and asserts.

With current design, the channel width and frequency are updated
to wma interface on roam synch complete. Fix is to update the
phymode also after roam synch complete is received to wma iface
based on the new channel width updated.

Change-Id: I54aec080f53d3b49a309f9cb66553ec7c1805c50
CRs-Fixed: 2380456
2019-01-27 19:40:50 -08:00
Abhishek Singh
d5cf22dffb qcacld-3.0: Change to include PDEV MLME component object
Changes to include PDEV MLME component object for VDEV SM.

Change-Id: I1f89e9bf5a4d5b17be7ec3c4fc52a5f8fe8f1862
CRs-Fixed: 2381858
2019-01-24 20:14:33 -08:00
Abhishek Singh
d1f21c7b0d qcacld-3.0: Refactor firmware, serialization and HDD CMD timeouts
Refactor firmware, serialization and command timeouts so that
HDD timeout are greater than serialization is greater than firmware
timeout.

The timeouts are defined considering below worst case delay in
firmware.
WMI_VDEV_START_REQUEST_CMDID	6 sec
WMI_VDEV_RESTART_REQUEST_CMDID	6 sec
WMI_VDEV_STOP_CMDID		2 sec
WMI_PEER_DELETE_CMDID		2 sec
WMI_PEER_ASSOC_CMDID		2 sec
WMI_PDEV_SET_HW_MODE_CMDID	2 sec
WMI_PDEV_SET_MAC_CONFIG_CMDID	2 sec

Change-Id: I270e980ed1cf2aee55a1fa4e88ff8ddc845a203b
CRs-Fixed: 2384389
2019-01-24 16:17:50 -08:00
Abhinav Kumar
aa8f2dffcc qcacld-3.0: Find Session Id by BSSID while handling TSM Stats rsp
Currently, value of staIndex in dph hash table is not getting
updated after roaming. But diver invokes pe_find_session_by_sta_id
to get PE session to handle eWNI_SME_GET_TSM_STATS_RSP. Due to a
different value of staIndex and staid, session lookup fails for
StaId. This results in failure of IOCTL command "GETTSMSTATS"
after roaming.

Fix is to use bssid instead of sta id to find session in
lim_send_sme_pe_ese_tsm_rsp.

Change-Id: I42745c864ac0292dbcaae05f62a00a141705d431
CRs-Fixed: 2381668
2019-01-24 12:30:11 -08:00
Ajit Pal Singh
a82f921467 qcacld-3.0: Use correct wma_is_valid_fw_stats_cmd() variant for Genoa
Use the correct variant i.e. HELIUMPLUS version of
wma_is_valid_fw_stats_cmd() for QCN7605(Genoa) - USB and SDIO also.
With the non-HELIUMPLUS variant 'txrx_fw_stats' command was geting
rejected.

Change-Id: I499bc568d7ed58d78dcc4aa86f433a8af76727f2
CRs-Fixed: 2378162
2019-01-24 12:30:07 -08:00
Pragaspathi Thilagaraj
24789d3b86 qcacld-3.0: Remove legacy PNO related WCNSS_qcom.ini items
The following PNO related ini items are moved to converged scan
component:
CFG_ENABLE_DFS_PNO_CHNL_SCAN 	 CFG_PNO_SCAN_SUPPORT
CFG_PNO_SCAN_TIMER_REPEAT_VALUE	 CFG_PNO_SLOW_SCAN_MULTIPLIER
CFG_PNO_CHANNEL_PREDICTION	 CFG_TOP_K_NUM_OF_CHANNELS
CFG_STATIONARY_THRESHOLD	 CFG_CHANNEL_PREDICTION_FULL_SCAN_MS
CFG_ADAPTIVE_PNOSCAN_DWELL_MODE	 CFG_MAWC_NLO_EXP_BACKOFF_RATIO
CFG_SCAN_BACKOFF_MULTIPLIER      CFG_MAWC_NLO_ENABLED
CFG_MAWC_NLO_INIT_SCAN_INTERVAL	 CFG_MAWC_NLO_MAX_SCAN_INTERVAL

Remove legacy ini definitions and related macros for these
ini values.

Change-Id: I81bdbd917969fc8a73e6e5359ca69f78acdf723c
CRs-Fixed: 2375450
2019-01-23 15:14:13 -08:00
Wu Gao
eef680e4d0 qcacld-3.0: Exclude unused head file cfg_api.h
Since head file "cfg_api.h" is needn't, exclude it form these files.

Change-Id: Ic8f03b366eb9a20b153bbbafc778fab14340325a
CRs-Fixed: 2383295
2019-01-22 23:41:51 -08:00