Commit Graph

10000 Commits

Author SHA1 Message Date
Jeff Johnson
c6ab08f3cd qcacld-3.0: Fix csr_validate_any_default() context param
Currently csr_validate_any_default() 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: I6bbfe2329e776e1438dca06ad7642cb870796ff6
CRs-Fixed: 2268181
2018-06-27 00:17:48 -07:00
Jeff Johnson
0589eec8e3 qcacld-3.0: Fix csr_is_wapi_match() context param
Currently csr_is_wapi_match() 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: I0befea1f804204bc5589d33cf2d5fe6fd5126bf1
CRs-Fixed: 2268180
2018-06-27 00:17:44 -07:00
Jeff Johnson
d80e9159e4 qcacld-3.0: Fix csr_get_wapi_information() context param
Currently csr_get_wapi_information() 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: I54004093c729add183fc3e02033d78f829f47241
CRs-Fixed: 2268179
2018-06-27 00:17:40 -07:00
Jeff Johnson
353650ea71 qcacld-3.0: Fix csr_get_rsn_information() context param
Currently csr_get_rsn_information() 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: I29ad553360eddcf2b990b83bb0d1418d744a85ec
CRs-Fixed: 2268178
2018-06-27 00:17:35 -07:00
Jeff Johnson
44d0c09a2e qcacld-3.0: Fix csr_is_rsn_match() context param
Currently csr_is_rsn_match() 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: I33a73505039716a38ea94c19d12a0a3ce390b0b3
CRs-Fixed: 2268177
2018-06-27 00:17:31 -07:00
Jeff Johnson
95f0705a72 qcacld-3.0: Fix bad csr_neighbor_middle_of_roaming() typecasts
In both csr_create_roam_scan_offload_request() and
csr_neighbor_roam_indicate_disconnect() there is a call to
csr_neighbor_middle_of_roaming() where the MAC context is typecast to
tHalHandle as part of the function call. However these typecasts are
incorrect since csr_neighbor_middle_of_roaming() expects to get a MAC
context. Due to the manner in which tHalHandle is defined this does
not current cause a build issue, but an upcoming change will enforce
type checking so update these calls to remove the inappropriate
typecasts.

Change-Id: I7eeb3eb6b4502c1934a8cffdd1d7372f93ee8ccb
CRs-Fixed: 2268176
2018-06-27 00:17:27 -07:00
nshrivas
5fd702c44e Release 5.2.0.85K
Release 5.2.0.85K

Change-Id: I6b75a8c48c10668c2817d91323f448cbca73b551
CRs-Fixed: 774533
2018-06-26 22:42:52 -07:00
Jeff Johnson
78334bd8b0 qcacld-3.0: Fix csr_get_dot11_mode() context param
Currently csr_get_dot11_mode() 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. In addition the only caller is already passing
the real context pointer type so update the API to expect
tpAniSirGlobal.

Change-Id: I4f57252f0c94949b3219b5c07143d2545c659871
CRs-Fixed: 2267444
2018-06-26 22:42:51 -07:00
Jeff Johnson
8390fe23d8 qcacld-3.0: Fix lim_tx_complete() signature
lim_tx_complete() is currently defined to take a tHalHandle as the
first param. However the generic signature of a TX callback function
specifies that the first param should be a void *context. This
currently compiles because tHalHandle is defined to be a void *, but
this will soon be changed, so update lim_tx_complete() to explicitly
use a void *context.

Change-Id: I421e8acb25beed23d2f3803380a46db33b6f0964
CRs-Fixed: 2267443
2018-06-26 22:42:46 -07:00
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
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