Commit Graph

1578 Commits

Author SHA1 Message Date
lifeng
0b46ae503e qcacld-3.0: Refine mlme reg configurations
Refine mlme reg configurations based on converged cfg component.
Remove related legacy codes.

Change-Id: I524b29d2d03e60111fa1759d11e32236bb3aa3fa
CRs-Fixed: 2357961
2018-12-19 04:56:44 -08:00
Sourav Mohapatra
c55bdf3e26 qcacld-3.0: Add ini based control for Beacon Reception stats
Currently, the support for beacon reception stats is only dependent on
the FW.

Add an ini so that the user can also have a control over the stats

Change-Id: I4a1e654b9d1598836378def494b37a997904d77a
CRs-Fixed: 2366473
2018-12-19 02:04:22 -08:00
Nachiket Kukade
6003bd2adf qcacld-3.0: Route the legacy NAN commands through NAN component
NAN component has been moved to CLD. It includes implementation
of the new NAN command QCA_NL80211_VENDOR_SUBCMD_NAN_EXT.
Change the legacy NAN implementation of vendor cmd
QCA_NL80211_VENDOR_SUBCMD_NAN so that the requests go
through the NAN component. Clean up the legacy path.
Functionality remains unchanged for legacy command.

Route the legacy NAN commands through the NAN component.

Change-Id: I542e5afe832619f8c088220cc4456aa7fe4416fd
CRs-Fixed: 2356772
2018-12-18 14:29:19 -08:00
Abhishek Singh
3360227b8c qcacld-3.0: Fill mgmt_encryption_type in case of RSNE override
In case of RSNE override, the mgmt_encryption_type is not set
and thus AP is not considered as PMF capable by LIM.

TO fix this update mgmt_encryption_type if AP is RSN capable and
profile is RSN capable.

Change-Id: I3350d33ca605c82726156f4f00a8a497dc07d3a8
CRs-Fixed: 2368692
2018-12-18 07:46:10 -08:00
Pragaspathi Thilagaraj
784c492c07 qcacld-3.0: Remove legacy powersave ini and refactor to mlme component
Add the functionality changes to replace the legacy powersave
parameters corresponding to the ini values that were converged.

Remove the legacy powersave ini items.

Change-Id: I1da9af9aac4a02a16dc22a43f7f9d526e196d599
CRs-Fixed: 2364964
2018-12-14 22:49:22 -08:00
Harprit Chhabada
4691a470a1 qcacld-3.0: Cleanup scan active, passive and rest concurrent dwell time
Cleanup Scan active, passive and rest concurrent dwell time CFG/INI
references from legacy code

Change-Id: I9b33a578d0075d5b34a2f45fbe0273abb6da78ae
CRs-Fixed: 2363174
2018-12-14 19:05:45 -08:00
lifeng
faa83cb69c qcacld-3.0: Refine gFwDebugModuleLoglevel configurations
Refine gFwDebugModuleLoglevel configurations based on converged cfg
component. Remove related legacy codes.

Change-Id: I5a1099872163bdcf0fc2e08478c4b608529db736
CRs-Fixed: 2355599
2018-12-14 07:15:06 -08:00
Manikandan Mohan
9045e2e664 qcacld-3.0: Update for converged thermal throttle params
Update qcacld driver to use converged CFG component for thermal
mitigation throttle offload feature config params. Also cleanup
hdd ini config based redundant entries.

Change-Id: I9c94d1cd7bf9f630ed92ebe0f9f6d6233a216ee5
CRs-fixed: 2358492
2018-12-13 23:21:21 -08:00
Jeff Johnson
d544de42cb qcacld-3.0: Remove sme_qos_a_cto_up_map
The mapping table sme_qos_a_cto_up_map is unused, so remove it.

Change-Id: I1a7b25b07f555dc873cdcafec20f47f1494ec4eb
CRs-Fixed: 2365051
2018-12-13 18:43:57 -08:00
Jeff Johnson
3a87ce0ef9 qcacld-3.0: Remove FEATURE_WLAN_BTAMP_UT_RF
The driver contains FEATURE_WLAN_BTAMP_UT_RF code that is no longer
supported, so remove it.

