Commit Graph

8567 Commits

Author SHA1 Message Date
snandini
fd681e44db Release 5.2.0.58P
Release 5.2.0.58P

Change-Id: I60369e0643783be1db4a47a1dfcb356341a54f82
CRs-Fixed: 774533
2017-12-20 00:07:47 -08:00
Dustin Brown
45ed4bbeaa qcacld-3.0: Print drv ops inactive thread call stack
As part of the wlan driver handlers for kernel ndo events, an inactivity
timer (effectively a watchdog timer) is started. This allows us to catch
instances where drvier operations take much longer than expected. In
cases where this inactivity timer expires, print the stack trace of the
inactive thread to expedite debugging efforts.

Change-Id: I4427207a5cd7d232486ce453555765f7e0f4fe17
CRs-Fixed: 2160837
2017-12-20 00:07:46 -08:00
snandini
4fea99d090 Release 5.2.0.58O
Release 5.2.0.58O

Change-Id: I673f57131e8243fc39ef8f11ba65093f1d633365
CRs-Fixed: 774533
2017-12-19 13:37:37 -08:00
Will Huang
9adefff55a qcacld-3.0: Use correct wmi event id when register wmi event
WMI_xxx_EVENTID must re-define as wmi_xxx_event_id, otherwise module
init will fail when check event id.

Change-Id: Icf0562ddb9c6fd90b553ce06e502575d9e69b8d3
CRs-Fixed: 2159607
2017-12-19 13:37:36 -08:00
snandini
74683f3488 Release 5.2.0.58N
Release 5.2.0.58N

Change-Id: I901ba7e84cdf56d3defc1778ac3122c1bf87b5d5
CRs-Fixed: 774533
2017-12-19 09:26:42 -08:00
Yeshwanth Sriram Guntuka
3e4d96fbfa qcacld-3.0: Add check to validate vdev id
Get ARP stats command is sent to firmware with
inactive vdev id in stats param resulting in
firmware crash.

Fix is to add check to validate vdev id before
sending get ARP stats command to firmware.

Change-Id: I1483573f4f9649c307f8d47466d9c7e234e9a78e
CRs-Fixed: 2161031
2017-12-19 09:26:41 -08:00
Poddar, Siddarth
4bbe4fc724 qcacld-3.0: Do not log pktlog event when monitor mode is ON
In case of Monitor mode, headroom of skb, which originally
contains rx_desc data, is overwritten by radio tap header.

Host pulls skb data by radio tap header and the same skb is
passed on to packet log function which expects payload to
point to skb-> data and end up in wrong access.

Moreover, pktlog is meant to log rx_desc information which is
already overwritten by radio header and hence pkt logging is
of no use in this case.

CRs-Fixed: 2159130
Change-Id: Id19c0371a0ed31c70ada788fc2b396a8b1eac1f1
2017-12-19 09:26:38 -08:00
snandini
dc84a5ca07 Release 5.2.0.58M
Release 5.2.0.58M

Change-Id: Idc8d1c8816bf84cd12cec02c4bbe21b5ef5a77a4
CRs-Fixed: 774533
2017-12-19 03:48:40 -08:00
Hanumanth Reddy Pothula
8fcade5661 qcacld-3.0: Resolve overflow while processing setHostOffload ioctl
qcacld-2.0 to qcacld-3.0 propagation

While processing setHostOffload ioctl there is a possibility of
sending invalid data to lower layers as user sent data structure
is different from local buffer structure.
To mitigate this issue, initialize local buffer to zero and then
update local buffer member by member.

Change-Id: I657d2a8c7d37435b1ad28ef6de60ea80a235ead9
CRs-Fixed: 2152143
2017-12-19 03:48:40 -08:00
snandini
05e2b52b45 Release 5.2.0.58L
Release 5.2.0.58L

Change-Id: I09d2af76a72834827e201b7aee18b62b15b19a98
CRs-Fixed: 774533
2017-12-18 21:48:34 -08:00
Rajeev Kumar
b0ef982be7 qcacld-3.0: Log critical suspend/resume log using info level
Log critical suspend/resume log using info log level such that
driver 3 stage suspend/resume state is known from available logs.

