Commit graph

5,996 commits

Author SHA1 Message Date
Manjeet Singh
91b7bb8a20 qcacld-3.0: Enable QPOWER only for STA modes
Currently sending qpower to FW in softap mode causes device to crash as
qpower config is not supported.
Enable QPOWER config in STA and P2P-CLI modes.

Change-Id: Idb8b3ac79e6c93533b752ac42d6ab57bb0c86579
CRs-Fixed: 2003839
2017-07-30 13:02:24 -07:00
Padma, Santhosh Kumar
5f42892271 qcacld-3.0: Avoid buffer overflow of csr_wpa_oui array
In csr_validate_wep(), return value of csr_get_oui_index_from_cipher() is
used to fetch 'csr_wpa_oui' value. csr_get_oui_index_from_cipher() returns
0-14 but no.of rows of 'csr_wpa_oui' is 7.

Add changes to validate index value before accessing 'csr_wpa_oui' array.

Change-Id: I0cf16f4e8fb2c07a489991f20bc345e97b2450e0
CRs-Fixed: 2077599
2017-07-30 13:02:22 -07:00
Agrawal Ashish
b0aa075047 qcacld-3.0: Reduce log completion timer to 3 sec
Currently when driver send log flush command to firmware,
driver start timer of 10 sec.
Reducing this time to 3 sec as 10 is long timer.

Change-Id: I697fa6a4709fa0128595fb2b15493b1fa2b13b35
CRs-Fixed: 2037033
2017-07-30 13:02:20 -07:00
Agrawal Ashish
569ad261ac qcacld-3.0: Correct NSS in case of DBS hw mode
In case of DBS hw mode, NSS should be reduce by 1

Change-Id: I3d3f0dbd23a7336eb448628ade763668041a640d
CRs-Fixed: 2038087
2017-07-30 13:02:18 -07:00
Abhishek Singh
d8c3f10454 qcacld-3.0: Add support for ESP IE
The Estimated Service Parameters element is
used by a AP to provide information to another STA which
can then use the information as input to an algorithm to
generate an estimate of throughput between the two STAs.
The ESP Information List field contains from 1 to 4 ESP
Information fields(each field 24 bits), each corresponding
to an access category for which estimated service parameters
information is provided.

Change-Id: I4d299ffbf0700574c0b207893dbbfc4fd3911849
CRs-Fixed: 2079816
2017-07-30 13:02:16 -07:00
snandini
4c8108cb96 Release 5.2.0.36H
Release 5.2.0.36H

Change-Id: If97b96a71646d70908fd9e2c1d8cf904d27b3a23
CRs-Fixed: 774533
2017-07-30 12:01:54 -07:00
Nachiket Kukade
33c34e3228 qcacld-3.0: Update missing vht capabilities in wiphy before registering
Currently while registering wiphy, supported Beamformee STS Capability
and Number of Sounding Dimensions are not updated in the vhtcap field.
This results in hostapd failing to start if above two configurations
are enabled in the conf file.
Update missing vht capabilities in wiphy before registering.

Change-Id: I8db376fe1f14fd5b722e67a5889addf4c2fb7f28
CRs-Fixed: 2062520
2017-07-30 12:01:54 -07:00
SaidiReddy Yenuga
c0c34cfd5d qcacld-3.0: Fix uninitialised variables in HDD
In packet log header, element type_specific_data used uninitialised.

Initialise type_specific_data.

CRs-Fixed: 2015997
Change-Id: Ifa2bdc4c10528c8e9781249058e1767d64bec60e
2017-07-30 12:01:52 -07:00
Sreelakshmi Konamki
0ac62e88ee qcacld-3.0: Validate 'num_RICDataDesc' to avoid error logs
qcacld-2.0 to qcacld-3.0 propagation

In sir_convert_assoc_resp_frame2_struct(), 'pAssocRsp->ricPresent' is set to
true when 'num_RICDataDesc' is 0, this causes qdf_mem_malloc() to be called
with invalid length 0.

Add change to validate 'num_RICDataDesc' to avoid above issue.

Change-Id: If5e59477efa4df01ca216904645babf769b55c47
CRs-Fixed: 2078891
2017-07-30 12:01:50 -07:00
snandini
513038eee1 Release 5.2.0.36G
Release 5.2.0.36G