Change-Id: Id9ff85b5a7c05e01fe6ceac0e9ce3e6aef6ff964
CRs-Fixed: 2365050
2018-12-13 18:43:53 -08:00
Jeff Johnson
1b86b8755f qcacld-3.0: Remove typedef eNeighborRoamEmptyScanCount
The eNeighborRoamEmptyScanCount enumerations are not used by the
current version of the driver, so remove the typedef.

Change-Id: Iafeef92741a6c7c8dd7b3039738b1828eed2ee60
CRs-Fixed: 2364277
2018-12-13 18:43:50 -08:00
Jeff Johnson
44b03b1868 qcacld-3.0: Remove typedef eNeighborRoamScanMode
The eNeighborRoamScanMode enumerations are not used by the current
version of the driver, so remove the typedef.

Change-Id: I2846de40e09665d1b39d64656e89d05c2009203e
CRs-Fixed: 2364276
2018-12-13 18:43:46 -08:00
Jeff Johnson
380e27bd15 qcacld-3.0: Remove obsolete csr_neighbor_roam prototypes
csr_neighbor_roam.h contains two prototypes for functions that are no
longer a part of the driver, so remove them.

Change-Id: I3edc2c0625ba20ac6db15d69275b31a5e93ef734
CRs-Fixed: 2364275
2018-12-13 18:43:42 -08:00
Jeff Johnson
3ff667f34a qcacld-3.0: Remove unused WNI_CFG macros
Ongoing CFG componitization removed the enumerations for some
legacy configuration items that are now supported by component
configuration. However some of the changes did not remove the
MIN/MAX/DEF/LEN macros or enumeration macros.  For all of the
ones that are now unused, remove them now.

Change-Id: Ib48e10cd09ef6811c9104c0b92f4b8f1665e5a5d
CRs-Fixed: 2364270
2018-12-13 18:43:24 -08:00
Jeff Johnson
622aad6d3d qcacld-3.0: Use the refined struct wmi_unified_pmk_cache
The original definition of struct wmi_unified_pmk_cache had several
anomalies:
1) It contains an unnecessary tlv_header field. Only the fw-api
   structs should contain TLV headers.
2) It contains a mis-named session_id field. Common structures should
   use converged terminology, in this case vdev_id

qca-wifi-host-cmn change If4be27111c604c16ea437aa654210cdff28220a7
("qcacmn: Refine struct wmi_unified_pmk_cache (phase 1)") completely
addressed the first issue, and as the first phase of fixing the second
issue it replaced the session_id field with an anonymous union which
contains both the existing session_id field and a new vdev_id field.
Being part of a union these field will overlay each other.

For the current phase replace the reference to session_id with a
reference to vdev_id in sme_set_del_pmkid_cache().

Change-Id: Ief4bcb819cb3c842adb74904f2cb2483476eaeb9
CRs-Fixed: 2363433
2018-12-13 16:45:47 -08:00
gaurank kathpalia
4ef9ba2cf8 qcacld-3.0: Modify the active dwell time in ACS scan
Currently the driver scans for the channels as part of ACS
algorithm, to select the best channel for SAP bringup.
But the active dwell time set in the scan request is Zero,
hence the active probe is not sent to the AP, and the DUT
(SAP in this case), just passively scans the channels for BSS,
which causes latency in SAP bringup.

Fix is to initialize the default active dwell time in case of
ACS scan, and set broadcast probe to true.

Change-Id: If4f001a9b272a7894125d81f2895cfa6f6ca2bc4
CRs-Fixed: 2363789
2018-12-13 14:57:12 -08:00
gaurank kathpalia
41361360f9 qcacld-3.0: Modify the active dwell time in scan for ssid
Currently the driver scans for the bssid if it is not present
in the scan cache, due to expire of scan results.
But the active dwell time set in the scan request is Zero,
hence the active probe is not sent to the AP, and the DUT
(STA in this case), just passively scans the channels for that
BSSID, which causes latency in connection.

Fix is to initialize the default active dwell time in case of
scan for ssid.

Change-Id: I38c8c0335e10544d165c510b59e013e9ee2a5031
CRs-Fixed: 2363980
2018-12-13 14:57:09 -08:00
Harprit Chhabada
88c4e42509 qcacld-3.0: Cleanup scan concurrent active and passive min time
Cleanup Scan active and passive concurrent time CFG/INI
references from legacy code.