Change-Id: Id17133d406f2366058198b38445d7ff6afba3764
CRs-Fixed: 2160041
2017-12-18 21:48:33 -08:00
Lin Bai
1c67848386 qcacld-3.0: Fix FTM mode malfunction and memory leak
Current driver will create two apdaters in FTM mode, with device_mode
STA and P2P, where STA is incorrect and P2P is unnecessary.
And those types will cause memory leak in
qdf_mem_malloc()/sme_deregister_mgmt_frame(), when unloading driver.

Also, it is improper to fix the interface name to wlan0 for FTM mode,
as some platforms may use different naming rule.

Only create one adapter with FTM mode, with variable interface name.

CRs-Fixed: 2160513
Change-Id: If3bf4444e5535e6fe88c3ad2d87da217534984a0
2017-12-18 21:48:31 -08:00
Jeff Johnson
876c1a6d35 qcacld-3.0: Use enum QDF_GLOBAL_MODE
Change "qcacmn: Rename enum tQDF_GLOBAL_CON_MODE" (qca-wifi-host-cmn
Change-Id I57933a62f6ce02b6594d97198be8132e61e8d1f6) renamed enum
tQDF_GLOBAL_CON_MODE to QDF_GLOBAL_MODE. Update all references to use
the new name.

Change-Id: I0e806e87a4c4828279dee83450b1fc20a236c9d3
CRs-Fixed: 2158636
2017-12-18 21:48:28 -08:00
snandini
ea3575092b Release 5.2.0.58K
Release 5.2.0.58K

Change-Id: Icda918f25b504987a3742db1bd6f407e826ad866
CRs-Fixed: 774533
2017-12-18 18:27:43 -08:00
Kabilan Kannan
44a5837f36 qcacld-3.0: Update tdls config as per target configuration
Update the default tdls configuration based on target
configuration

Change-Id: I13335f9492c218975cbd725f3e604d396379eec3
CRs-Fixed: 2159887
2017-12-18 18:27:42 -08:00
snandini
419b5d95cc Release 5.2.0.58J
Release 5.2.0.58J

Change-Id: I4b035e766f96fadfc1e69bee80ab1c4df771f9c2
CRs-Fixed: 774533
2017-12-18 15:55:09 -08:00
Amar Singhal
f0a94adf46 qcacld-3.0: print the source of country code
Country code can be set by multiple sources. Print the source of country
code for debug purposes.

Change-Id: I54f8237de540d7a0d01671148109130a28516670
CRs-Fixed: 2149684
2017-12-18 15:55:08 -08:00
Naveen Rawat
269b4ed0a7 qcacld-3.0: Add ini to control chain mask for 2G and 5G
Add ini parameters to control chain mask in 2G and 5G band.

Change-Id: I336c4598164c55d923f20b748fb189654b713102
CRs-Fixed: 2155583
2017-12-18 10:45:05 -08:00
snandini
0a448122a4 Release 5.2.0.58I
Release 5.2.0.58I

Change-Id: I16574b10260659b00fa41483cf36371960432989
CRs-Fixed: 774533
2017-12-18 05:39:56 -08:00
Vignesh Viswanathan
9fa8fef7b7 qcacld-3.0: Avoid potential OOB read in wma_is_vdev_valid function
In function wma_is_vdev_valid, vdev_id received as argument is used
to access wma_handle->interfaces array directly without validation
of max value of vdev_id. If vdev_id is not less than max_bssid, then
an OOB read would occur in this function.

Also add free and break in wma_mc_process_msg while handling
SIR_HAL_CONFIG_GUARD_TIME message in WMA.

Change-Id: I5f4481c937d5c370b334f2a7f8a172d08140ab1d
CRs-Fixed: 2154304
2017-12-18 05:39:56 -08:00
wadesong
f9b15ed483 qcacld-3.0: Abort all scan requests before SAP is stopped
Abort all outstanding scan requests on an SAP adapter synchronously
when the SAP adapter is to be stopped, so any scan callback
functions will not access the buffers for SAP adapter, ACS config,
etc. after they're freed.

