Commit Graph

3687 Commits

Author SHA1 Message Date
Rajeev Kumar
fe98146f84 qcacld-3.0: Remove obsolete NAPIER_CODE feature flag
NAPIER_CODE feature flag is no longer needed and hence
remove it.

Change-Id: Ide612ca55722d8defbee6d37a81ad55ffd0fba5f
CRs-Fixed: 2006308
2017-02-14 14:38:12 -08:00
qcabuildsw
b8419ebb6f Release 5.2.0.10C
Release 5.2.0.10C

Change-Id: I42c2f3e250875751dc5fed6ea0d6c6161578fdd2
CRs-Fixed: 688141
2017-02-14 13:57:25 -08:00
Jeff Johnson
6875531897 qcacld-3.0: HDD: Fix "else after break/return"
Checkpatch reports multiple instances of the following in HDD:
   WARNING: else is not generally useful after a break or return

Fix all such instances.

Change-Id: I1a0ed6ea49ada6f26c760f084337433b74a3bf83
CRs-Fixed: 2005433
2017-02-14 13:57:23 -08:00
Jeff Johnson
ac8b0de7f3 qcacld-3.0: Fix iw_get_policy_manager_ut_ops() checkpatch error
The kernel checkpatch script has identified code in function
iw_get_policy_manager_ut_ops() that is not compliant with the coding
style, so fix it.

Change-Id: Icff0907c649fb7d7f7d72d1bc486e5c5c7c177d2
CRs-Fixed: 2005296
2017-02-14 13:57:22 -08:00
qcabuildsw
fa99f2f9c3 Release 5.2.0.10B
Release 5.2.0.10B

Change-Id: I8362f3be394d383b7d88af2695a958f4b65646d9
CRs-Fixed: 688141
2017-02-14 12:04:10 -08:00
Agrawal Ashish
e69b45e530 qcacld-3.0: Fix max Tx power to 22
Hardware support max tx power as 22 instead of 30.
Fix this by supporting max power as 22.

Change-Id: I3645b47a575ffa8b8bcc85fe0dcbba4a630b078b
CRs-Fixed: 2005749
2017-02-14 12:04:09 -08:00
qcabuildsw
0114f7cdc6 Release 5.2.0.10A
Release 5.2.0.10A

Change-Id: If92b661f1c9c7b367f9f4e23c56075eb8d6d22ab
CRs-Fixed: 688141
2017-02-14 10:25:40 -08:00
Agrawal Ashish
3d000b4cca qcacld-3.0: Disconnect any existing session before new connection
If user is issuing connect command again and again with some AP,
driver should first do a disconnect and wait for completion of disconnect.
Once disconnect is done, driver should start new connection.

Change-Id: I8d64384ea1feef1173800a6f2910945d9046020b
CRs-Fixed: 1114683
2017-02-14 10:25:39 -08:00
qcabuildsw
8353105284 Release 5.2.0.10
Release 5.2.0.10

Change-Id: I8001fce3aabd1fc4e34433b5309768d5858b5bd4
CRs-Fixed: 688141
2017-02-14 07:17:45 -08:00
Krishna Kumaar Natarajan
f24bfc8b70 qcacld-3.0: Remove all calls to cdp_remove_peers_for_vdev
Remove all calls to cdp_remove_peers_for_vdev().
cdp_remove_peers_for_vdev() is called from vdev_resp_handler
to remove all vdev peers. All the peers associated with the vdev
are deleted before vdev stop and hence this call to
cdp_remove_peers_for_vdev() is redundant.

Delete only the self peer and remove the code to delete the
vdev peers.

Change-Id: I8a91509917a371b860058a66831d8417b3a78671
CRs-Fixed: 2002372
2017-02-14 07:17:44 -08:00
qcabuildsw
7e25e8fc45 Release 5.2.0.9Z
Release 5.2.0.9Z

Change-Id: Ie41ac043b4bd5da9f91218ecb2d8d00d3b8503dd
CRs-Fixed: 688141
2017-02-14 04:36:43 -08:00
Agrawal Ashish
e2219bb97b qcacld-3.0: Add INI template for 11AC feature
Add INI template for 11AC feature for documentation.

