Commit Graph

8236 Commits

Author SHA1 Message Date
jiad
cd49ec74b5 qcacld-3.0: indicate tkip mic error to protocol layer
Currently tkip mic countermeasure is not supported for Napier. Fix is to
indicate tkip mic error indication to protocol layer so that errors can
be propogated to supplicant.

Change-Id: I8ee94343e76040e360f0887a826c07f98545f71f
CRs-Fixed: 2151984
2017-12-06 06:56:47 -08:00
snandini
2318e4ae40 Release 5.2.0.56H
Release 5.2.0.56H

Change-Id: Ibad7a0c9a395c175a1865d17736d40d5ca522257
CRs-Fixed: 774533
2017-12-05 13:38:43 -08:00
Vignesh Viswanathan
62d9899e8c qcacld-3.0: Fix potential buffer over-read during FILS Association
In function wlan_hdd_send_roam_auth_event, FILS kek is copied to
skb for the vendor command QCA_WLAN_VENDOR_ATTR_ROAM_AUTH_PTK_KEK
for kek_len length. There is no validation for the max value of
kek_len and would lead to an buffer over-read if kek_len exceeds
SIR_KEK_KEY_LEN_FILS.

Add sanity check for kek_len for max limit SIR_KEK_KEY_LEN_FILS
before copying the kek to skb.

Change-Id: I4290909cd2df8686a32d25aa14711db2b899b2eb
CRs-Fixed: 2152985
2017-12-05 13:38:42 -08:00
snandini
325061be38 Release 5.2.0.56G
Release 5.2.0.56G

Change-Id: Iebbf849663bbb3ead290d31a0dc40869ba302809
CRs-Fixed: 774533
2017-12-05 07:22:36 -08:00
Yun Park
22026c75b7 qcacld-3.0: Enable Metering feature
Enable Data Metering feature in WLAN host driver for SDM845 and SDM670.

Change-Id: If720e40dd299d70b1a6300f56444855ae0f6fc64
CRs-Fixed: 2149525
2017-12-05 07:22:36 -08:00
snandini
5d9ddfa603 Release 5.2.0.56F
Release 5.2.0.56F

Change-Id: Icfec5c82d551345c3f45c875426077b0f624c8c5
CRs-Fixed: 774533
2017-12-04 23:38:52 -08:00
Frank Liu
c0c25fd5c8 qcacld-3.0: Enable TDLS dynamic antenna switch
Enable TDLS dynamic antenna switch

Change-Id: I03bcdcd18281eb42389a87f8f65dd3d6fde67f44
CRs-Fixed: 2084952
2017-12-04 23:38:51 -08:00
snandini
aab4c58a4f Release 5.2.0.56E
Release 5.2.0.56E

Change-Id: I7bd6e1e7586f0a892d02d7eb8f00b96a8fad1530
CRs-Fixed: 774533
2017-12-04 19:47:07 -08:00
Mohit Khanna
ca4173ba74 qcacld-3.0: add periodic data traffic stats
Add support for periodic stats for data packets to be displayed in
wlan driver logs.

Change-Id: Iee6759ae75657ae93e94ea1bb1343f2ea489c087
CRs-Fixed: 2120047
2017-12-04 19:47:06 -08:00
Rajeev Kumar
6e0cbffa6b qcacld-3.0: Flush SAP pre-cac clean up work during SAP stop adapter
Flush SAP pre-cac clean up work during SAP stop adapter such that
pre cac work does not run after SAP adapter is destroyed.

Change-Id: Ie3e659ab04a9d9bf3b7c114c2d0446f13746420c
CRs-Fixed: 2152520
2017-12-04 19:47:03 -08:00
snandini
3ad646a6ee Release 5.2.0.56D
Release 5.2.0.56D

Change-Id: I0f4c6ac3f7629bcc764a4c919d55a7e8abb03d45
CRs-Fixed: 774533
2017-12-04 18:16:48 -08:00
Yun Park
9281cb7be8 qcacld-3.0: Remove IPA Tx system pipe setup for TX_FLOW_CONTROL_V2
The Tx system pipes are not needed for MCC when TX_FLOW_CONTROL_V2
is enabled, where per vdev descriptors are supported in firmware.

