Commit Graph

10848 Commits

Author SHA1 Message Date
Jeff Johnson
82664a6294 qcacld-3.0: Pass correct param type via QoS callback
The QoS callback is supposed to pass a mac_handle_t (aka tHalHandle)
to HDD, but in most cases what is actually passed is a tpAniSirGlobal.
Even though these ultimately reference the same structure, an upcoming
change will enforce type safety so update the bad callers to pass a
parameter of the correct type.

Change-Id: I5913c3cf577606f8c207b1e40897b8cbe681de48
CRs-Fixed: 2267442
2018-06-26 22:42:42 -07:00
Jeff Johnson
64c2b55bce qcacld-3.0: Correctly call sme_get_current_roam_state()
Function sme_get_current_roam_state() takes a mac_handle_t (aka
tHalHandle) as the first parameter. However in some cases the caller
is actually passing a tpAniSirGlobal. Even though these ultimately
reference the same structure, an upcoming change will enforce type
safety so update the bad callers to pass a parameter of the correct
type.

Change-Id: I3e17de9656fd83598cfd35b63843dd3f7b25d072
CRs-Fixed: 2267441
2018-06-26 22:42:37 -07:00
Jeff Johnson
8131a9d1d9 qcacld-3.0: Fix sme_process_ready_to_suspend() context param
Currently sme_process_ready_to_suspend() takes a tHalHandle context
param.  However this is a static internal function, and hence it
should be using the "real" context pointer type tpAniSirGlobal instead
of the opaque reference tHalHandle, so update the API to expect
tpAniSirGlobal (which is what is already being passed by
sme_process_msg()).

Change-Id: Ic2f28613ce0f4df0a104aaa1ab23b311abe5e334
CRs-Fixed: 2267440
2018-06-26 22:42:33 -07:00
Jeff Johnson
bfc58a1000 qcacld-3.0: Fix sme_ibss_peer_info_response_handler() param
Currently sme_ibss_peer_info_response_handler() takes a tHalHandle
context param.  However this is a static internal function, and hence
it should be using the "real" context pointer type tpAniSirGlobal
instead of the opaque reference tHalHandle, so update the API to
expect tpAniSirGlobal (which is what is already being passed by
sme_process_msg()).

Change-Id: I553b485f0e54f173d31e8931f3bda6bba8ede77d
CRs-Fixed: 2267439
2018-06-26 22:42:28 -07:00
Jeff Johnson
24e65b5f76 qcacld-3.0: Fix sme_tsm_ie_ind() context param
Currently sme_tsm_ie_ind() takes a tHalHandle context param.  However
this is a static internal function, and hence it should be using the
"real" context pointer type tpAniSirGlobal instead of the opaque
reference tHalHandle, so update the API to expect tpAniSirGlobal
(which is what is already being passed by sme_process_msg()).

Change-Id: Ica6add4b81ad7ffd664ee6e46f2e8b43a731771f
Crs-Fixed: 2267438
2018-06-26 22:42:24 -07:00
Jeff Johnson
06c447fcb5 qcacld-3.0: Fix sme_ft_send_update_key_ind() context param
Currently sme_ft_send_update_key_ind() takes a tHalHandle context
param.  However this is a static internal function, and hence it
should be using the "real" context pointer type tpAniSirGlobal instead
of the opaque reference tHalHandle, so update the API to expect
tpAniSirGlobal (which is what is already being passed by
sme_ft_update_key()).

Change-Id: I5309a6f9125684bc0d7766d5839f2296150b6834
CRs-Fixed: 2267437
2018-06-26 22:42:20 -07:00
nshrivas
c99eff17c7 Release 5.2.0.85J
Release 5.2.0.85J

Change-Id: I9b85f3d8ea34fa77ec171ec173f1e406e04530a1
CRs-Fixed: 774533
2018-06-26 20:11:38 -07:00
Krunal Soni
da0e1e7d34 qcacld-3.0: Add cmd_id as unique number to legacy sme command
Current driver keeps cmd_id as 0 for all non-scan commands which
makes serialization module's logic more complex in order to identify
between duplicate commands.

Add unique cmd_id and attach it to each legacy sme command to make
serialization module's logic easy to distinguish between duplicate
commands.

