Commit-Graf

9049 Incheckningar

Upphovsman SHA1 Meddelande Datum
snandini
8237109cf6 Release 5.2.0.65D
Release 5.2.0.65D

Change-Id: I5b5605ac5da4359d8ba3df53b88ad1e2aa7b1529
CRs-Fixed: 774533
2018-02-08 07:55:41 -08:00
Padma, Santhosh Kumar
10a655f54c qcacld-3.0: Fix stack corruption in beacon table mode
qcacld-2.0 to qcacld-3.0 propagation

Currently driver sends beacon report for each channel recursively
in beacon table mode. There is a chance that variables on stack
can exceed allocated stack size which can lead to corruption of
stack. Remove unnecessary variables which are not required for
beacon table mode to fix this issue.

Change-Id: I9aa35e7da916f5d4c6380862d292b44c254c9334
CRs-Fixed: 2184037
2018-02-08 07:55:40 -08:00
Arunk Khandavalli
10af728966 qcacld-3.0: use common specific mode caps
As part of convergence the mode capabilities
are extracted and saved in the target info structure.
Update the hardware mode list and pcl from the converged
structures.

CRs-Fixed: 2179003
Change-Id: I3cfc28533448c312913db3bead5d5322386f3f74
2018-02-08 07:55:38 -08:00
Himanshu Agarwal
75e74413db qcacld-3.0: Avoid selection of irrelevant channel in 80/160MHz config
When channel list contains all channels from channel 1 to channel
165 and ch width is 80MHz, the channel to be selected as part of
ACS algorithm should be a 5GHz channel as 2.4GHz channels does not
support 80MHz but 2.4GHz channel gets selected with channel
width as 40MHz. Similarly when ch width is 160Mhz, the 160Mhz bonding
can be made only by 36-64 and 100-128 channels but 2.4Ghz channel or
some other 5Ghz channel gets selected as a result of ACS algorithm.

Assign max weight to all the 2.4GHz channels in 80Mhz and to all 2.4 Ghz
channels and 5Ghz channels not in the range 36-64 and 100-128 in 160 Mhz
so that only a valid channel is selected after the ACS algorithm is
completed.

Change-Id: I00c40e5d000a1cf8b79397fd4e361838a60b363d
CRs-Fixed: 2182011
2018-02-08 07:55:35 -08:00
snandini
d46194c757 Release 5.2.0.65C
Release 5.2.0.65C

Change-Id: I221e6d134d373053d8c995c8dc17d8474e219166
CRs-Fixed: 774533
2018-02-08 06:58:27 -08:00
Naveen Rawat
17c42a8802 qcacld-3.0: Remove panic and enhance logging for peer_delete timeout
Remove panic after peer_delete timeout and fail corresponding peer
operation. Peer reference count can be taken by kworker thread which
may get pre-empted by other higher priority threads or stuck, leading
to delay in releasing reference. This delay cannot be completely
removed, hence rather than panic after timeout, enhance logging and
fail corresponding peer operation.

Change-Id: I42c379c0cf91d29d293c3c53c3a378421aef07f9
CRs-Fixed: 2181097
2018-02-08 06:58:27 -08:00
Himanshu Agarwal
88b16a48d0 qcacld-3.0: Register wmi_tlv_attach() through wmi_tlv_init()
Register wmi_tlv_attach() through wmi_tlv_init() for WMI
modularization.

Change-Id: I4c21fd5ddd6e58dcebfbf1b484b418c537e23e58
CRs-Fixed: 2184817
2018-02-08 06:58:25 -08:00
Naveen Rawat
b54c72bedc qcacld-3.0: Add DBS check for all chain mask programming
Add DBS check for all chain mask programming. Currently the check
is present only for band specific chain mask parameters.

Change-Id: I415a8e8f666961b90d1cd9130b3c33eecb62c1df
CRs-Fixed: 2184255
2018-02-08 06:58:22 -08:00
snandini
5bc0239293 Release 5.2.0.65B
Release 5.2.0.65B