Change-Id: I5ffbde825e9d5fb5c3407cdad59ff09ffacab8da
CRs-Fixed: 774533
2017-07-30 11:00:17 -07:00
Abhishek Singh
f3cc07311a qcacld-3.0: Fix TLV length check issue in unpack tlv
In unpack tlv, length of tag and length fields are not considered
while checking for min length for the tag, this result into failure
in unpacking the TLV.

Fix it by including length of tag and length fields while checking
for min length.

Change-Id: Icf06b935a883e41426f5fcd1668ad8461b58349f
CRs-Fixed: 2070452
2017-07-30 11:00:16 -07:00
Abhishek Singh
4db8c1521c qcacld-3.0: Send OCE rssi reject BSSID list to firmware
Add support for rssi based assoc rejection from a bssid and
Try to connect to this bssid only after time interval indicated in
Assoc reject or when rssi has improved by margin indicated in Assoc
reject.

On connection send OCE rssi reject BSSID list to firmware so that
firmware will avoid connecting to these BSSID until RSSI improve or
delta interval has elapsed.

Change-Id: I792b2874ed25227bf5fd09d8051549da96db4364
CRs-Fixed: 2070452
2017-07-30 11:00:15 -07:00
Abhishek Singh
f3756fcb5c qcacld-3.0: Add support for rssi based assoc rejection during connect
Add support to handle rssi based assoc rejection from a bssid and
Try to connect to this bssid only after time interval indicated in
Assoc reject or when rssi has improved by margin indicated in Assoc
reject.

Change-Id: I6363bf5346ff8804611afbac3058819dc820092d
CRs-Fixed: 2070452
2017-07-30 11:00:12 -07:00
Agrawal Ashish
b08e721916 qcacld-3.0: Trigger pktlog as part of unusual disconnect
Trigger packet logs if deauth/Disconnect comes with reason code
other than eSIR_MAC_UNSPEC_FAILURE_REASON,
eSIR_MAC_DEAUTH_LEAVING_BSS_REASON,
eSIR_MAC_DISASSOC_LEAVING_BSS_REASON

Change-Id: I906abf4e4b7c7b9fb109fa1ead1afed15a9f5e81
CRs-Fixed: 2071173
2017-07-30 11:00:10 -07:00
Agrawal Ashish
87ec5d48c8 qcacld-3.0: Indicate HB failure, HO failure and no scan result as FATAL
In packet logs currently HB failure, HO failure and No scan results
are marked as Non Fatal and because of that, these failures are not captured
in packet logs.
Fix this by making these events as FATAL.

Change-Id: I6db2f3cd843b7f84081332f2385fbfb0a2992078
CRs-Fixed: 2061842
2017-07-30 11:00:09 -07:00
Nachiket Kukade
c34d4a3352 qcacld-3.0: Set timer expiry on queued HDD scan requests
In certain cases HDD fails to receive callbacks for the scan requests
queued to SME. Kernel may free up these scan requests due to timeout.
During driver shutdown and exit if scan done is performed on these
stale scan requests, kernel crash may occur.

Set a timer of 60 seconds on queued scan requests, after expiry BUG_ON
for debugging purposes.

Change-Id: I6db155b17a8a5ae87208ec84eaab221a53623a63
CRs-Fixed: 2070594
2017-07-30 11:00:06 -07:00
snandini
bb10c33fd5 Release 5.2.0.36F
Release 5.2.0.36F

Change-Id: Ib3f6f6ded04ed2bd8e8006bbaa88fd3b2b3ce931
CRs-Fixed: 774533
2017-07-30 10:04:17 -07:00
Ganesh Kondabattini
0dc1a6e77a qcacld-3.0: Handle error cases while registering frames
If registration of callback 'hdd_send_action_cnf_cb' fails with PE due
to some error case, then PE is not going give the ack confirmation
for action frames which can lead to in p2p connection failure.

CRs-Fixed: 2075708
Change-Id: Ia7b670f186975f5139e37e79230de56bc8ab868b
2017-07-30 10:04:17 -07:00
SaidiReddy Yenuga
28dc327cfe qcacld-3.0: Move log level to info if host fails to get valid STA-ID
During wlan disconnect before disabling tx queues, observed continuous
logs in ndo_start_xmit, because of invalid station ID, leading to WD bark.