Change-Id: I6ce302b060360444b9a15d4540612d45cc080b13
CRs-Fixed: 1109628
2017-02-14 04:36:42 -08:00
qcabuildsw
09bdca6e6b Release 5.2.0.9Y
Release 5.2.0.9Y

Change-Id: I771d479f6809de72c7281e4701d8b32c29e2ba80
CRs-Fixed: 688141
2017-02-14 02:54:05 -08:00
Mukul Sharma
4d7d6b006d qcacld-3.0: Initialize PMO module id with qdf debug framework
Initialize PMO module id with qdf debug framework

Change-Id: I3e71c6b5492b7b68f2997671a4f9271aa7fe14cf
CRs-Fixed: 2005961
2017-02-14 02:54:04 -08:00
qcabuildsw
488cbf858a Release 5.2.0.9X
Release 5.2.0.9X

Change-Id: I25e80fd29832dcb2f7b82ed0ee54984dbff1e7d6
CRs-Fixed: 688141
2017-02-14 01:16:34 -08:00
Poddar, Siddarth
b0844bbd5e qcacld-3.0: De-reference tso list element after NULL check
De-reference tso list element in ol_tso_seg_list_init and
ol_tso_num_seg_list_init functions after NULL check.

Change-Id: I89581e5c57275804d967ab734d6bcc714b6745e4
CRs-Fixed: 2004503
2017-02-14 01:16:33 -08:00
qcabuildsw
6d18b5ab94 Release 5.2.0.9W
Release 5.2.0.9W

Change-Id: Ic42b4596720920075b05df604daabfed7ee21309
CRs-Fixed: 688141
2017-02-14 00:22:29 -08:00
Himanshu Agarwal
5501c19153 qcacld-3.0: Use spinlock and local variable store to avoid race condition
Access to TSO stats related parameters are not protected by spinlock.
Due to this, race condition is happening in concurrency scenario where
processing of 2 packets is going on simultaneously and crash is happening
as we are writing in out of bound memory and then tries to access it.

Use spinlock and local variable store to avoid race condition.

Change-Id: I37413ab7ccf6bd5171815af0038401925aa7831b
CRs-Fixed: 1114150
2017-02-14 00:22:28 -08:00
qcabuildsw
ba5a9abab9 Release 5.2.0.9V
Release 5.2.0.9V

Change-Id: I2332a98c329c9aabd99baea8dde56f6838573429
CRs-Fixed: 688141
2017-02-13 23:01:26 -08:00
Kapil Gupta
4f0c0c1c50 qcacld-3.0: Report more information in survey dump
qcacld-2.0 to qcacld-3.0 propagation

Currently host only report connected frequency and noise in
survey dump.
Add changes to report all supported frequencies, active time,
TX time, busy time and noise.

CRs-Fixed: 1061040
Change-Id: I2fa509f53b47d65ba0f4abbc438834b85b9c21f6
2017-02-13 23:01:25 -08:00
Kapil Gupta
8878ad9517 qcacld-3.0: Add support for external auto channel selection
Add changes to enabled driver to use external auto selection
logic instead of current driver based implementation.
In case external application is not present, driver will fall
back to current solution.

Change-Id: Ib7474e82bc7f5878af46c91ea09711775a7c046a
CRs-Fixed: 1110061
2017-02-13 23:01:23 -08:00
Kapil Gupta
94ca6f67f6 qcacld-3.0: Add APIs to validate vendor ACS channel
If channel set is coming from external application, it could be
possible that it doesn't fall into valid channel criteria.

Add APIs to validate the channel.

Change-Id: I1aa855b64c7702418471111d59c92ebaebe8be49
CRs-Fixed: 1110061
2017-02-13 23:01:21 -08:00
Kapil Gupta
086c6206de qcacld-3.0: Add changes to collect channel info from regulatory
Vendor ACS requires regulatory channel info for each channel.

Add changes to collect channel information of each channel
and save it in sap config.

Change-Id: Ib96c3f7ddfc8476306e9a13127472be9dd0a9488
CRs-Fixed: 1110061
2017-02-13 23:01:19 -08:00
qcabuildsw
84ececd4e0 Release 5.2.0.9U
Release 5.2.0.9U