CRs-Fixed: 2267418
Change-Id: Id2ccb435137061c963120822326fe5b90f857eb7
2018-06-26 20:11:38 -07:00
Jeff Johnson
3aa54d42ef qcacld-3.0: Remove dead code in start pending ACS callback
In wlan_hdd_cfg80211_start_pending_acs() the result of calling
container_of() is NULL checked. The container of a work_struct is
always a valid pointer, so the NULL check is unnecessary. Remove this
resulting dead code.

Change-Id: Iac4d48037ee27bc5de4c5fbc7f91188d837c6d49
CRs-Fixed: 2267075
2018-06-26 20:11:34 -07:00
Bala Venkatesh
f2a75c0522 qcacld-3.0: Allow scanning on DFS channel if sta+sap scc is enabled
Allow scanning on DFS channel if sta+sap scc on dfs channel is
enabled.

CRs-Fixed: 2163490
Change-Id: I7bb94ed211062ff0f0f0ca93c765d51f26e28ce2
2018-06-26 20:11:31 -07:00
nshrivas
862915744c Release 5.2.0.85I
Release 5.2.0.85I

Change-Id: I701617fd3ec98841b1408ec1dbfe0863ac5bc0c1
CRs-Fixed: 774533
2018-06-26 18:53:22 -07:00
Vignesh Viswanathan
ba40f4b509 qcacld-3.0: Reset fw_peer_count for HO failure during del BSS
Currently fw_peer_count for HO failure is done in wma_roam_ho_fail_handler
which can lead to improper reset of the fw_peer_count if a HDD triggered
disassoc is in progress for the same peer leading to fw_peer_count going
to -1.

Reset the fw_peer_count for HO failure case in wma_delete_bss_ho_fail
API as this is called from the CSR/LIM for handling HO failure as
part of CSR disconnect.

Change-Id: I1526757b085086ca51eef9b9cca0ea757ed20b61
CRs-Fixed: 2266337
2018-06-26 18:53:21 -07:00
Nirav Shah
99923a8330 qcacld-3.0: Map all module logs to per-level log APIs
Map all module level log APIs to per-level log APIs
to compile out specific log level if required.

Change-Id: Icfcc28fb592ee99704d8fb23bc3cb45b6e4c9f53
CRs-Fixed: 2266718
2018-06-26 18:53:18 -07:00
nshrivas
fa4f48a18b Release 5.2.0.85H
Release 5.2.0.85H

Change-Id: I778a35079509d6a5856cb970af8626f3b64fd7b0
CRs-Fixed: 774533
2018-06-26 17:36:00 -07:00
Bala Venkatesh
867d411eea qcacld-3.0: Ignore CSA if the channel is DFS or disabled
If MCC to SCC switch is enabled, SAP is active and CSA
received for STA interface, then ignore the CSA if channel
is DFS/disabled.

CRs-Fixed: 2266838
Change-Id: I98b8d957766358ea86cc9f50339725cf4bf0038b
2018-06-26 17:36:00 -07:00
nshrivas
6d4cab4b01 Release 5.2.0.85G
Release 5.2.0.85G

Change-Id: I9991efbabd8e3fac7e4d7f646d1a7ba8ded1c2bd
CRs-Fixed: 774533
2018-06-26 01:35:55 -07:00
Ajit Pal Singh
a9d5382e9a qcacld-3.0: Check per vdev limits for selecting discard frames
When HL Flow Control is enabled, check for per vdev limits for making
a decision on whether frames should be discarded.

Change-Id: Ifde5f763d253eb644f97afeab9e4e1365c23e672
CRs-fixed: 2236321
2018-06-26 01:35:54 -07:00
Ajit Pal Singh
d6c08f2f0e qcacld-3.0: Add function to set vdev tx_desc limit
1) Add ol txrx function to set TX descriptor limits for a
vdev.
2) Set the TX descriptor limits for STA and AP mode.

Change-Id: Ie9b1e52c3aff05db99ba3748a94792cc8116cdca
CRs-fixed: 2236321
2018-06-26 01:35:51 -07:00
Ajit Pal Singh
aa4a47fedb qcacld-3.0: Restart netdev queues when tx_desc get free
1) Restart high priority netdev queue when tx descriptors get freed
   and the vdev->tx_desc_count < vdev->tx_desc_limit.
2) Restart normal priority netdev queues when tx descriptors get freed
   and the vdev->tx_desc_count < vdev->queue_start_th.