Concurrent active and passive min time component is never used,
so remove it.

Change-Id: Idca5285d58bea659a1a481c1f33827608377ab98
CRs-Fixed: 2363138
2018-12-12 12:29:14 -08:00
Arunk Khandavalli
ca56d4b488 qcacld-3.0: Add Host Driver support for Beacon reception stats
Implementation of Host driver support to collect per Vdev Beacon
reception  Stats from firmware and display the stats in sysfs.

	"adb shell cat /sys/class/net/wlan0/beacon_stats"
vdev id: 0
Total Beacon Count: 255
Total Beacon Miss Count: 21
Beacon Miss Bit map [0x800] [0x10000000] [0x22000400] [0x100]
[0x84000000] [0x4030002] [0x5034000] [0x28084]

Change-Id: Iadd31042320f7815a6a6f4733f5393dba93b5b3e
CRs-Fixed: 2360913
2018-12-11 12:27:05 -08:00
Jianmin Zhu
a9005b33bf qcacld-3.0: Move ifdef CONFIG_VDEV_SM outside of functions in lim
Moves ifdef CONFIG_VDEV_SM outside of functions in lim.

Change-Id: I4ec40ce1dedccdc69e0e2dd68c1823ec4bb7549a
CRs-Fixed: 2362457
2018-12-11 08:17:25 -08:00
Abhishek Singh
935e4776f4 qcacld-3.0: Add support to enable/disable scan with reason code
Adds support to enable/disable scan for psoc/vdev with reason,
so that multiple clients can enable/disable the scan at same time.

Scan will remain disabled till all clients enable it back.

Change-Id: I693e223870142f831f8eefa59a9053960886bad6
CRs-Fixed: 2362098
2018-12-10 23:33:29 -08:00
Jeff Johnson
6142985f4c qcacld-3.0: Remove unused csr_roam_profile fields
The following fields in struct csr_roam_profile are unused, so remove
them:
- nWSCReqIELength
- pWSCReqIE
- fils_connection

Change-Id: I8fcae065b10d5480f2adab77427ef3048448d9a1
CRs-Fixed: 2364100
2018-12-10 20:21:40 -08:00
Yeshwanth Sriram Guntuka
334aa8de95 qcacld-3.0: Add MLME CFG items of FE_WLM and FE_RRM
Add the following WLM and RRM ini configs to MLME
cfg:
CFG_LATENCY_ENABLE
CFG_LATENCY_LEVEL
CFG_LATENCY_FLAGS_NORMAL
CFG_LATENCY_FLAGS_MOD
CFG_LATENCY_FLAGS_LOW
CFG_LATENCY_FLAGS_ULTLOW
CFG_RRM_ENABLE
CFG_RRM_MEAS_RAND_INTVL
CFG_RM_CAPABILITY

Change-Id: I714aca1e9bc6d3c330934753364d7f58d93a28d7
CRs-Fixed: 2353103
2018-12-10 07:23:13 -08:00
Jeff Johnson
8c3ecdd8d8 qcacld-3.0: Fix csr_api_scan.c function style issues
Many of the function signatures in csr_api_scan.c do not conform to
the coding style, so make them conforming.

Change-Id: I50a46c2227b639af652b4e21d3a84d62140fce2c
CRs-Fixed: 2361755
2018-12-07 11:18:42 -08:00
Jeff Johnson
70fa7bb88d qcacld-3.0: Remove obsolete csr_api_scan.c macros
The file csr_api_scan.c defines multiple macros, most of which are
not actually used by the current version of the code, so remove the
obsolete ones.

Change-Id: Ic3c64dea55ab19bbf1f39b52eedca121aef5bd25
CRs-Fixed: 2361754
2018-12-07 11:18:38 -08:00
Jeff Johnson
dca4e096ae qcacld-3.0: Remove typedef eCsrDot11FragThresh
The eCsrDot11FragThresh typedef, along with its member enumerations,
are unused, so remove them.