Change-Id: I0a71c4e2974e2ce3d633d86a5ccc9df7d4475abf
CRs-Fixed: 688141
2017-02-13 18:57:29 -08:00
Sandeep Puligilla
fe426b6fbc qcacld-3.0: Don't fill the vdev response wait queue for set channel command
In monitor mode, wma_set_channel api is filling the
vdev response wait queue before sending the WMI_PDEV_SET_CHANNEL_CMDID
command to firmware and expecting it will be dequeued after response
from firmware but firmware doesn't send any response
to PDEV set channel command which is causing WMA timeout.
Don't fill the vdev request wait queue for WMI_PDEV_SET_CHANNEL_CMDID
 command as firmware doesn't send any response.

Change-Id: If1849440143ed671e0261685a53b8a86f4f8e29c
CRs-Fixed: 2003707
2017-02-13 18:57:28 -08:00
qcabuildsw
822f22d4db Release 5.2.0.9T
Release 5.2.0.9T

Change-Id: Ia7267b78d84a3cc3059aed860bfc48993935735a
CRs-Fixed: 688141
2017-02-12 22:17:54 -08:00
Nishank Aggarwal
95265dfaa5 qcacld-3.0: Suppress frequent log from dmesg
Currently in lim_update_sta_run_time_ht_switch_chnl_params
"RoC is in progress" is coming frequently in dmesg due to
error log level which leads to crash.

Fix is to change the log level to debug.

Change-Id: Ib089e7187b6056728e8b6fd18b69c89c761fb1c9
CRs-Fixed: 2005093
2017-02-12 22:17:53 -08:00
qcabuildsw
a4c2c16a82 Release 5.2.0.9S
Release 5.2.0.9S

Change-Id: I46a61c8f70e4eccb189b48f4b56bfe397e431ca9
CRs-Fixed: 688141
2017-02-11 03:40:29 -08:00
Ashish Kumar Dhanotiya
53c2f693ab qcacld-3.0: Add Vendor command for QDF Debug Framework
There is no vendor command support for QDF Debug Framework.

Add vendor command support to dynamically update the trace levels
for modules.

Change-Id: I807365ec035d75372d4ff0f1ea27ba6f7bbff62d
CRs-Fixed: 2003455
2017-02-11 03:40:28 -08:00
Ashish Kumar Dhanotiya
0024313a75 qcacld-3.0: Check the device status during hdd cleanup of present mode
On a change of the mode ( from the current one to the FTM mode ) ,
the clean up of the adapters are again done though they are already
cleaned ( signified by device_status = DRIVER_MODULES_CLOSED ). Hence
check for this device_status while to avoid a redundant clean up of the
adapters.

Change-Id: I2a851b235809db5cd47ec5d738067d1553f83129
CRs-Fixed: 1115243
2017-02-11 03:40:26 -08:00
qcabuildsw
5f924ba0c3 Release 5.2.0.9R
Release 5.2.0.9R

Change-Id: Ibc3039eb5fba5145f8cd28f5596f56ac7e37410b
CRs-Fixed: 688141
2017-02-10 18:10:47 -08:00
Houston Hoffman
d4ba43143b qcacld-3.0: Enable lock stats features with CONFIG_SLUB_DEBUG_ON
Enable lock stats feature in non perf mode builds.

Change-Id: I088e216cea64293d206c8a780072d2b53f2c6173
CRs-Fixed: 2004702
2017-02-10 18:10:46 -08:00
Houston Hoffman
06fd5662b2 qcacld-3.0: define CONFIG_SHADOW_V2
Define CONFIG_SHADOW_V2 to continue using shadow
registers for QCA6290.

Change-Id: I342759910950489c53f69874a6e70f371ae04bca
CRs-Fixed: 2004391
2017-02-10 18:10:44 -08:00
Houston Hoffman
8c48504b55 qcacld-3.0: Pass txrx context durring pktlog deinit
pktlog deinit should not use cds_get_context.
Using cds_get_context for the txrx context was
causing the device to crash on the next insmod
because the deinit is happenning durring the deinitialization
of the txrx context after it has allready been unlinked from
as a global context.

