Commit Graph

9019 Commits

Author SHA1 Message Date
Arunk Khandavalli
80a61351fb qcacld-3.0: Extract phy_capability from target psoc
As part of converged init deinit architecuture, all the target
capabilities are saved as part of target_psoc_info, use the same
to update.

CRs-Fixed: 2178726
Change-Id: Iad1d0224e0fdfe1140d1600e17f3e585142eaf63
2018-02-07 02:15:12 -08:00
Will Huang
9323e8559b qcacld-3.0: Add msg.flush_callback for wma_send_msg_by_priority
If wma_send_msg with msg_type WMA_SET_LINK_STATE_RSP, tpLinkStateParams
params has a member callbackArg which is malloc from heap. If this
message is flushed when driver unload, because no msg.flush_callback is
supplied, the flush just free msg->bodyptr and callbackArg got leak.

Fix it by supply a flush_callback as wma_discard_fw_event, and minor
change to avoid NULL pointer access.

Change-Id: Ie979a1e83cbd7c87e5bbb08382ae2af3230a13db
CRs-Fixed: 2181458
2018-02-07 02:15:08 -08:00
jiad
195f703bd6 qcacld-3.0: save return value of hdd_ipa_init
If hdd_ipa_init failes, driver cleanup is done. But return value
of hdd_ipa_init is not saved and returned to caller. This will
lead to wrong behaviors if following actions depend on the
return value.

Fix is to save return value of hdd_ipa_init.

Change-Id: Iad10733c8fcb7049aa9573ccd1da51250aa7fddf
CRs-Fixed: 2181510
2018-02-07 02:15:05 -08:00
snandini
33c5f328d7 Release 5.2.0.64S
Release 5.2.0.64S

Change-Id: I086941fb6f0332018edce525dc3d03797793e156
CRs-Fixed: 774533
2018-02-07 00:03:52 -08:00
Alok Kumar
0771953462 qcacld-3.0: Fix buffer over-read issue in htt_t2h_lp_msg_handler
Currently type conversion issues are for variables compl_msg
and pool_numap_payload. This may cause potential buffer over-read.

To address this issue add check for structure size.

Change-Id: Id4804eeaf5e80a9045f1c057fa4cb9db15c1ab7d
CRs-Fixed: 2148306
2018-02-07 00:03:52 -08:00
Paul Zhang
3d026fbf4e qcacld-3.0: Call callback to sync the user-space
When the country code is changed, it needs to call
the new cfg80211 api cfg80211_send_reg_change_event
to sync the user-space info.

Change-Id: I1e31ff122f9337c353d8be260b4802cc363790d6
CRs-Fixed: 2183992
2018-02-07 00:03:50 -08:00
Alok Kumar
b46ae4adcc qcacld-3.0: Fix buffer overflow in htt_t2h_msg_handler
Currently variable "num_mpdu_ranges" is from message, which is used
directly without any validation which causes buffer over-write.

To address this issue add check for the valid num_mpdu_ranges

Change-Id: I3f340b913f3063b24c14644ea723a99690e89dcf
CRs-Fixed: 2146934
2018-02-07 00:03:47 -08:00
Vignesh Viswanathan
1f6e08faea qcacld-3.0: Add sanity check for vdev_id in wma_wow_wakeup_host_event
Currently wake_info->vdev_id, recevied from the FW, is directly used
to refer to wma->interfaces without validating if the vdev_id is valid.

Add sanity check to make sure vdev_id is less than max_bssid before
using it.

Change-Id: I66be7d15f370d0204e25c3d0ea60c0c9f5912005
CRs-Fixed: 2121059
2018-02-07 00:03:44 -08:00
snandini
0f916bda3f Release 5.2.0.64R
Release 5.2.0.64R

Change-Id: I3df93d811d57f26411321bbd58313bf126972227
CRs-Fixed: 774533
2018-02-06 17:32:56 -08:00
Himanshu Agarwal
ceb9faa305 qcacld-3.0: Remove dependency on WMA layer for green AP component
Remove dependency on WMA layer for green AP component by registering
green AP events through target_if layer.

Change-Id: Ic4ea8df1928db632b8e31f0a873b74c6aff4505d
CRs-Fixed: 2167028
2018-02-06 17:32:55 -08:00
snandini
bd27d79273 Release 5.2.0.64Q
Release 5.2.0.64Q

Change-Id: I392b078a9fc0b88e14d03728b5537c0cfd3619a0
CRs-Fixed: 774533
2018-02-06 15:51:35 -08:00
Zhang Qian
79d0d13265 qcacld-3.0: Release OCB resources when stop adapter
Currently, driver does not release resources acquired when
starting OCB adapter. So there is memory leak when stopping
OCB adapter.