Change-Id: Ie57bf437072767b8befab8d28bb86b416737d137
CRs-Fixed: 2361343
2018-12-06 13:44:04 -08:00
Jeff Johnson
ed79bf8fb6 qcacld-3.0: Remove csr_rates_find_best_rate()
Function csr_rates_find_best_rate() is unused, so remove it, along
with the now unused support function csr_rates_mac_prop_to_dot11().

Change-Id: I0a9e7894734a5a4f47030f8d12d0e41d0b23e95e
CRs-Fixed: 2361290
2018-12-06 12:02:53 -08:00
Jianmin Zhu
3c50e40af5 qcacld-3.0: Handle Vdev restart Failure in STA mode
When switch channel failed,  need handle it gracefully,
pass failure to PE and disconnect current session.

Change-Id: If489e519a1784dabf630d5bde34ef8de56abf5e1
CRs-Fixed: 2360726
2018-12-06 10:27:54 -08:00
lifeng
6d19c25d31 qcacld-3.0: Refine mlme btm configurations
Refine mlme btm configurations based on converged cfg component.
Remove related legacy codes.

Change-Id: I0a90eceea5636e268048ed6bf1532150dc1f6b24
CRs-Fixed: 2355353
2018-12-05 13:13:36 -08:00
Jeff Johnson
b356a45f7a qcacld-3.0: Remove tdlsCmd from tSmeCmd
Field tdlsCmd in struct tSmeCmd is unused, so remove it. Since that
field is the only user of struct tTdlsCmd, remove it and its composite
structs as well.

Change-Id: I06f8293b7f0ec2827016825c93fccc7075fcc9b7
CRs-Fixed: 2361288
2018-12-05 06:50:39 -08:00
Jeff Johnson
7e7947c307 qcacld-3.0: Remove addStaSessionCmd from tSmeCmd
Field addStaSessionCmd in struct tSmeCmd is unused, so remove it.
Since that field is the only user of struct addstafor_sessioncmd
remove that as well.

Change-Id: I5624ab301c11045de34781dc4dff3ef7d2c784d8
CRs-Fixed: 2361287
2018-12-05 06:50:39 -08:00
Jeff Johnson
db4e363cd9 qcacld-3.0: Remove remainChlCmd from tSmeCmd
Field remainChlCmd in struct tSmeCmd is unused, so remove it. Since
that field is the only user of struct tRemainChlCmd, remove that as
well.

Change-Id: I99c7ee1187f8f17a1e4003fb3c2509e857745e20
CRs-Fixed: 2361286
2018-12-05 06:50:38 -08:00
Abhinav Kumar
d4d6eb7d4e qcacld-3.0: ADD MLME INI items of FE_BEAMFORM and WLAN_REG
Add the following WLAN_REG ini configs and FE_BEAMFORM
cfg items to MLME cfg:
1. WNI_CFG_11D_ENABLED
2. WNI_CFG_11H_ENABLED
3. WNI_CFG_TX_BF_CAP
4. WNI_CFG_AS_CAP
5. WNI_CFG_DISABLE_LDPC_WITH_TXBF_AP

Introduce the basic infra APIs related to these configs
from mlme.

In csr_roam_open_session, lim_populate_vht_mcs_set,
lim_sta_send_add_bss, populate_dot11f_tdls_ht_vht_cap,
populate_dot11f_vht_caps and sme_update_nss, local structure
is updated instead of mlme global structure for vht caps and
thus the mlme vht caps contains only the default values.

Fix this by updating mlme vht caps in mlme_update_vht_cap.

Change-Id: I1a948d7a44ad2bcc7f711c46b278971d7e4026e7
CRs-Fixed: 2354562
2018-12-04 19:57:54 -08:00
Jeff Johnson
63af281213 qcacld-3.0: Replace tpAniSirGlobal in SME misc
To align with the Linux coding style replace tpAniSirGlobal with
struct mac_context * in:
nan_api.c
nan_datapath_api.c
sme_ft_api.c
sme_ft_api.h
sme_inside.h
sme_nan_datapath.h
sme_power_save.c
sme_power_save_api.h
sme_rrm.c
sme_rrm_api.h
sme_trace.c
sme_trace.h