Change-Id: I48a90fd50b86d91b43c0833e10015d9ea00b0a66
CRs-Fixed: 774533
2018-02-07 21:13:19 -08:00
Himanshu Agarwal
1ed8bffa9e qcacld-3.0: Assign acs_cfg->end_ch before use
In __wlan_hdd_cfg80211_do_acs(), when gAP11ACOverride is 1,
it sets vht_enabled to 1, hw_mode to 11ac and acs_cfg->ch_width
to the value of ini gVhtChannelWidth. If acs_cfg->end_ch is less
than 14 and acs_cfg->ch_width is 80Mhz, set acs_cfg->ch_width to
40Mhz. As acs_cfg->end_ch is not assigned yet, it is 0 due to
which acs_cfg->ch_width gets assigned to 40Mhz.

Assign acs_cfg->end_ch before use when gAP11ACOverride is 1 in
__wlan_hdd_cfg80211_do_acs().

Change-Id: If8bcc7470c1693791dfc64ec0b6059c09747d739
CRs-Fixed: 2184017
2018-02-07 21:13:18 -08:00
snandini
3c26fb4732 Release 5.2.0.65A
Release 5.2.0.65A

Change-Id: I13d09b206e106e4c07ae4e209c349dc9d6414e47
CRs-Fixed: 774533
2018-02-07 19:23:56 -08:00
bings
6b41366494 qcacld-3.0: Update target type to target_type of psoc_info->info
Target type should be passed to target_type of psoc_info->info in
wma_open.

Change-Id: I657b54c6c64c40f0a0bff2cbd6c75cddc4edc921
CRs-Fixed: 2184833
2018-02-07 19:23:55 -08:00
snandini
350bdc0556 Release 5.2.0.65
Release 5.2.0.65

Change-Id: I25137b333c5f49de5d9ec17d090722af227f4f88
CRs-Fixed: 774533
2018-02-07 18:09:02 -08:00
Amar Singhal
1808164995 qcacld-3.0: Destroy sysfs version node in stop modules
Destroy the node when modules transition from opened to stopped.
Otherwise duplicate creation of node can lead to warning.

Change-Id: Ib1031cfa0572962454b293730fefd7a4b4cf8d09
CRs-Fixed: 2180344
2018-02-07 18:09:02 -08:00
snandini
26bf9e68b7 Release 5.2.0.64Z
Release 5.2.0.64Z

Change-Id: I239cfc204925e0adf7941d2589ef0f7318dc9d1b
CRs-Fixed: 774533
2018-02-07 14:34:53 -08:00
Kiran Kumar Lokere
c87546f49d Revert "qcacld-3.0: Call callback to sync the user-space"
Reverts Change-Id: I1e31ff122f9337c353d8be260b4802cc363790d6

Revert this change until the dependent kernel is change is
merged

Change-Id: Iad0b39f990a840c7901815932b8b5aa2c4c67c95
CRs-Fixed: 2186005
2018-02-07 13:50:39 -08:00
snandini
c9aae2f136 Release 5.2.0.64Y
Release 5.2.0.64Y

Change-Id: I5ca0a8b3881fc92da5fd05157424ba572d2f7098
CRs-Fixed: 774533
2018-02-07 07:55:34 -08:00
Yeshwanth Sriram Guntuka
d18c7a27a7 qcacld-3.0: Populate correct HT MCS index in station stats
HT MCS index returned by wma_get_mcs_idx function is
between 0 and 7 for both nss equal to 1 and 2. This
results in incorrect HT MCS index for nss 2 case
populated in station stats on using iw station dump
command.

Fix is to set the correct HT MCS index based on nss.

Change-Id: Id4ac51b56bc44e90ea0e7570b387450af83ee8f5
CRs-Fixed: 2182050
2018-02-07 07:55:34 -08:00
snandini
606a5e4e2d Release 5.2.0.64X
Release 5.2.0.64X

Change-Id: I5a222e7eedb070a826ae6ddee1a88770fcffca6f
CRs-Fixed: 774533
2018-02-07 05:43:48 -08:00
Padma, Santhosh Kumar
67dfee234a qcacld-3.0: Do not send TSPEC again
Currently, firmware sends TSPEC as part of reassoc request during
roaming in ESE case. Driver also sends TSPEC again during roam synch
propagation in driver for ESE case which is redundant. So, do not
send TSPEC again in ESE case to avoid duplicate TSPEC.