Move log level to info from error, if driver fails to find valid station
ID while processing ndo_start_xmit.

CRs-Fixed: 2022473
Change-Id: I122219d22e2e19ddb3ca6aa60c38177f2a95ac43
2017-07-30 10:04:15 -07:00
Manjeet Singh
2f78506072 qcacld-3.0: Correct sme_set_5g_band_pref definition
sme_set_5g_band_pref is declared inside FEATURE_WLAN_ESE feature flag
by mistake which can cause a symbol undefined error if FEATURE_WLAN_ESE
is not declared.

Move sme_set_5g_band_pref outside of conditional block FEATURE_WLAN_ESE.

Change-Id: I80b045100b068d08873b136fdf676e99e36a57cd
CRs-Fixed: 2016629
2017-07-30 10:04:13 -07:00
snandini
515628d632 Release 5.2.0.36E
Release 5.2.0.36E

Change-Id: Ie45cc178e6eb55af1f5a7c47146d19e797b7e27a
CRs-Fixed: 774533
2017-07-30 09:09:13 -07:00
Manjeet Singh
a9cae43599 qcacld-3.0: Add support for band specific preference
Add support for 5Ghz network RSSI boost/penalty preference
based on ini values.

Change-Id: Ia3ae5dcc35b9a85fde5a609f8f27ff8b4bc35cec
CRs-fixed: 1085554
2017-07-30 09:09:12 -07:00
Agrawal Ashish
bafaff128b qcacld-3.0: Add INI and IOCTL template for SAP ACS feature
Add INI and IOCTL template for SAP ACS feature for documentation.

Change-Id: Id8088ee9b1f79c975d15d71c10aca1e05e35f82b
CRs-Fixed: 1105602
2017-07-30 09:09:10 -07:00
Agrawal Ashish
b114b6726b qcacld-3.0: Don't update MBO IEs twice
Driver should not send MBO IEs if MBO Ies come from supplicant.

Change-Id: I7ad27759ba2454465f3e204d207cb58eaf8804a9
CRs-Fixed: 2044567
2017-07-30 09:09:08 -07:00
snandini
0d0d4561a6 Release 5.2.0.36D
Release 5.2.0.36D

Change-Id: Iced93faab172c214b998611a9b92197d21e1fb71
CRs-Fixed: 774533
2017-07-30 07:50:18 -07:00
Abhishek Singh
c15f649aef qcacld-3.0: Remove vdev stop req from vdev resp queue if vdev stop fail
If during set link state, vdev stop fails, then the params pointer
is not removed from the vdev resp queue and set link state rsp is
called which will free this params pointer.

This leads to double free of the params memory when driver try to
remove the req params from vdev resp queue when cleanup vdev resp
queue is called.

To fix this remove vdev stop req from vdev resp queue if vdev stop
fails.

Change-Id: I1da763d2cc35c12c1b55a3c0057b893e9ef8d48f
CRs-Fixed: 2080189
2017-07-30 07:50:17 -07:00
Agrawal Ashish
e030f78aef qcacld-3.0: Add INI template for P2P feature
Add INI template for P2P feature for documentation.

Change-Id: I7d9fcb2272e0d105fd81bbeea9e387ce40ffa5b5
CRs-Fixed: 1116847
2017-07-30 07:50:15 -07:00
Agrawal Ashish
1fdcbb6a83 qcacld-3.0: Update negotiated maxTxPower in Assoc request
qcacld-2.0 to qcacld-3.0 propagation

On some channel, AP's tranmission power is less than
regulatory tx power as per db.txt. While sending Assoc request,
driver should populate negotiated power (min power of AP's tx power and
regulatory power for operating channel) in Assoc request.
This doesn't happen currently, fix it to ensure that
driver follow negotiated power.

Change-Id: I7755894b72e4f0f7ffc371abbbda5c75b2851b13
CRs-Fixed: 2011396
2017-07-30 07:50:13 -07:00
snandini
a355d03b0d Release 5.2.0.36C
Release 5.2.0.36C