Change-Id: Idc02b140c05a5de4dc652a547cd20b8d113447b6
CRs-Fixed: 2152962
2017-12-18 05:39:53 -08:00
Hanumanth Reddy Pothula
53dec12515 qcacld-3.0: Pass valid default scan IEs to firmware
During driver re-init, host might pass invalid(NULL) default scan
IEs to FW if host won't receive same IEs from supplicant as part
of vendor event QCA_NL80211_VENDOR_SUBCMD_SET_WIFI_CONFIGURATION.

Validate driver has default scan IEs, before sending same to
firmware.

Change-Id: I333ceead0c375bfb9309466e420a6860199826dc
CRs-Fixed: 2155312
2017-12-18 05:39:51 -08:00
snandini
7224ba4039 Release 5.2.0.58H
Release 5.2.0.58H

Change-Id: I80dc4059b009577dcbbc866e07cd1317bba4d645
CRs-Fixed: 774533
2017-12-17 13:37:38 -08:00
Jeff Johnson
3b2abe930d qcacld-3.0: Validate Scan Default IEs
Currently the Scan Default IEs configured via the attribute
QCA_WLAN_VENDOR_ATTR_CONFIG_SCAN_DEFAULT_IES are not validated. As a
result a buffer overread can occur when the Scan Default IEs are later
referenced. To address this issue validate the Scan Default IEs before
storing them.

Change-Id: Ifd8739c96a9990f01ff159eb59a7e904f7b8c592
CRs-Fixed: 2154346
2017-12-17 13:37:37 -08:00
snandini
649e5047c7 Release 5.2.0.58G
Release 5.2.0.58G

Change-Id: I3c554a1f4ac2272a1a7632e53303a81f9f5432e1
CRs-Fixed: 774533
2017-12-17 09:26:14 -08:00
gaurank kathpalia
1b42e8d4cb qcacld-3.0: Fix SAP replying to BC probe request in hiddenssid
The SAP configured in hidden ssid mode sends probe response
to BC probe requests in hidden ssid mode after force SCC.
In wma_set_channel, req.ssidhidden is not set by the host
which in turn sets the param->flags last bit to 0, and
the firmware receives  these flags and sends the probe
responses.In the wma_vdev_start api, the host sets the flags
based upon the req.ssidhidden received from wma_set_channel
only in vdev start case , and not in vdev restart case.

Fix is to set the value of req.ssidhidden in wma_set_channel
and to set the hidden ssid flag in both vdev start and vdev
restart case.

Change-Id: I988d8d64b06128a37824c7d31d4407247ba46dce
CRs-Fixed: 2142430
2017-12-17 04:53:18 -08:00
snandini
3dda815399 Release 5.2.0.58F
Release 5.2.0.58F

Change-Id: I7b0434995ba2fdb84ffe4d040d4347f1282063ce
CRs-Fixed: 774533
2017-12-16 15:26:18 -08:00
Dustin Brown
04348375a0 qcacld-3.0: Free scan IEs during stop adapter
Scan IEs are allocated at adapter runtime. Thus, scan IEs should be
freed during adapter stop.

Change-Id: Idd1ee68bc57ecd3dfea77a3d882b57aae21a478f
CRs-Fixed: 2159407
2017-12-16 15:26:17 -08:00
Kabilan Kannan
f0f81ad646 qcacld-3.0: Reject scan command, when firmware is down
Scan command is entertained, when the firmware is down, and
it causes crash in the system.
Reject the scan command, when firmware is down.

Change-Id: Ib3501e14846dea9ea99f6fa13695108d4ae58bf0
CRs-Fixed: 2159449
2017-12-16 15:26:14 -08:00
Varun Reddy Yeturu
91cbd1db84 qcacld-3.0: Upon roam synch failure, send roaming stop
Currently, the host sends a roam scan mode of
WMI_ROAM_SCAN_MODE_ROAMOFFLOAD to the firmware when roam
synch fails in the host. But the firmware expects a
WMI_ROAM_SCAN_MODE_NONE in the roam synch wait state
to respond with a HO_FAIL which will evetually lead
to a disconnection and clean up.