Change-Id: I42ca1211af5a301db5fbbbfdd1876bd9065ab77a
CRs-Fixed: 2150488
2017-12-04 18:16:48 -08:00
snandini
055d3ebf22 Release 5.2.0.56C
Release 5.2.0.56C

Change-Id: Ie598a928a13d82d1ddab89ed390c89376dd8064c
CRs-Fixed: 774533
2017-12-04 15:27:51 -08:00
Yeshwanth Sriram Guntuka
d5aae7fcf4 qcacld-3.0: Add check to validate vdev id
Set ARP stats command is sent to firmware after
SAP is stopped. As a result, invalid vdev id is
sent in the set ARP stats param resulting in
firmware crash.

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

Change-Id: Ia7ab56b9d5aa6a0fd53d84ef1264feea395dd44c
CRs-Fixed: 2149289
2017-12-04 15:27:51 -08:00
snandini
cb289e3443 Release 5.2.0.56B
Release 5.2.0.56B

Change-Id: I4304ff09f68edbda39bb44735687a23fc2ba2634
CRs-Fixed: 774533
2017-12-04 13:38:32 -08:00
Abhishek Singh
6d6e3d1a34 qcacld-3.0: Break when STA entry is found in a session
Once duplicate sta entry is deleted, in lim_send_sme_disassoc_ntf,
driver loop through the SAP interfaces to find the new added sta
to send ADD STA req to firmware. Now while looping through SAP
interfaces even if STA is found on 1st interface, it checks next
interface, making the sta entry as NULL. Thus even if STA is present
on an interface sta remains NULL and ADD STA req is not sent to
firmware.

To fix this break as soon as STA entry is found in a session.

Change-Id: I6fbeda48c7a8f403bbdb8c0bd9b38b832d7e002f
CRs-Fixed: 2149764
2017-12-04 13:38:31 -08:00
snandini
983cba41c6 Release 5.2.0.56A
Release 5.2.0.56A

Change-Id: I5dc77ceeba459c3235ab4272d13e61298aef6321
CRs-Fixed: 774533
2017-12-03 19:26:27 -08:00
Alok Kumar
19b6ad998b qcacld-3.0: Replace instances of unadorned %p
Replace instances of unadorned %p which violates security guidelines.

Change-Id: Ia3d69204a426f1208f3e685107f528e7ca544cba
CRs-Fixed: 2133314
2017-12-03 19:26:26 -08:00
snandini
8a803ba0cb Release 5.2.0.56
Release 5.2.0.56

Change-Id: I95ab691ea9a378b6779518b7ebbf109d3c321696
CRs-Fixed: 774533
2017-12-03 15:25:59 -08:00
Sourav Mohapatra
3bc5e981b1 qcacld-3.0: Wait for external threads to complete before con mode switch
Interface up runs in normal mode (wifi@1.0-service) and it gets
preempted by the con_mode change handler when Monitor mode is
invoked via user. Then again when the normal mode gets scheduled
after the completion of Monitor mode, it tries to access contents
freed during the con_mode change.

The __con_mode_handler is made to wait for the external
threads to complete before making the con mode switch

Change-Id: I245b6b6f855e119a11422677da161a43c1184069
CRs-fixed: 2147499
2017-12-03 15:25:59 -08:00
snandini
6d5446249e Release 5.2.0.55Z
Release 5.2.0.55Z

Change-Id: I1f613f953a3b58528037bc66112ed5b449e09445
CRs-Fixed: 774533
2017-12-02 19:26:33 -08:00
Padma, Santhosh Kumar
5bc0c24d7f qcacld-3.0: Do not update beacon for ESE
Currently driver updates beacon for ESE connections as well
as part of SIR_HAL_ROAM_INVOKE. Due to this, there is a
possibility that firmware may receive rejection of reassoc
request because of stale beacon and results in roaming failure.
Hence, do not update beacon for ESE connections so that firmware
can use latest beacon to avoid roaming failure.