Change-Id: I99cc159289bc31558294e02cd9213a18472563f6
CRs-fixed: 2236321
2018-06-26 01:35:47 -07:00
Ajit Pal Singh
851a777ffc qcacld-3.0: Update OS queue status in TXRX module
Add function: ol_txrx_set_vdev_os_queue_status() to update
OS queue stop/start status in TXRX module.
Also call cdp_hl_fc_set_os_queue_status() from 'flow control
resume timer' to update OS queue status in TXRX module.

Change-Id: I03260985a48084bc523a3814c93c0e6b213e1970
CRs-fixed: 2236321
2018-06-26 01:35:42 -07:00
Ajit Pal Singh
5bcf68a52a qcacld-3.0: Stop netdev queues when limits reach
1) Stop non priority netdev queues when tx-q stop threshold reaches.
2) Stop priority queue when tx_desc_limit reached.

Change-Id: Idcacc19b6d47dd665bb54f210d6da292cbe5af8d
CRs-fixed: 2236321
2018-06-26 01:35:38 -07:00
Ajit Pal Singh
5d269618d5 qcacld-3.0: Populate legacy flow control ops for HL
1) Populate legacy flow control ops 'cdp_lflowctl_ops'
for HL netdev flow control.
2) Also call cdp_hl_fc_register() to register HL flow control
callback.
3) Increase number of netdev queues to 5

Change-Id: I6bdb015b3325e54386f2aad093c89f6f782c24ed
CRs-fixed: 2236321
2018-06-26 01:35:35 -07:00
nshrivas
6e18516d85 Release 5.2.0.85F
Release 5.2.0.85F

Change-Id: I12e05da166f2b66798c31609627f372b69a7d6cc
CRs-Fixed: 774533
2018-06-25 23:52:53 -07:00
Jeff Johnson
d549efa633 qcacld-3.0: Use mac_handle_t in wlan_hdd_ioctl
Change "qcacld-3.0: Introduce mac_handle_t" introduced a modern
name for what was previously called the tHalHandle. Transition
wlan_hdd_ioctl to use the new naming.

Change-Id: I5b6a062e02dc6db387c0a4e4cc363cdac7013f45
CRs-Fixed: 2267221
2018-06-25 23:52:52 -07:00
Rachit Kankane
95f3158770 qcacld-3.0: Disable features for Genoa
Disable all those features which are not required for GENOA IOT

Change-Id: I9aaf36b4aa632ab44de85e0da00081fded31ad91
CRs-Fixed: 2266976
2018-06-25 23:52:46 -07:00
nshrivas
f8b05e2874 Release 5.2.0.85E
Release 5.2.0.85E

Change-Id: I90bdd714fad2cf6c4eaf5608ecdeba98e56cdf5d
CRs-Fixed: 774533
2018-06-25 22:31:19 -07:00
Jeff Johnson
89a0c74c9b qcacld-3.0: Use mac_handle_t in wlan_hdd_hostapd
Change "qcacld-3.0: Introduce mac_handle_t" introduced a modern
name for what was previously called the tHalHandle. Transition
wlan_hdd_hostapd to use the new naming.

Change-Id: I63b3bc8017de7f73a09599f9e8c9ef41009d6bc6
CRs-Fixed: 2267151
2018-06-25 22:31:19 -07:00
nshrivas
56a38b34f2 Release 5.2.0.85D
Release 5.2.0.85D

Change-Id: I31217d7700e5be4ffb3828967b8e97bad3930cfd
CRs-Fixed: 774533
2018-06-25 21:19:03 -07:00
Jeff Johnson
2954dedb2d qcacld-3.0: Use mac_handle_t in wlan_hdd_power
Change "qcacld-3.0: Introduce mac_handle_t" introduced a modern
name for what was previously called the tHalHandle. Transition
wlan_hdd_power to use the new naming.

Change-Id: I6729766eda0b6dc31d62028a8552c9fa9d7ce4f0
CRs-Fixed: 2267218
2018-06-25 21:19:03 -07:00
nshrivas
ba7feddb50 Release 5.2.0.85C
Release 5.2.0.85C