CRs-Fixed: 2182236
Change-Id: I693f5ed86f55b00980f16cca1bb0567429a20385
2018-02-06 15:51:35 -08:00
snandini
4cf57e4458 Release 5.2.0.64P
Release 5.2.0.64P

Change-Id: I0b3b49fd9b8d8318b1b58d59b7ecae0555b16a5f
CRs-Fixed: 774533
2018-02-06 09:43:42 -08:00
Liangwei Dong
a78cc1d70b qcacld-3.0: Fix deadlock in driver probe failure
Wlan driver probe callback is called in
CNSS work thread(cnss_driver_event_work in
cnss_powerup).
In case the hdd_wlan_startup failed, and
doing cleanup in hdd_wlan_stop_modules,
the later will call and pending on pld_power_off
to wait for cnss completion. So, deadlock
happended.

Don't need to call power_down because we are in
(driver loading).

Fix by check driver loading state to skip
power_down.

Change-Id: Ib8605d91e01277ccdf4a67e09723c3ee34ceec0d
CRs-Fixed: 2183039
2018-02-06 09:43:42 -08:00
snandini
c4db9f6977 Release 5.2.0.64O
Release 5.2.0.64O

Change-Id: I79be74ed2c96b02d27b468e060ff4f2c252ade2c
CRs-Fixed: 774533
2018-02-06 07:44:48 -08:00
Himanshu Agarwal
2228e07483 qcacld-3.0: Add support to get objmgr pdev from scn handle
Add support to get objmgr pdev from scn handle in wmi event
handler functions.

Change-Id: Ie559f239133f353e6cf26f7511e1e558681638ef
CRs-Fixed: 2178122
2018-02-06 07:44:47 -08:00
snandini
9c689b206c Release 5.2.0.64N
Release 5.2.0.64N

Change-Id: I60d76e876161901096a2f795278839aa9ff8a4e6
CRs-Fixed: 774533
2018-02-05 05:57:35 -08:00
Himanshu Agarwal
87696b6c6c qcacld-3.0: Assign CFG_AUTO_CHANNEL_SELECT_WEIGHT_MIN as 0
Logically, minimum value of gAutoChannelSelectWeight ini
should be 0 but as CFG_AUTO_CHANNEL_SELECT_WEIGHT_MIN is
defined as 0x1, when user assigns gAutoChannelSelectWeight
as 0 in ini file, it is not taking effect and default value
of 0xff gets assigned as 0 is out of bound of [min,max]
range.

Assign CFG_AUTO_CHANNEL_SELECT_WEIGHT_MIN as 0 instead of 1.

Change-Id: I025fd2af757ca1f169b6f1a155ee9f041398c6fa
CRs-Fixed: 2181422
2018-02-05 18:32:43 +05:30
snandini
8b232c5886 Release 5.2.0.64M
Release 5.2.0.64M

Change-Id: I68e6791cfe88e336f88df5c341d92daaa6d17956
CRs-Fixed: 774533
2018-02-05 02:19:10 -08:00
jiad
4ab698b6eb qcacld-3.0: extend support to get IPA hw status
HDD_IPA_CHECK_HW limits to Helium and IPAv3 only.

Fix is to extend support to all platforms as long as IPA_OFFLOAD
is defined.

Change-Id: I35ac2cee58e242060757465e3870327d3c06673e
CRs-Fixed: 2182459
2018-02-05 02:19:09 -08:00
snandini
d63e2de947 Release 5.2.0.64L
Release 5.2.0.64L

Change-Id: I70d58edb8d23c53ffdb3e8eafe85daab3afcac6e
CRs-Fixed: 774533
2018-02-05 01:31:15 -08:00
Jiachao Wu
641760eac6 qcacld-3.0: Free peers when SSR
Free peers without waiting for peer unmap event when SSR.

Change-Id: I6fa6c1b2df4919ad34ec931c4217bec0eefb2eac
CRs-Fixed: 2176132
2018-02-05 01:31:14 -08:00
Jiachao Wu
4f9820f47b qcacld-3.0: Change btm stick time minimum value
Change btm stick time minimum value to 0.

Change-Id: I87fc49b3fb04cb5c0ba0023d3cd5b500258a1d66
CRs-Fixed: 2182589
2018-02-05 01:31:08 -08:00
snandini
a4e1896459 Release 5.2.0.64K
Release 5.2.0.64K

Change-Id: I20816e1230de094f1c4b440da1f000a081f25cd0
CRs-Fixed: 774533
2018-02-04 21:43:22 -08:00
bings
1826d9cbd5 qcacld-3.0: Move dfs leakage from cld to cmn
Move dfs leakage from cld to dfs module of cmn.