Change-Id: I487951a6dd50680884223e7027e5bce1c8ddfa07
CRs-Fixed: 2004404
2017-02-10 18:10:42 -08:00
qcabuildsw
c59d504e1f Release 5.2.0.9Q
Release 5.2.0.9Q

Change-Id: Ic5e5b4eaf9f3d3a5587a658008997c1029dc61c3
CRs-Fixed: 688141
2017-02-10 16:37:25 -08:00
Dustin Brown
6b4643dd58 qcacld-3.0: Make grat ARP KA source/target addresses the same
According to RFC 5227, both the source and target addresses in a
gratuitous ARP packet should be the same. When enabling gratuitous ARP
keepalive, set both source and target addresses to the host's IPv4
address.

Change-Id: If467cc7d93adb67f88539ebed727689b61d42089
CRs-Fixed: 2004770
2017-02-10 16:37:24 -08:00
qcabuildsw
16611cfc1f Release 5.2.0.9P
Release 5.2.0.9P

Change-Id: Ib5ff7b1515dc7da20a9de27435f8df77eb31db5d
CRs-Fixed: 688141
2017-02-10 08:09:58 -08:00
wadesong
9b81907d27 qcacld-3.0: Add conditional check for SAP key clearing
qcacld-2.0 to qcacld-3.0 propagation

SAP keys should be retained at HDD layer when wlan driver
performs internal restarting due to MCC to SCC switch

Change-Id: I5458f7602a0e3851d678981e107ef3b5bda17dd7
CRs-Fixed: 1095584
2017-02-10 08:09:57 -08:00
jge
6435f4fc2c qcacld-3.0: Send peer delete wmi cmd before peer detach
This is a qcacld-2.0 to qcacld-3.0 propagation.

In wma_remove_peer, sometimes when peer detach is in progress,
and it has set the peer as invalid, but WMI_PEER_DELETE_CMDID
is still not sent to FW, so msdu for the peer still can be
received. In htt_rx_amsdu_rx_in_order_pop_ll, it will print
a lot of error log, which will cause watch dog.

Send peer delete cmd to FW firstly, then detach peer in host.

In qcacld-3.0, it doesn't have watch dog issue, as the print has
been removed from htt_rx_amsdu_rx_in_order_pop_ll, but it is still
worth to adjust to the right sequence.

Change-Id: Ia26aa5e673a48ca1d9ccf4f184d0bfab0d6e98ef
CRs-Fixed: 1070216
2017-02-10 08:09:56 -08:00
qcabuildsw
b29e383768 Release 5.2.0.9O
Release 5.2.0.9O

Change-Id: Icf002cfe151c9e5dde2e6c8908060b36ad35e74c
CRs-Fixed: 688141
2017-02-09 15:50:36 -08:00
Kabilan Kannan
4a6b5e745c qcacld-3.0: Set valid min value for gTDLSPrefOffChanBandwidth
This is a qcacld-2.0 to qcacld-3.0 propagation.

Currently the min value of gTDLSPrefOffChanBandwidth
is set to zero which is invalid, min value should be
1 (zeroth bit set) for 20MHz.

Change-Id: Ibc2da1c2cca7e704b21686ab795224462dd9f913
CRs-Fixed: 2004116
2017-02-09 15:50:35 -08:00
Kabilan Kannan
05da368631 qcacld-3.0: Fix TDLS connection tracker restart problem
In some scenarios TDLS connection tracker is not
enabled correctly, When the system comes out of
concurrency. Due to this TDLS connection problem
observed in some corner cases.
Enable TDLS connection tracker exclusively, when
TDLS reenabled in the system.

Change-Id: Ibabcb8887708bd3bde3d7a9819d5bcc4ebda47bf
CRs-Fixed: 2003045
2017-02-09 15:50:33 -08:00
Jeff Johnson
441e1f7a58 qcacld-3.0: Add framework to deprecate Wireless Extensions
Although the wlan driver currently utilizes nl80211/cfg80211 as its
primary configuration interface, it still contains support for the
legacy wireless extensions ioctl interface. This interface, however,
is not being maintained and at some point in the future it should be
removed. But before it can be removed all applications which depend
upon this interface must be converted to use other supported
interfaces such as nl80211. To aid in this effort add a framework for
detecting and logging when wireless extensions ioctls are being used.