Change-Id: Ied3f2d5ef4bac2b4e67c0c1e1055dddf58f9868a
CRs-Fixed: 2360296
2018-12-04 05:36:57 -08:00
Jeff Johnson
9b95e306b8 qcacld-3.0: Replace tpAniSirGlobal in SME QOS
To align with the Linux coding style replace tpAniSirGlobal with
struct mac_context * in:
sme_qos.c
sme_qos_api.h
sme_qos_internal.h

Change-Id: Idb247cfab508543bbdaa9cd1f57a374fc8b6799e
CRs-Fixed: 2360293
2018-12-04 05:36:51 -08:00
Jeff Johnson
edece84530 qcacld-3.0: Replace tpAniSirGlobal in SME CSR
To align with the Linux coding style replace tpAniSirGlobal with
struct mac_context * in:
csr_api.h
csr_api_roam.c
csr_api_scan.c
csr_cmd_process.c
csr_host_scan_roam.c
csr_inside_api.h
csr_internal.h
csr_neighbor_roam.c
csr_neighbor_roam.h
csr_roam_preauth.c
csr_support.h
csr_util.c

Change-Id: I38a4602d5e31c818e81df2a9de8073667087f44a
CRs-Fixed: 2360292
2018-12-04 05:36:47 -08:00
Jeff Johnson
0a8786ae3f qcacld-3.0: Replace tpAniSirGlobal in sme_api
To align with the Linux coding style replace tpAniSirGlobal with
struct mac_context * in:
sme_api.h
sme_api.c

Change-Id: If0264aeecf484c1adf4342a895e3449aee8f3006
CRs-Fixed: 2360291
2018-12-04 05:36:44 -08:00
Arif Hussain
224d38154f qcacld-3.0: Refactor more dfs cfg items
Refactor following DFS cfg items
CFG_DISABLE_DFS_CH_SWITCH
CFG_ENABLE_DFS_PHYERR_FILTEROFFLOAD_NAME
CFG_IGNORE_CAC_NAME
CFG_DFS_RADAR_PRI_MULTIPLIER_NAME
CFG_SAP_TX_LEAKAGE_THRESHOLD_NAME
CFG_DFS_BEACON_TX_ENHANCED
CFG_DISABLE_DFS_JAPAN_W53
CFG_ENABLE_NON_DFS_CHAN_ON_RADAR

Change-Id: I7f39ed0680919c6a383d9b8bae5864f979b6948c
CRs-Fixed: 2351995
2018-12-04 00:05:53 -08:00
Jeff Johnson
b5c1333cf4 qcacld-3.0: Replace pSessionEntry with pe_session
Per the Linux coding style both mixed-case names and so-called
Hungarian notation are frowned upon. There are multiple variations of
the identifier "pSessionEntry" currently in use, so replace them with
pe_session everywhere they occur in the driver.

Change-Id: I6cc37504bf9e8821c0e1c3d99e4f97a57aaba24c
CRs-Fixed: 2360166
2018-12-03 11:09:46 -08:00
gaurank kathpalia
3d2e38572b qcacld-3.0: Add CFG items of power
Add power items related CFG items in new file,
and store the respective inis in MLME component

Change-Id: Iac183da52495aca07c6270edeb9f383ab49c1ff5
CRs-Fixed: 2341900
2018-12-02 14:59:45 -08:00
Jeff Johnson
a0619e4264 qcacld-3.0: Replace PMAC_STRUCT() with MAC_CONTEXT()
The inline function MAC_CONTEXT() is the preferred mechanism for
converting a MAC handle into a MAC context, so replace all instances
of the legacy macro PMAC_STRUCT().

Change-Id: Ieb29696c79b729648462be699892607484c2f301
CRs-Fixed: 2357873
2018-11-30 14:36:47 -08:00
Jianmin Zhu
d0ab26143d qcacld-3.0: Use converged cmd types for STA and SAP
For STA connect/disconnect, SAP start/stop relative cmds, just
use following serialization command types:
Converged cmd types:
	WLAN_SER_CMD_VDEV_START_BSS
	WLAN_SER_CMD_VDEV_STOP_BSS
	WLAN_SER_CMD_VDEV_CONNECT
	WLAN_SER_CMD_VDEV_DISCONNECT
	WLAN_SER_CMD_VDEV_RESTART