Change-Id: I39c768881c312ecbedf6e4a1742e3eaabcea1f4d
CRs-Fixed: 2159244
2017-12-16 15:26:12 -08:00
snandini
3b1e133caa Release 5.2.0.58E
Release 5.2.0.58E

Change-Id: Idf0dd624d721c26a5f495374d75f54703fe9c7e2
CRs-Fixed: 774533
2017-12-16 14:07:59 -08:00
Paul Zhang
2f1077c10a qcacld-3.0: Support LFR2.0 with new scan module
1\ Register the lim_process_rx_scan_handler with api
   ucfg_scan_register_requester;
2\ Redefine function lim_send_preauth_scan_offload
   to use api ucfg_scan_start;

Change-Id: I43a0b28c3abcce907575717dc3a4bfb190a32ec2
CRs-Fixed: 2144630
2017-12-16 14:07:59 -08:00
snandini
96dc553e24 Release 5.2.0.58D
Release 5.2.0.58D

Change-Id: Ic4b035ed72c1ddf9038075168cfdd975fd49952b
CRs-Fixed: 774533
2017-12-16 13:27:40 -08:00
Paul Zhang
4362697ced qcacld-3.0: Fix non-scan active queue stuck issue
1\ The command content is wrongly reset and cause
   the corresponding command could not find from the
   active queue.
2\ It should release the command in time before issue
   the next command.

Change-Id: I094a6ce0e34f4698222d85a785cb6424852e25f8
CRs-Fixed: 2144630
2017-12-16 13:27:39 -08:00
snandini
f3f5b68da7 Release 5.2.0.58C
Release 5.2.0.58C

Change-Id: Ibe6cdf917107ac334c59f4ab0ca2b5daa4663396
CRs-Fixed: 774533
2017-12-16 03:26:17 -08:00
Naveen Rawat
7cc925c403 qcacld-3.0: Reject scan cmd if ie length greater than max allowed
Firmware cannot handle scan IE more than a certain size owing to memory
restrictions. Check the scan IE length before passing params to firmware.

Change-Id: I73321a9d4932f4cbb876de904dacecf15c9083ff
CRs-Fixed: 2159363
2017-12-16 03:26:16 -08:00
gaurank kathpalia
247554ce79 qcacld-3.0: Free allocated memory in wma_unified_link_radio_stats_event_handler
In the file wma_unified_radio_tx_power_level_stats_event_handler ,
the driver allocates  memory to rs_results->tx_time_per_power_level ,
also in api wma_unified_link_radio_stats_event_handler ,
rs_results->channels , without checking a previous allocated
memory for the same . Also the driver makes the pointers
rs_results->tx_time_per_power_level and rs_results->channels
as null without a prior check , which results in a memory leak.
Fix is to add a check for rs_results->channels and
rs_results->tx_time_per_power_level for NULL , and free
the already allocated memory for the same.

Change-Id: I02af53454270239bf68446a727b735c8ef10d434
CRs-Fixed: 2150714
2017-12-16 03:26:14 -08:00
Dustin Brown
550f6d2350 qcacld-3.0: Add wlan module transition logs
Add a consistent set of logs for wlan module transition changes to aid
in debugging efforts.

Change-Id: Id7f039c03f25ba46194a101b64e08f8ae3042c50
CRs-Fixed: 2159403
2017-12-16 03:26:12 -08:00
snandini
e6cc0bf4e8 Release 5.2.0.58B
Release 5.2.0.58B

Change-Id: I1653b3d2788f11f22ecfbc012f3f054531022762
CRs-Fixed: 774533
2017-12-16 01:26:56 -08:00
Yuanyuan Liu
f45ab3def3 qcacld-3.0: Config driver flags properly when no QMI support
Enable CONFIG_BYPASS_QMI and disable ADRASTEA_SHADOW_REGISTERS when
there's no QMI support in kernel, as shadow registers are configured
by WLAN FW and the configurations are passed through QMI framework.