Change-Id: I17276fedf575f1a4029265be58d8fd088c1d956d
CRs-Fixed: 2174457
2018-02-04 21:43:22 -08:00
snandini
3bccfa1e90 Release 5.2.0.64J
Release 5.2.0.64J

Change-Id: I9e02604d5e299c11bd461f2ae93ebb399f48d86c
CRs-Fixed: 774533
2018-02-04 01:33:08 -08:00
Abhishek Singh
9fabbbb36e qcacld-3.0: Cleanup abort scan called from CSR and LIM
Cleanup abort scan called from CSR and LIM by calling
ucfg_scan_cancel api to abort the scan.

Change-Id: Ie146c60a1888a55b0da295864a9edc083fc36d1a
CRs-Fixed: 2180189
2018-02-04 01:33:07 -08:00
snandini
022bd9bf7d Release 5.2.0.64I
Release 5.2.0.64I

Change-Id: I4c25c8e0aacb92a8c772cfb3d0e98dade6b96273
CRs-Fixed: 774533
2018-02-03 15:10:43 -08:00
Arunk Khandavalli
cfde2719f5 qcacld-3.0: use converged target resource config
As part of converged architecture use the converged
target resource configuration.

CRs-Fixed: 2178610
Change-Id: Ic0e3cbddea3c216688eb16c4e9a8045c7a0a1e9e
2018-02-03 15:10:42 -08:00
Arunk Khandavalli
a6305a33b6 qcacld-3.0: Converge on Initial Host-FW handshake
Initial changes for the init deinit convergence wherein
service ready, extended service ready and init cmd are
converged.

Change-Id: I1c1fd50f51362f4f09561c259961e6761429fcd0
CRs-Fixed: 2178590
2018-02-03 15:10:39 -08:00
snandini
5313bafd17 Release 5.2.0.64H
Release 5.2.0.64H

Change-Id: I534bf898aa29d26f3a83fa7c716219c227973cf4
CRs-Fixed: 774533
2018-02-03 05:32:34 -08:00
Wu Gao
e279444ee4 qcacld-3.0: Buffer count be power of 2 and unmap nbuf
Count of htt tx buffer pool should be power of 2 for fail case. For
Rome platform, it does not unmap nbuf when free htt tx buffer pool.

Change-Id: I85a9a1d02bf403f1be7289b1a0a89f86ef25f763
CRs-Fixed: 2179770
2018-02-03 05:32:33 -08:00
snandini
db3a082bc2 Release 5.2.0.64G
Release 5.2.0.64G

Change-Id: I4ad87d33ba25bd4d5e9fb039d4c7213255fdf9b9
CRs-Fixed: 774533
2018-02-02 10:21:39 -08:00
Jiachao Wu
418b7ae6ee qcacld-3.0: Fix a memory leak in wma mgmt
Fix a memory leak in wma_mgmt_rx_process.

Change-Id: Id8a2065ca8b1adb20235580798333068852af897
CRs-Fixed: 2183089
2018-02-02 10:21:39 -08:00
snandini
7649486ecc Release 5.2.0.64F
Release 5.2.0.64F

Change-Id: I67418aa39911329206173d600bdb7e36d578cea8
CRs-Fixed: 774533
2018-02-02 07:45:51 -08:00
Ganesh Kondabattini
02ec62b207 qcacld-3.0: Correct the logic to decrement the beacon count in CSA IE
Beacon template may get updated from many use cases like change in
protection mode, update in CSA count and etc. Make sure that the driver
maintains the beacon count which is same as in beacon template, otherwise
there may be duplicate/missing beacon count due to inconsistency.

Decrement the beacon count value before updating the beacon template.

Change-Id: I0c4552445071dd6ab5322191c04d4f7d32c9a987
CRs-Fixed: 2170097
2018-02-02 07:45:49 -08:00
snandini
0ca68c9f2f Release 5.2.0.64E
Release 5.2.0.64E

Change-Id: I24cfd271f485b463202c2bbbf5cdd902a042d5ab
CRs-Fixed: 774533
2018-02-02 05:45:37 -08:00
Rajeev Kumar
3b90620aa4 qcacld-3.0: Destroy monitor mode vdev during stop adapter
In monitor mode during driver unload VDEV, PDEV and PSOC objects
are leaking because stop adapter is not cleaning up monitor mode
vdev. Destroy monitor mode vdev object during stop adapter such
that VDEV object and its parent PDEV, PSOC objects can be cleaned
up properly.

Change-Id: I2fe41fd7aee96f731c33eff5bfa94cd3aafa401e
CRs-Fixed: 2182674
2018-02-02 05:45:37 -08:00
snandini
66d0d69c59 Release 5.2.0.64D
Release 5.2.0.64D