Change-Id: Id10cec040c36e559eacf82388f3d702afc17ce5a
CRs-Fixed: 2150713
2017-12-02 19:26:33 -08:00
Padma, Santhosh Kumar
2d1f77c9a0 qcacld-3.0: Fix to update KRK/BTK for ESE connection
Currently driver updates KRK/BTK only during RSO start.
Supplicant can update these KRK/BTK during timeout. But
driver currently does not update KRK/BTK dynamically.
This can lead to MIC failure in firmware and cause
roaming failure. Update KRK/BTK as and when they are
received using RSO update to fix this issue.

Change-Id: Ib3ee656e63920d0162dea56eef7f052c585bb5a4
CRs-Fixed: 2149232
2017-12-02 19:26:31 -08:00
snandini
6db7461cf1 Release 5.2.0.55Y
Release 5.2.0.55Y

Change-Id: Idffe97ec05a5fecf1d3d5e3b399e1c4d34c2f2b3
CRs-Fixed: 774533
2017-12-02 06:08:49 -08:00
Dustin Brown
d33276b0e3 qcacld-3.0: Close cds sched as part of cds_close()
cds_sched_open is called as part of cds_open, but cds_sched_close is
called outside of cds_close. This leads to situations where the CDS
scheduler is started but not properly closed. Move the call to
cds_sched_close into cds_close, such that the CDS scheduler lifecycle is
tied directly to the CDS core lifecycle, to prevent CDS from closing
without closing the CDS scheduler.

Change-Id: I440ec279e6b750a7b41ec05000fc66b6cebdb8d8
CRs-Fixed: 2151049
2017-12-02 06:08:48 -08:00
Jiachao Wu
0411bc9be0 qcacld-3.0: Fix a memory leak in hdd_assoc handler
Function wlan_hdd_cfg80211_update_bss_db will return pointer of
struct cfg80211_bss.
Caller should invoke cfg80211_put_bss to free resource in pointer.
In some case those resource not be free.

Change-Id: I7fa55a09fcc3515361e9568cf87966e4533085e4
CRs-Fixed: 2146717
2017-12-02 06:08:45 -08:00
snandini
6f42696002 Release 5.2.0.55X
Release 5.2.0.55X

Change-Id: Idc595fe0d330504e3c2cccd748440364b17b3d0c
CRs-Fixed: 774533
2017-12-02 05:26:35 -08:00
Naveen Rawat
b7be1ed72c qcacld-3.0: Fix peer addition/removal API calls
Call object manager peer create API when NDP peer is create.
For peer delete, object manager API is called by deregister
sta API.

Change-Id: If84c9847d53b5563eea13646f669a6e8b7fd166d
CRs-Fixed: 2137426
2017-12-02 05:26:34 -08:00
snandini
8c638daa28 Release 5.2.0.55W
Release 5.2.0.55W

Change-Id: I05098099b6ca104ad4850a93db6055813cdfcf9a
CRs-Fixed: 774533
2017-12-02 01:40:51 -08:00
Srinivas Girigowda
3cc8e91b14 qcacld-3.0: clang: Remove unnecessary NULL check for address of array
Clang generated the following warning in various places:

warning: address of array 'weight->pcl_list' will always evaluate
to 'true' [-Wpointer-bool-conversion]
        if (weight->pcl_list) {
              ~~ ~~~^~~

Remove the unnecessary NULL check for address of array.

Change-Id: Ibc82b4d7135a0425748c0fb7f065435ccd28ad6f
CRs-Fixed: 2150410
2017-12-02 01:40:51 -08:00
Srinivas Girigowda
244c3f631e qcacld-3.0: Drop measurement pilot public action frame
Measurement pilot public action frame (Action Id = 7) is not
handled in the driver, if the AP is sending this action frame
it ends up waking up the APPS and burn battery.

Since anyway host is not handling this action frame, configure
the firmware to drop this action frame.

Change-Id: I15327f9af8cccaa7324e4e39f1e6336225740b75
CRs-Fixed: 2146506
2017-12-02 01:40:49 -08:00
Manjunathappa Prakash
794366e4b4 qcacld-3.0: Reorganize the tx & rx member of skb->cb structure
The current tx & rx member of skb->cb structure has lot of common members
duplicated across CONFIG_WIN and CONFIG_MCL.
The common members are now moved out and new members are added as per the
requirement. Also the members are organized to avoid additional padding
and fit within the 48 byte boundary for both 32bit & 64 bit platforms.

Change-Id: I27abc95d51127513cf2e7e9657a4ee84324b2cc9
CRs-Fixed: 2142792
2017-12-02 01:40:47 -08:00
Naveen Rawat
d773414489 qcacld-3.0: Send WOW timer pattern to firmware
Send WOW timer pattern to firmware when suspend is requested and
INSTALL_KEY is not sent to firmware yet. This will allow firmware
to wake host in case Eapol frames are not received and do a graceful
disconnect.

Change-Id: Ibbcc0af85ee9ddcd7f6559c83c67274508193004
CRs-Fixed: 2127634
2017-12-02 01:40:45 -08:00
snandini
4fa5c82616 Release 5.2.0.55V
Release 5.2.0.55V

Change-Id: I6e01ca20fc6d9dc06eeba2fccc159dfda3fa30ce
CRs-Fixed: 774533
2017-12-01 22:28:13 -08:00
Naveen Rawat
e795f456fc qcacld-3.0: Update HE_OPs, basic MCS set interpretation
Update HE_OPs, basic MCS set interpretation as per ieee80211ax
draft 2.0

Change-Id: I4c64f9e9568068c441e019fd83152d8c55c4c949
CRs-Fixed: 2142645
2017-12-01 22:28:12 -08:00
snandini
0c7e886a67 Release 5.2.0.55U
Release 5.2.0.55U

Change-Id: Ieb75bcb33bd9717b14f3f8b4c123fbab1d21a2c4
CRs-Fixed: 774533
2017-12-01 21:40:03 -08:00
Naveen Rawat
fc530313e1 qcacld-3.0: Update 11AX - Draft 2 support - 2/2
Update driver to conform with frame parser Draft 2 changes.

Change-Id: I29301ea894aedb36fea5d41f0e7c2bb2a7401397
CRs-Fixed: 2130375
2017-12-01 21:40:02 -08:00
Kiran Kumar Lokere
a6e01c070b qcacld-3.0: Do not process invalid reg update request
Do not process the reg notifier request if the regulatory
information is invalid

Change-Id: I13e288cd03e3fbdb192733a6675c7ec00e927250
CRs-Fixed: 2145505
2017-12-01 21:40:00 -08:00
snandini
8d4c8f06d9 Release 5.2.0.55T
Release 5.2.0.55T

Change-Id: I9c728ef766e7094c5788fd52517ee9af17a34c00
CRs-Fixed: 774533
2017-12-01 16:51:35 -08:00
Rakesh Pillai
0a54fa91df qcacld-3.0: Clear bad state of driver at start of probe
During SSR we check if the driver is in bad state, to decide
whether we should send suspend to the fw. This causes a race
when SSR occurs during driver probe, since the driver state is
still marked as bad.

Clear the flag indicating the driver state as bad during the
start of probe.

CRs-Fixed: 2144058
Change-Id: I13087dc65dbffa6a784395606fac2c41f6ce7591
2017-12-01 16:51:35 -08:00
Naveen Rawat
53448eacf4 qcacld-3.0: Rename enable_range_ext to range_ext
IOCTL cannot handle names more than 15 character long.
So rename enable_range_ext to range_ext.

Change-Id: I9134cc76357f1cd6e175581fa072a8cbb67c19e4
CRs-Fixed: 2146728
2017-12-01 16:51:32 -08:00
Kiran Kumar Lokere
1d411bbb76 qcacld-3.0: Correct the log level in LFR3 code path
Correct the log level for messsages in LFR3 code path

Change-Id: I05c36409fe4fba99a48f43df87e80176b2578f77
CRs-Fixed: 2151154
2017-12-01 16:51:29 -08:00
Tushnim Bhattacharyya
18b0eaab4f qcacld-3.0: Fix sap reinit after SSR
The reinit logic for SAP shouldn't initialize all the data
structures related to ACS to 0 after SSR.

Change-Id: Id637968b3e0edc0f3698836802012f5921c5c79e
CRs-Fixed: 2150314
2017-12-01 16:51:26 -08:00
snandini
71f2da2156 Release 5.2.0.55S
Release 5.2.0.55S

Change-Id: I75ae4d68f6e2966178b300466dfe4b92faa01d7b
CRs-Fixed: 774533
2017-12-01 14:40:47 -08:00
Mohit Khanna
6272fb68a8 qcacld-3.0: Add ini support for tcp_adv_win_scale
WLAN driver changes this system paramerter (via cnss-daemon) when the RX
throughput requirement changes LOW->HIGH or HIGH->LOW. This depends on
the whether the number of RX packets received in last 100ms interval is
greater than 500 or not. The 100ms and 500 thresh params are
configurable via WLAN ini file WCNSS_qcom_cfg.ini.

Add ini support to enable/disable changing of this system parameter by
WLAN driver. Since tcp_adv_win_scale is a system parameter, some
customers may not want the WLAN driver to change it and may want to set
their own default values.

"gTcpAdvWinScaleEnable=0" when added to the ini file will prevent
the driver from making any changes to the system parameter
"/proc/sys/net/ipv4/tcp_adv_win_scale". The default value of the ini
file param gTcpAdvWinScaleEnable is "1".

CRs-Fixed: 2033338
Change-Id: I19288bba11841cf176118abaf08ccaabaf2f79b9
2017-12-01 14:40:46 -08:00
snandini
fda0d6e09e Release 5.2.0.55R
Release 5.2.0.55R

Change-Id: Id13430807ce03942e4e44484ebd0d6caf184f70b
CRs-Fixed: 774533
2017-12-01 13:39:59 -08:00
Yue Ma
b8b2946e3b qcacld-3.0: Remove unused PLD PCIe APIs
These APIs are replaced by the ones with device pointer.

Change-Id: Ic13409af5814dec65ac071236af780159624c147
CRs-fixed: 2151189
2017-12-01 13:39:58 -08:00
Dustin Brown
f4a6e0f6ad qcacld-3.0: Use try_get_ref API in hdd_vdev_create
hdd_vdev_create currently uses the unconditional vdev ref grabbing API,
wlan_objmgr_vdev_get_ref. While this may be the single valid use case
for the API outside of objmgr core, it is better to avoid using the
uncondional API outside of objmgr core at all. This sets a good example
for future consumers of the vdev ref APIs, and makes it easier to spot
incorrect usages of the unconditional API. In hdd_vdev_create, use
wlan_objmgr_vdev_try_get_ref and abort the vdev create operation if a
reference cannot be obtained.

Change-Id: Iafdcec9752b7189f8c74b8838b2d9261676184f9
CRs-Fixed: 2150258
2017-12-01 13:39:55 -08:00
Vignesh Viswanathan
4f75cf5ea5 qcacld-3.0: Fix buffer overread in wma_extscan_cached_results_event_handler
In function wma_extscan_cached_results_event_handler,
event->num_entries_in_page is received from the FW and is used in the
function wma_extscan_find_unique_scan_ids to calculate scan_ids_cnt
from src_rssi buffer. If the value of num_entries_in_page is greater
than the number of src_rssi buffers present, a buffer overread would
occur in the function wma_extscan_find_unique_scan_ids.

There is already a check in place to valudate num_entries_in_page in
the function wma_extscan_cached_results_event_handler however it is done
after the call of wma_extscan_find_unique_scan_ids.

Move the checks on num_entries_in_page before using it in the function
wma_extscan_cached_results_event_handler

Change-Id: Ib5e803589deb6ca074cb70326b9ce846d0754a73
CRs-Fixed: 2149720
2017-12-01 13:39:53 -08:00
snandini
be959b9f27 Release 5.2.0.55Q
Release 5.2.0.55Q

Change-Id: I3a5c12beecb8517818216b256954977e5442455a
CRs-Fixed: 774533
2017-11-30 03:40:24 -08:00