CRs-Fixed: 2159269
Change-Id: Iaf5b82e37f3983fc18edbcf093b3ebf74d576f71
2017-12-16 01:26:56 -08:00
snandini
279c4f018b Release 5.2.0.58A
Release 5.2.0.58A

Change-Id: I30102fd00b5004777d3f6c0be67ca8df3a5e72d0
CRs-Fixed: 774533
2017-12-15 19:26:19 -08:00
Kabilan Kannan
efca122f5d qcacld-3.0: Add validity check in HDD object manager deinit
Add validity check in HDD object manager destroy function
to avoid the crash.

Change-Id: I1c3296dc2bf84fc564686aeab46c1a0b217820ce
CRs-Fixed: 2159256
2017-12-15 19:26:19 -08:00
snandini
41198157b8 Release 5.2.0.58
Release 5.2.0.58

Change-Id: I283d454ee2670fdbe0949fe9b1e7a52cefc19fcc
CRs-Fixed: 774533
2017-12-15 17:31:31 -08:00
Yun Park
a4bb37c234 qcacld-3.0: Fix IPA pipe unloading timeout during driver restart
Host driver drops incoming HDD IPA events during unloading prcess,
when IPA pipe unloading timeout occurs, and IPA offload state could
be mismatch between host driver and FW.
Fix by setting unloading complete before IPA pipe disable and putting
events into pending event queue for unloading timeout case as well.

Change-Id: If44caa07f328bf3ac2d2fc02aafb796176114678
CRs-Fixed: 2152490
2017-12-15 17:31:30 -08:00
snandini
964e0d631e Release 5.2.0.57Z
Release 5.2.0.57Z

Change-Id: I12906d3a8103c5352f91795ff04a50c140074861
CRs-Fixed: 774533
2017-12-15 13:26:26 -08:00
lifeng
70a5ee609e qcacld-3.0: Fix buffer overread in lim_process_fils_auth_frame2
qcacld-2.0 to qcacld-3.0 propagation

The return value validation is missing for dot11fUnpackIeRSN, thus
"dot11f_ie_rsn.pmkid_count" could be larger than 4. When it is larger
than 4 there will be a buffer over-read in vos_mem_compare. Add status
check of dot11fUnpackIeRSN in lim_process_fils_auth_frame2.

Change-Id: If563ddb13bbfcad5660d136c35c39846010594e1
CRs-Fixed: 2147955
2017-12-15 13:26:25 -08:00
Dustin Brown
920397d930 qcacld-3.0: Remove hdd_adapter_list_node_t
Linux convention is to embed a list node in a structure that is meant to
be a member of a list. However, hdd_adapter_list_node_t is created to
contain both the list node and the list item itself. Remove
hdd_adapter_list_node_t and embed the list node directly into
hdd_adapter instead.

Change-Id: I62888a0212d88aa212fee34b886e3d8a4875e0c7
CRs-Fixed: 2159309
2017-12-15 13:26:23 -08:00
snandini
f847c8629c Release 5.2.0.57Y
Release 5.2.0.57Y

Change-Id: I7c782e83004119854e8ae9adfdb2e9a8547bc9c0
CRs-Fixed: 774533
2017-12-15 03:42:06 -08:00
Naveen Rawat
bcd3d019d8 qcacld-3.0: Execute sme_stop and mac_stop in mc thread context
sme_stop and mac_stop are accessing share data structures which
create a race condition when it is called from rmmod context.
Change context of sme_stop and mac_stop from rmmod thread to
mc thread.

Change-Id: Ie30f99d6b0c2f7c6cf20371dd66323d156360474
CRs-Fixed: 2148771
2017-12-15 03:42:05 -08:00
snandini
ec5c565002 Release 5.2.0.57X
Release 5.2.0.57X

Change-Id: I3becda7b09ad2d603f6c3ad06769179857be3273
CRs-Fixed: 774533
2017-12-15 01:38:37 -08:00