Change-Id: I3f099991c053da788959ed9849e3dbfef1e0c6d2
CRs-Fixed: 774533
2018-02-02 00:27:29 -08:00
bings
02297abea9 qcacld-3.0: Use new APIs to get and set DFS Non-Occupancy-List(NOL)
Current driver is using pld_wlan_set_dfs_nol() and pld_wlan_get_dfs_nol()
directly through eSAP_DFS_NOL_SET and eSAP_DFS_NOL_GET case statements
respectively within HDD module. These methods are obsoleted as per
new driver design.

Use DFS component's utils_dfs_init_nol() and utils_dfs_save_nol() APIs
instead to get and set DFS NOL respectively.

Change-Id: I63e8adac3f99c2052c26e6b01d19071f098e0a4f
CRs-Fixed: 2172024
2018-02-02 00:27:24 -08:00
Jingxiang Ge
7a040dc01a qcacld-3.0: Add log info when override IpaConfig
Add log info when override IpaConfig.

Change-Id: I72f1aac6f12e38cff623c20647cad27232c6fd87
CRs-Fixed: 2182919
2018-02-02 00:27:14 -08:00
snandini
f4cfceb868 Release 5.2.0.64C
Release 5.2.0.64C

Change-Id: I1882c5e65c33c9d0753d93076186101a35d3b919
CRs-Fixed: 774533
2018-02-01 21:30:31 -08:00
Varun Reddy Yeturu
b5d858ec80 qcacld-3.0: Handle disassoc and deauth during LFR3 roaming
Ignore the disassociation and deauthentication requests from
the old AP once roaming is in progress. Memorize the
received disassoc/deauth. If the roaming is not successful
and current AP's connection is retained, then the earlier
received disassoc/deauth can be honored and disconnect can
be triggered internally.

Change-Id: I5fa4d154c17e08904d839b8a889020680d662021
CRs-Fixed: 2160681
2018-02-01 21:30:30 -08:00
Lin Bai
06cfea0405 qcacld-3.0: Fix compiler warning from FTM convergence
With FTM modification, compiler is throwing
'implicit declaration of function' warning, and treated as error.

Change-Id: I2341685ff6e25fcef25a6ae7bed365481e9d529c
CRs-Fixed: 2182458
2018-02-01 21:30:27 -08:00
snandini
1958756b31 Release 5.2.0.64B
Release 5.2.0.64B

Change-Id: I097064214809144e428cde4f515b516436bb071b
CRs-Fixed: 774533
2018-02-01 02:20:50 -08:00
Abhishek Singh
6884428a1a qcacld-3.0: Add ini to enabled/disable the SU beamformee in vendor VHTIE
Enabling SU beamformee in vendor vht IE gives good throughput in long
range while bad throughput in short range due to excessive sounding
action frames sent by APs.

So to give control to the user, add INI "enable_subfee_vendor_vhtie"
to enabled/disable the SU beamformee in vendor vht IE. It is
dependend on INI "gTxBFEnable" and if "gTxBFEnable" is set to 0
this will not have any effect and SU beam forming will always be
disabled.

Change-Id: Id67ea86d3e0a48fec8913d6254733f753dfdae8b
CRs-Fixed: 2178940
2018-02-01 02:20:49 -08:00
snandini
875125c39b Release 5.2.0.64A
Release 5.2.0.64A

Change-Id: Idb7993a667b0d7caf04799fa8762115d5be7dc91
CRs-Fixed: 774533
2018-01-31 21:49:27 -08:00
Jingxiang Ge
190679b412 qcacld-3.0: Fix use-after-free for peer->access_list
In ol_txrx_peer_release_ref, it is possible that this function is
scheduled out when just unlock peer_ref_mutex, unmap event will
come to decrease ref_cnt and free peer object, when
ol_txrx_peer_release_ref is scheduled back and access peer info,
it will cause use-after-free.

Get peer info in the protection of peer_ref_mutex.

Change-Id: Ic442f53e0993a931c4411d9dbc85f04d6a85dc46
CRs-Fixed: 2180584
2018-01-31 21:49:26 -08:00
snandini
93e4ee23dc Release 5.2.0.64
Release 5.2.0.64

Change-Id: I621bdf76ad733000190419767db0b1f8ef23099e
CRs-Fixed: 774533
2018-01-31 18:23:22 -08:00
Kiran Kumar Lokere
4087585aa2 qcacld-3.0: Add ADDBA extenstion element support
Add support to parase and include the ADDBA extesion
element in ADDBA request and response frames

Change-Id: Ifab94f77ff9d2757794d5530fee6596534a6d73b
CRs-Fixed: 2166790
2018-01-31 18:23:20 -08:00