Change-Id: Ie632ef27454c6b1b337a3b17099c24e55e3dd41c
CRs-Fixed: 774533
2017-07-29 23:39:01 -07:00
SaidiReddy Yenuga
c533202e26 qcacld-3.0: Validate NLA attr in hdd_extscan_epno_fill_network_list
NLA attribute
QCA_WLAN_VENDOR_ATTR_PNO_SET_LIST_PARAM_EPNO_NETWORKS_LIST
used without validation.

validate NLA attribute.

CRs-Fixed: 2025680
Change-Id: I4da7dbe44325b0ed6346b363b71b558250996f8c
2017-07-29 23:39:01 -07:00
snandini
a180e94ab8 Release 5.2.0.36B
Release 5.2.0.36B

Change-Id: Ifce41b2afb31e277ecb2e2dc7acb51f15f629145
CRs-Fixed: 774533
2017-07-27 16:59:55 -07:00
Mohit Khanna
78cb6bbbcc qcacld-3.0: drop excess rx pkts if peer not registered
Currently if the peer is not registered, we add packets to a cached_bufq
(within a peer). In case the peer is not registered for quite a long
time, or if the  vdev->rx pointer is somehow not set (when the vdev is
associated), this will lead to large number of nbufs from the FW being
added to this list. Eventually, we will run out of memory trying to add
nbufs to this list.
Keep an upper threshold on the number of elements in the cached_bufq.
Drop elements once the threshold is reached.

Change-Id: I02db9347addd77976f1d84897eee20d1e6f9c4ec
CRs-Fixed: 2026991
2017-07-27 16:59:52 -07:00
snandini
9700bb8c66 Release 5.2.0.36A
Release 5.2.0.36A

Change-Id: Id106ab6e42ec07347c8fc7675836533db725ae39
CRs-Fixed: 774533
2017-07-27 16:59:50 -07:00
Agrawal Ashish
df8e43c507 qcacld-3.0: Populate correct txpower in RRM Link Measurement Request
qcacld-2.0 to qcacld-3.0 propagation

Currently, driver doesn't consider tx power which was negotiated
at the time of connection for max tx power for RRM Link Measurement
Request.
Fix this by not allowing tx power more than pSessionEntry->maxTxPower.

Change-Id: Idebe6d11e05da0b3b8186e2c84ff8ad4ac124fdc
CRs-Fixed: 2021835
2017-07-27 16:59:47 -07:00
Agrawal Ashish
c416da60c5 qcacld-3.0: Trigger pktlog as part of hb failure/kickout event
When Driver does disconnect as part of heartbeat failure
or kickout event, trigger fatal event to capture pktlog.

Change-Id: I43a486afeccc4acd4be542357b803d492afde9c0
CRs-Fixed: 2030718
2017-07-27 16:59:44 -07:00
snandini
faa688cedd Release 5.2.0.36
Release 5.2.0.36

Change-Id: Ief8c442d2009503255cab2df47a350d24ec980e6
CRs-Fixed: 774533
2017-07-27 16:59:42 -07:00
Ashish Kumar Dhanotiya
0f2ef95a2a qcacld-3.0: Fix kernel checkpatch warnings in wlan_hdd_scan.c
Fix kernel checkpatch warnings in wlan_hdd_scan.c

Change-Id: Iadace9583f8396a11de64682b95e1f63073f67f6
CRs-Fixed: 2024274
2017-07-27 16:59:40 -07:00
Arunk Khandavalli
4e7afa658f qcacld-3.0: Fix kernel checkpatch warnings in wlan_hdd_hostapd.h
Fix kernel checkpatch warnings in wlan_hdd_hostapd.h

Change-Id: Ibdde25dcff04d2515f591c3d235c0990f00708a4
CRs-Fixed: 2024274
2017-07-27 16:59:36 -07:00
Arunk Khandavalli
15664e4e9a qcacld-3.0: Fix kernel checkpatch warnings in wlan_hdd_nan_datapath.c
Fix kernel checkpatch warnings in wlan_hdd_nan_datapath.c.

Change-Id: Iec8437dd8b5685a6889280f1f9858221e31a8fe8
CRs-Fixed: 2024274
2017-07-27 16:59:34 -07:00
Arunk Khandavalli
0ecf8c85ad qcacld-3.0: Fix kernel checkpatch warnings in wlan_hdd_debugfs.c
Fix kernel checkpatch warnings in wlan_hdd_debugfs.c