Change-Id: I533f650e1f69048d6861751ab74f75d8d5f18c83
CRs-Fixed: 2318545
2018-11-30 02:22:51 -08:00
Arif Hussain
178f35f013 qcacld-3.0: Refactor TWT cfg
Refactor following TWT cfg items.
CFG_BCAST_TWT
CFG_ENABLE_TWT
CFG_TWT_RESPONDER
CFG_TWT_REQUESTOR
CFG_TWT_CONGESTION_TIMEOUT

Change-Id: Iad0c2ed0893513cc98bf12ec39d111b78c6e9d1f
CRs-Fixed: 2349558
2018-11-29 18:11:55 -08:00
Wu Gao
51a6356b60 qcacld-3.0: Apply second part of LFR INIs changes
Since refined second part of LFR INIs, apply these changes in
SME/MAC/WMA layer.

Change-Id: I7994a9038d5bd094ce23bcd525ef8f5282974bfc
CRs-Fixed: 2346790
2018-11-29 18:11:48 -08:00
Wu Gao
4f8938a510 qcacld-3.0: Refactor one mlme sta INI
Based on new cfg component, refactor CFG_TX_POWER_CTRL_NAME and clean
up related legacy codes.

Change-Id: I6dd317d5065c4111b71a9fe94d9b9af1f7d3d664
CRs-Fixed: 2355918
2018-11-29 18:11:38 -08:00
Abhishek Singh
ea9e8bcf92 qcacld-3.0: Fix NULL SSID filled in connected roam profile
Connected roam profile's SSID is used to get the BSS entry from kernel
and indicate the same to kernel in cfg80211_connect_bss. If the
roam profile's SSID is NULL, the BSS entry indicated to kernel is
with NULL SSID and this result in disconnect from supplicant as
it assume that SSID of AP changed.

Fix is to fill the SSID in connected roam profile from roam profile
if SSID is NULL in beacon.

Change-Id: Ie42eceb50b6af551ac1f4ca7d37b73eff107dfbd
CRs-Fixed: 2349572
2018-11-29 18:11:01 -08:00
gaurank kathpalia
cbf1212230 qcacld-3.0: Verify the nss config with rf chains supported
The driver fills the nss chains params in the vdev during
vdev create. The nss and chain params are filled by the user
in the ini file, but it may happen that the user filled the
nss param for that particular vdev as 2, and the number of
supported rf chains are 1, which is sent to the driver by FW,
so that would result in nss as 2, and chains as 1, which cannot
be supported.

Fix is to downgrade the nss to the number of chains supported by
the FW.

Change-Id: Ifa3ee74dbe5b8d19c6dc11ff64e42dbffadaa018
CRs-Fixed: 2354205
2018-11-28 03:56:58 -08:00
Jeff Johnson
01f2c23bf6 qcacld-3.0: Rename pMac in sme_api.c
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.

For this change rename all instances of "pMac" to "mac" in:
sme_api.c

Change-Id: If45f33b93230d1085ee1a3c4dbf35e1f4bfcab27
CRs-Fixed: 2356102
2018-11-27 20:10:34 -08:00
Pragaspathi Thilagaraj
4e36fbef21 qcacld-3.0: Send roam scan offload config after roam sync complete
When host driver receives roam sync complete event, the
disable_hi_rssi to false if band is 2G and the high rssi
threshold delta needs to be sent to the firmware to take effect.
But presently the csr_roam_scan_offload exits with failure as
the driver issues start again.

Call csr_roam_scan_offload with ROAM_SCAN_OFFLOAD_UPDATE_CFG
command.

Change-Id: Ic3c9a729c290accbe9822948bc2363154db4c83f
CRs-Fixed: 2355359
2018-11-27 20:10:30 -08:00
Jeff Johnson
ad9fc724cf qcacld-3.0: Rename pMac in csr_internal.h
Per the Linux coding style "mixed-case names are frowned upon" and
"so-called Hungarian notation [...] is brain damaged." One identifier
used extensively throughout the driver that violates both of these
tenants is "pMac." In order to be compliant with the Linux coding
style there is a campaign to rename all instances of this identifier.

For this change rename all instances of "pMac" to "mac" in:
csr_internal.h

Change-Id: I136277d79765b63f83c4079c49a6dcc830f21e69
CRs-Fixed: 2356093
2018-11-27 18:30:59 -08:00