Change-Id: Ib2f3b64f74e673f3857f14ae12ff372a9f60de8d
CRs-Fixed: 2004194
2017-02-09 15:50:31 -08:00
Jeff Johnson
5b907621fa qcacld-3.0: Consolidate SIOCGIWRTS and SIOCGIWFRAG ioctls
Currently for both SIOCGIWRTS and SIOCGIWFRAG there are two separate
but identical handlers, one for STA-like interfaces and one for
SAP-like interfaces. For each ioctl consolidate the code into a single
handler. This is a prerequisite for further ioctl cleanup.

Change-Id: I4d4f288198bed2124ec96cf3ca1929e89705d4de
CRs-Fixed: 2004191
2017-02-09 15:50:30 -08:00
Jeff Johnson
f25ac10144 qcacld-3.0: Fix bad return status from __iw_get_bitrate()
There are currently several error paths in __iw_get_bitrate() which
incorrectly return internal status enumerations instead of returning
negative errno values. Fix these paths to correctly return negative
errno values.

Change-Id: I42254dbe1b362fb42b87418419b97ccbabfac355
CRs-Fixed: 2004190
2017-02-09 15:50:28 -08:00
Jeff Johnson
8e9edc8f6b qcacld-3.0: Fix QDF_STATUS misuse in __iw_softap_stopbss()
Currently __iw_softap_stopbss() uses a variable of type QDF_STATUS to
hold a potentially negative errno value. Since errno values do not
adhere to the QDF_STATUS enumerations, use an int variable for the
value. In addition appropriately convert QDF_STATUS to errno values
when returning status to userspace.

Change-Id: I105c6db4287384802b2f86d35fa5251954ea051d
CRs-Fixed: 2004188
2017-02-09 15:50:27 -08:00
Jeff Johnson
34746020bb qcacld-3.0: Remove obsolete collectedAuthType
The struct hdd_wext_state_s currently contains the field
collectedAuthType. This field is currently written, but is
never read, and hence it is useless, so remove all traces of it.

Change-Id: Ica2fc7a54cc92c8d4394cdcdd9470f624f705848
CRs-Fixed: 2004184
2017-02-09 15:50:25 -08:00
Jeff Johnson
957bc27daa qcacld-3.0: Change hdd_open_interfaces() to return errno
Desk review of hdd_wlan_startup() revealed improper use of the adapter
returned by hdd_open_interfaces() since in the failure case multiple
calls will be made to hdd_debugfs_exit() for that returned adapter.

Further review revealed the fact that having hdd_open_interfaces()
return an adapter is illogical since hdd_open_interfaces() can
legitimately open multiple interfaces, and hence the return value
should simply indicate whether all required interfaces were opened or
not. So update hdd_open_interfaces() to return errno instead of an
adapter.

Change-Id: I71117c32f053dad97a5c4bcaef33af27a903f511
CRs-Fixed: 2001662
2017-02-09 15:50:23 -08:00
Jeff Johnson
46bde3845d qcacld-3.0: Fix rtnl_lock usage in HDD startup failure path
Currently in the error-handling path of hdd_wlan_startup() there are
two issues with respect to the rtnl_lock:
1) hdd_close_all_adapters() may be called with the rtnl_lock parameter
   set to false even though the rtnl_lock is being held.
2) the function could possibly take the rtnl_lock and never release it.

Fix these issues in hdd_wlan_startup().

Change-Id: Iaa69d540dd7663355ceb66f6bc8ba0e5dd8c228e
CRs-Fixed: 2001611
2017-02-09 15:50:22 -08:00
Jeff Johnson
b90ab57f0c qcacld-3.0: Fix Kbuild path for wma_ocb.o
When CONFIG_WLAN_FEATURE_DSRC is enabled the resulting build fails
because there is no rule to make wma_ocb.o. The issue is that there is
a typo in the rule, so fix the rule.

Change-Id: I1b724736fcac175b9bf83e4a98878e1333a54b57
CRs-Fixed: 2002874
2017-02-09 15:50:20 -08:00