Change-Id: Id4ece5014f266403e3414a21b098d7955a66250b
CRs-Fixed: 774533
2018-06-25 19:54:02 -07:00
Jeff Johnson
cbbc78f93c qcacld-3.0: Use mac_handle_t in wlan_hdd_wmm
Change "qcacld-3.0: Introduce mac_handle_t" introduced a modern
name for what was previously called the tHalHandle. Transition
wlan_hdd_wmm to use the new naming.

Change-Id: I225c7b62b2b104941564856b3ed1ee20e3a8e1cd
CRs-Fixed: 2267123
2018-06-25 19:54:01 -07:00
Jeff Johnson
34fc63ab8d qcacld-3.0: Use mac_handle_t in wlan_hdd_cfg80211
Change "qcacld-3.0: Introduce mac_handle_t" introduced a modern
name for what was previously called the tHalHandle. Transition
wlan_hdd_cfg80211 to use the new naming.

Change-Id: Ia9a7014db052c46ee16d2cb834b46a0b7afafeee
CRs-Fixed: 2267223
2018-06-25 19:53:58 -07:00
Jeff Johnson
cec6e923a5 qcacld-3.0: Use mac_handle_t in wlan_hdd_wext
Change "qcacld-3.0: Introduce mac_handle_t" introduced a modern
name for what was previously called the tHalHandle. Transition
wlan_hdd_wext to use the new naming.

Change-Id: I3cabec634252453b33c8f480ba785cc739e872df
CRs-Fixed: 2267115
2018-06-25 19:53:55 -07:00
nshrivas
1b32bad189 Release 5.2.0.85B
Release 5.2.0.85B

Change-Id: Id6e7898edce0d6afea6801e37721c99a9b5b6af8
CRs-Fixed: 774533
2018-06-25 15:54:53 -07:00
Dustin Brown
662f48b2a2 qcacld-3.0: Initialize all completion vars for SAP vdevs
Because a SAP vdev can be repurposed as a station adapter, there is a
case where a station vdev that was created as a SAP vdev will try to
access uninitialized completion variables. As these members are directly
attached to the adapter struct, always initialize them, regardless of
the vdev type at time of creation.

Change-Id: Ifc14ec677ffa76551e55fe982a58df21d430d6c6
CRs-Fixed: 2266419
2018-06-25 15:54:53 -07:00
nshrivas
a19536fb16 Release 5.2.0.85A
Release 5.2.0.85A

Change-Id: Ifd268f2dd9e6771bba5b60966cc0d18f4bece11b
CRs-Fixed: 774533
2018-06-25 14:12:48 -07:00
Nirav Shah
23054cfb6d qcacld-3.0: Use only 2 copy engine for RFS in Genoa
Use only 2 copy engine channels for RFS in QCN7605
(Genoa) if IPA is enabled.

Change-Id: Iabc1c21960807c707b2c9c2ad66d2e426dcb38ab
CRs-Fixed: 2265172
2018-06-25 14:12:47 -07:00
Abhinav Kumar
db3c6f57e3 qcacld-3.0: Fix out-of-bounds access in lim_process_assoc_req_frame
Currently the function lim_process_assoc_req_frame uses frame_len
without validation to parse the IE buffer which could lead to
out-of-bounds memory access if the frame_len is less than or
equal to LIM_ASSOC_REQ_IE_OFFSET(4).

Add check to validate the frame_len with LIM_ASSOC_REQ_IE_OFFSET
before sending (frame_len - LIM_ASSOC_REQ_IE_OFFSET) to
cfg_get_vendor_ie_ptr_from_oui to parse only the IE buffer.

Change-Id: Iaa9e8db4a2605169c9ad3904878a2e626eb6de8b
CRs-Fixed: 2259707
2018-06-25 14:12:45 -07:00
nshrivas
41721b79f8 Release 5.2.0.85
Release 5.2.0.85

Change-Id: I4d3de98263738989c2f206923d8f2dfac147c807
CRs-Fixed: 774533
2018-06-25 12:41:08 -07:00
Jeff Johnson
13386da460 qcacld-3.0: Fix csr_is_pmf_capabilities_in_rsn_match() param
Currently csr_is_pmf_capabilities_in_rsn_match() takes a tHalHandle
context param.  However csr is internal to the UMAC, and hence it
should be using the "real" context pointer type tpAniSirGlobal instead
of the opaque reference tHalHandle, so update the API to expect
tpAniSirGlobal.