Change-Id: Ifdd7b43720f75dab627310b66a398c22cbe55963
CRs-Fixed: 2024274
2017-07-27 16:59:31 -07:00
Ashish Kumar Dhanotiya
cf11bae9c0 qcacld-3.0: Fix kernel checkpatch warnings in wlan_hdd_power.c
Fix kernel checkpatch warnings in wlan_hdd_power.c

Change-Id: I0a22c2c1ebc86ada69ff271cbd68f2166e08b541
CRs-Fixed: 2024274
2017-07-27 16:59:29 -07:00
Dustin Brown
8d8d9fe485 qcacld-3.0: Add enhanced multicast enable/disable APIs
Currently, a hard-coded enhanced multicast filter configuration is being
sent to firmware. Instead, create a set of enable/disable APIs, and
configure enhanced multicast filter based on advertised firmware
capability.

Change-Id: I488b4a921612e1081266be8831be098d755375f9
CRs-Fixed: 2078615
2017-07-27 16:59:26 -07:00
snandini
023e45ae64 Release 5.2.0.35Z
Release 5.2.0.35Z

Change-Id: I6d8ce847c3178f7e40cdc38583807c5629d65b7d
CRs-Fixed: 774533
2017-07-27 16:59:24 -07:00
Dustin Brown
c86d5368b0 qcacld-3.0: Do not wait for scan cancel during suspend
In the suspend path, the code waits for all active/pending scans to be
cancelled before continuing the suspend. Instead, for better power
savings, abort all active/pending scans during suspend and immediately
continue the suspend process.

Change-Id: I16a5429c00034fe58fb4c70a8dacda666ac54227
CRs-Fixed: 2073229
2017-07-27 16:59:22 -07:00
Krishna Kumaar Natarajan
9cc71e6783 qcacld-3.0: Fix incorrect processing of encrypted auth frame
Fix incorrect processing of encrypted auth frame by allocating
appropriate local buffer and using correct type for frame length.

Change-Id: I87d6f4c3c43dd332d5b1877ddf4b3b46a717468b
CRs-Fixed: 2081734
2017-07-27 16:59:20 -07:00
Sridhar Selvaraj
22943574b2 qcacld-3.0: Add bound check for numap to avoid integer overflow
Currently, numap is int and is assigned with a uint32 value from
fw which might lead to integer overflow. Also, when multiplying
the uint32 value with sizeof dest_ap could lead to int overflow
if the value of numap is close to uint32's maximum limit.

Fix/Modify numap to uint32 to be in sync with value from fw cmd.
Also add check to trim down numap value to max (10) if value is
greater than max (10).

Change-Id: I060f585c8c951807cd32b5eec75c1bad2e84a75b
CRs-Fixed: 2082665
2017-07-27 16:59:18 -07:00
snandini
349a52f0d3 Release 5.2.0.35Y
Release 5.2.0.35Y

Change-Id: Ifacbe655f70029f4665ad49592fcdb3b02e346fd
CRs-Fixed: 774533
2017-07-27 16:59:16 -07:00
Govind Singh
98b6255df6 qcacld-3.0: Remove QCA_WIFI_3_0_EMU flag from Kbuild
QCA_WIFI_3_0_EMU flag is introduced for IHelium emulation
platform, where wait/error timeouts are kept for larger values.
Remove this flag for production target.
Increase tx completion drain delay to 1sec from 500ms to avoid
unwanted suspend abort.

Change-Id: Ie0633b3a2bbc9e2237039311af7417952961aada
CRs-Fixed: 2047750
2017-07-27 16:59:14 -07:00
snandini
39ed073327 Release 5.2.0.35X
Release 5.2.0.35X

Change-Id: I79b53890ee6e84297e538c4a5300ac4c7ca9e7c1
CRs-Fixed: 774533
2017-07-27 16:59:12 -07:00
Liangwei Dong
ffd52d1f27 qcacld-3.0: Fix edca parameter issue
qcacld-2.0 to qcacld-3.0 propagation

Update EDCA parameter if the country is in European
Union based on new ETSI RED channel access parameters.

Change-Id: I08b1a0d7cd0ee1f6985cd0810c5c4c1108e582b4
CRs-Fixed: 2078985
2017-07-27 16:59:11 -07:00