Change-Id: Ib0a18bec7762ba56061d8564b870739b2eefd123
CRs-Fixed: 2181531
2018-02-07 05:43:47 -08:00
snandini
2e191e1dae Release 5.2.0.64W
Release 5.2.0.64W

Change-Id: I14aa6e3ab21633f8247a5f9924b83e78bfec3c27
CRs-Fixed: 774533
2018-02-07 04:52:48 -08:00
Alok Kumar
3a7a4407d5 qcacld-3.0: Fix buffer overflow for HTT_T2H_MSG_TYPE_FLOW_POOL_MAP
Currently variable "num_flows" and "len" is used directly, from
message, without any validation which causes buffer over-write.

To address this issue add check for the num_flows and len

Change-Id: Iddf2df0fd65f5b33b54f1a608cdd34e400c0e03c
CRs-Fixed: 2148489
2018-02-07 04:52:48 -08:00
snandini
6792efac4e Release 5.2.0.64V
Release 5.2.0.64V

Change-Id: I46addbc3c24a6bd74f4b4b47e3dda1d3860e8991
CRs-Fixed: 774533
2018-02-07 04:00:23 -08:00
Vignesh Viswanathan
fb9d07522e qcacld-3.0: Send 11k offload params as part of RSO to WMA
Currently 11k offload params is sent directly as a message from CSR to WMA
leading to timing issues where 11k offload params are sent to the FW
before RSO start is sent.

Send the 11k offload params as part of the RSO request from CSR to WMA
and handle the request to send the 11k offload WMA command to FW.

Change-Id: Icff7146171cdf325f3a7e5a067652669ec0270ff
CRs-Fixed: 2183161
2018-02-07 04:00:22 -08:00
Surabhi Vishnoi
7f085d2147 qcacld-3.0: Adding an ini for wmi wq watchdog
Adding an ini for wmi workqueue watchdog, the ini value will
give the timeout value for wmi watchdog timer.

Change-Id: I6338351c8d788478307892152305e10186ead6cb
2018-02-07 04:00:19 -08:00
Abhishek Singh
99c70a06f3 qcacld-3.0: Fix race between PD down and Assoc resp handling
In PD down uevent handling, if assoc resp timeout timer is active,
the timeout API is called from kernel thread and free up the
‘pLimJoinReq’. Now if assoc resp is received in MC thread it also
access ‘pLimJoinReq’ in parallel. This leads to use after free.

To fix this post a msg to MC thread to call the timeout APIs of the
connection timers.

Change-Id: I95e0bbb91c382298e35928d602c096ea5267dbe4
CRs-Fixed: 2184590
2018-02-07 04:00:16 -08:00
snandini
d62784459d Release 5.2.0.64U
Release 5.2.0.64U

Change-Id: I420657fb75d9cc852666bb7051b46c41d5f2db5c
CRs-Fixed: 774533
2018-02-07 03:07:38 -08:00
Arunk Khandavalli
2462f461ab qcacld-3.0: Remove redundant wma_handle values
update the max frag entry,ht,vht, rf chains from from the converged
target psoc capabilities information and remove redundant wma_handle.

CRs-Fixed: 2178922
Change-Id: I6bfe734bac85905b0d6837bffb37d286cff2a4ff
2018-02-07 03:07:37 -08:00
Arunk Khandavalli
aaf6b14da0 qcacld-3.0: Use converged wmi service bit map
Use the converged wmi service bitmap from the
target psoc info instead extracting the same from
the ready event.

CRs-Fixed: 2178812
Change-Id: I00d61aa3cbb2a90459d4363e2ca04e297cc74187
2018-02-07 03:07:32 -08:00
snandini
3c17ab272e Release 5.2.0.64T
Release 5.2.0.64T

Change-Id: Idf8b6b97cfb12c807043c16c6ae577f24d09f5d9
CRs-Fixed: 774533
2018-02-07 02:15:13 -08:00
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