Change-Id: Ie13e86dac694bc1c17305f12aeb817387cc7c4bd
CRs-Fixed: 2266509
2018-06-25 12:41:07 -07:00
Jeff Johnson
3f9d9fbcd0 qcacld-3.0: Fix csr_is_bss_description_wme() context param
Currently csr_is_bss_description_wme() takes a tHalHandle context
param.  However csr is internal to the UMAC, and hence it should be
using the "real" context pointer type tpAniSirGlobal instead of the
opaque reference tHalHandle, so update the API to expect
tpAniSirGlobal.

Change-Id: I2812f57e57a06a71a81bee20773587fa99189e40
CRs-Fixed: 2266506
2018-06-25 12:41:04 -07:00
Jeff Johnson
2ef47449f6 qcacld-3.0: Fix sme_unprotected_mgmt_frm_ind() context param
Currently sme_unprotected_mgmt_frm_ind() takes a tHalHandle context
param.  However this is a static function, and hence it should be
using the "real" context pointer type tpAniSirGlobal instead of the
opaque reference tHalHandle, so update the API to expect
tpAniSirGlobal.

Change-Id: I552cade9adf0bdc7a9cf38c76cd8786548dc7011
CRs-Fixed: 2266505
2018-06-25 12:41:01 -07:00
Jeff Johnson
711fe948c4 qcacld-3.0: Fix param to rrm_change_default_config_param()
Currently in sme_update_config() the call to
rrm_change_default_config_param() is passing a mac_handle_t instead of
a tpAniSirGlobal. Change the call to pass the correct parameter.

Change-Id: I1490e3f491c1c8539acc0054343263366fb8bfca
CRs-Fixed: 2266503
2018-06-25 12:40:57 -07:00
Jeff Johnson
f86cac17cc qcacld-3.0: Pass correct param to sme_ps_start_uapsd()
Currently in multiple places calls to sme_ps_start_uapsd() are passing
a tpAniSirGlobal instead of a mac_handle_t. Change these calls to pass
the correct parameter.

Change-Id: I9cd30be8eb237423cb621b390be2bbc75ecebb92
CRs-Fixed: 2266502
2018-06-25 12:40:54 -07:00
nshrivas
d7e010020e Release 5.2.0.84Z
Release 5.2.0.84Z

Change-Id: I351b585ae121f7981b6cd57d0cf29964f733e29c
CRs-Fixed: 774533
2018-06-25 11:28:41 -07:00
Jeff Johnson
0a38afe444 qcacld-3.0: Pass correct param to sme_get_config_param()
Currently in sme_get_channel_bonding_mode5_g() and
sme_get_channel_bonding_mode24_g() the calls to sme_get_config_param()
are passing a tpAniSirGlobal instead of a tHalHandle. Change these
calls to pass the correct parameter.

Change-Id: I1fc1b357f96d29babc2bb8439b924fbd1fb74b62
CRs-Fixed: 2266455
2018-06-25 11:28:40 -07:00
nshrivas
74437a0b26 Release 5.2.0.84Y
Release 5.2.0.84Y

Change-Id: I4ac4b592eedb0c46e1358723c99b683b1d5703f8
CRs-Fixed: 774533
2018-06-25 10:02:21 -07:00
Bala Venkatesh
b39ed1597e qcacld-3.0: Update nw_type of pe session when switching channel
In peer assoc command, the phy mode of peer is updated based on
the nw_type of pe session. So this value should accordingly as per
the new channel.

Change-Id: Ib596cb343f239456aba688b2b5ea7b19b3034a66
CRs-Fixed: 2161043
2018-06-25 10:02:21 -07:00
Lin Bai
7d83a64f4c qcacld-3.0: Configure num_vdevs for FTM mode
Recent num_vdevs configuration change involved the regression,
that num_vdevs in FTM mode isn't configured, and default 0 interface
allowed. This is blocking FTM initialized.

Though no vdev required for FTM, here use INI configuration
to bypass check as well.

CRs-Fixed: 2266815
Change-Id: I019814fb2c37f1f9b5922545769761bed7a0da52
2018-06-25 10:02:16 -07:00
nshrivas
fd0d832ac8 Release 5.2.0.84X
Release 5.2.0.84X

Change-Id: I6589aa00deaa02a431a770c807267a754b7fcdbf
CRs-Fixed: 774533
2018-06-25 06:31:47 -07:00