Commit Graph

5410 Commits

Author SHA1 Message Date
lifeng
9537f47b1d qcacld-3.0: Fix memory leak in acs procedure
qcacld-2.0 to qcacld-3.0 propagation

Free the memory for channel list once the scanStatus is NOT
eCSR_SCAN_SUCCESS in WLANSAP_PreStartBssAcsScanCallback.

Change-Id: Id2d7fe5d7df8c032d50f02880deedb2ed1ac79fd
CRs-Fixed: 2059751
2017-06-29 05:01:24 -07:00
snandini
c1a281f52c Release 5.2.0.32F
Release 5.2.0.32F

Change-Id: I2371821139374ef312b581453838ce12b02980df
CRs-Fixed: 774533
2017-06-29 03:44:41 -07:00
Yu Wang
04ccd76c41 qcacld-3.0: add support for time stamping netbuf
Map the input target time to host time, and
time stamp netbuf with this host time.

Change-Id: I1fb298615267bb11c4f21cabe670fd4c3a12a759
CRs-Fixed: 2057693
2017-06-29 03:44:41 -07:00
Yu Wang
000dc2f19c qcacld-3.0: add support for target-host synchronization
To map target time to host time, implement a timer
to capture TSF and host time periodically.
The timer will be started when connection state of
sta/p2p_gc being changed from not associated to
associated; and stopped when from associated to
not associated.

Change-Id: I697080b95f01f173beddc038ab9ad89ee394354b
CRs-Fixed: 2057693
2017-06-29 03:44:39 -07:00
Yu Wang
f5d5b5f5cc qcacld-3.0: enhance the robustness of TSF capturing
1. Failed to get TSF if issuing cap_tsf more
   than 1 time continuously, due to the TSF
   value will be reset by the following 'cap_tsf'
   command, however, these 'cap_tsf' won't be
   excuted actually, because 'get_tsf' was not
   received after last successful 'cap_tsf'.
   To fix it, do TSF reset only if 'cap_tsf'
   will be actually excuted.

2. Add flag 'cap_tsf_flag' to make sure cap_tsf
   being executed serially.

3. Add flag 'tsf_ready_flag' to indicate whether
   TSF feature has been initialized successfully.
   Add 'TSF_NOT_READY' in 'hdd_tsf_get_state' to
   indicate this state.

Propagated from qcacld-2.0

Change-Id: Ib768e3d7f0b33a75e8bd838d4ed1c0b84e3aa13d
CRs-Fixed: 2057693
2017-06-29 03:44:38 -07:00
hqu
c7f560cb21 qcacld-3.0: Translate the AC enums defined in htt
The AC values used by htt and txrx module are mismatch. Assertion
is also added to confirm that the values are matching.

The change is also to sync with CLD2.0.

Change-Id: I011a6f2b78a6954863c99f9d3875b2c88d2b78b1
CRs-Fixed: 2065390
2017-06-29 03:44:37 -07:00
snandini
4099f0858c Release 5.2.0.32E
Release 5.2.0.32E

Change-Id: Ie43963e6248f2eb66523c4abed24b5c8d96fa4b4
CRs-Fixed: 774533
2017-06-29 01:49:51 -07:00
hqu
fd227fe3f8 qcacld-3.0: Initialize mapping from TIDs to category table
Add initialization for mapping from TIDs including extension TIDs
to category table.

The change is also to sync with CLD2.0.

Change-Id: Ie79e5420cc22f4cb3e34ceeb020f3fde8f170d4d
CRs-Fixed: 2065379
2017-06-29 01:49:50 -07:00
snandini
cf484c81fc Release 5.2.0.32D
Release 5.2.0.32D

Change-Id: I589f3f8498738bde601cc168c8b4927e24f76ace
CRs-Fixed: 774533
2017-06-28 19:28:10 -07:00
Naveen Rawat
e7e7899b29 qcacld-3.0: Initialize NDI with no protection
After VDEV_START set WMI_VDEV_PARAM_PROTECTION_MODE param to no
protection: IEEE80211_PROT_NONE. Currently NAN spec and firmware
implementation does not have a mechanism to identify when protection
is needed.

Change-Id: I5906097f44d2059e26e440d2435568ef661160bc
CRs-Fixed: 2033348
2017-06-28 19:28:09 -07:00
Naveen Rawat
4b1aab96e1 qcacld-3.0: Free gpLimRemainOnChanReq in lim_cleanup
In case remain on channel response is pending when wlan unloads, this
memory will leak. Free gpLimRemainOnChanReq memory when lim_cleanup is
called to avoid leak.

Change-Id: Ibf47bbc4b7eb5ce9509998cd40d0c3ce54e4da62
CRs-Fixed: 2051164
2017-06-28 19:28:08 -07:00
Naveen Rawat
746a90b284 qcacld-3.0: Initialize NSS to vdev_nss in roam_sync propagation
In roam sync propagation, initialise pe_session NSS to vdev_nss, which
will then later be updated as per ASSOC response frame received from
firmware. This allows roaming from 1x1 to 2x2.

Change-Id: I5260425c7bfdfaa09bac908ea7d8a89d5caa3f69
CRs-Fixed: 2058560
2017-06-28 19:28:07 -07:00
snandini
a8afd840f1 Release 5.2.0.32C
Release 5.2.0.32C

Change-Id: I5d8f848446389af75026ab2dddffe0c49d831d28
CRs-Fixed: 774533
2017-06-28 18:19:07 -07:00
Dustin Brown
732ab9c2c8 qcacld-3.0: add gEnableCckTxFirOverride ini item
When operating in an 802.11b mode, CCK TX FIR Override forces a 2x2
radio configuration into 1x for Tx and 2x for Rx (ie 1x2) for
regulatory compliance reasons. Add gEnableCckTxFirOverride to allow
this firmware feature to be enabled/disabled via ini configuration.

Change-Id: I359fc908fa27113e2500a28c343cf90dea518212
CRs-Fixed: 2062111
2017-06-28 18:19:06 -07:00
snandini
9ab8bb99a6 Release 5.2.0.32B
Release 5.2.0.32B

Change-Id: I7ec9d53a60bc23ff8fe6d2d34fad5b8c2e861610
CRs-Fixed: 774533
2017-06-28 17:33:37 -07:00
Tushnim Bhattacharyya
3d17def041 qcacld-3.0: Modify logic to associate with HT clients
Add the following rules when HT client is associating with SAP,
1.2G-AS platform: SAP associates with HT (11n) clients as 2x1 in 2G
and 2X2 in 5G.
2.Non-2G-AS platform: SAP associates with HT (11n) clients as 2X2
in 2G and 5G and async DBS scan is disabled.
3.5G-AS platform: SAP associates with HT (11n) clients as 2X2 in 2G
and 5G and async DBS scan is disabled.

Change-Id: Ia472e786cf3ffcb420aa8142a543b56f508c6b4a
CRs-Fixed: 2063482
2017-06-28 17:33:37 -07:00
snandini
6462ab8f88 Release 5.2.0.32A
Release 5.2.0.32A

Change-Id: Iab09a510e1939f51d777e8fa4e148e5e6f11f269
CRs-Fixed: 774533
2017-06-28 03:53:42 -07:00
Abhishek Singh
7eaf0e8528 qcacld-3.0: Use vht operation or opmode to change the VHT channel width
Even if vht operation or Opmode IE is present in beacon, HT info IE is used to
detect the channel width and set to firmware and then again vht operation or
opmode IE is used to detect and set new channel width to firmware.

So if vht operation or Opmode IE are present, use them to detect and set
new channel width.

Change-Id: Ibbb5a2c55a5f79536fe269e0b6c0f5ff2c369309
CRs-Fixed: 2067727
2017-06-28 03:53:42 -07:00
snandini
22de29ac46 Release 5.2.0.32
Release 5.2.0.32

Change-Id: I21c885a4c08174e5cad9c86f5e0d049d700818d0
CRs-Fixed: 774533
2017-06-28 01:48:47 -07:00
Ashish Kumar Dhanotiya
81e2acc6c8 qcacld-3.0: Fix out of bound read issue in get link properties
Propagatin from qcacld-2.0 to qcacld-3.0

Length of the MAC address is not checked which may cause out of bound
read issue.

To resolve this add a check for MAC address length.

CRs-Fixed: 2063980
Change-Id: I58454b84c28b157cef35984d612a9bc6fdd9ec56
2017-06-28 01:48:47 -07:00
snandini
dbf0be537d Release 5.2.0.31Z
Release 5.2.0.31Z

Change-Id: I326e6137f731e1fb25de30411eb8df1a102743d6
CRs-Fixed: 774533
2017-06-27 22:13:10 -07:00
Ravi Kumar Bokka
05c14e5c50 qcacld-3.0: Auto Detect SoC Power Collapse Failure changes
Add host support for detecting SOC power collapse failures in FW and
communicating the same to framework.

Change-Id: Icee39c896802c4d7136e0b8ef442a33feeb4799c
CRs-Fixed: 1112979
2017-06-27 22:13:09 -07:00
snandini
6bd6193be7 Release 5.2.0.31Y
Release 5.2.0.31Y

Change-Id: Ifb4ede70eaef1388082ff9fdc44792066e47d41a
CRs-Fixed: 774533
2017-06-27 05:34:17 -07:00
Nachiket Kukade
c9045fedd0 qcacld-3.0: Ignore address change requests when interface is down
In some cases kernel incorrectly forwards the address change request
down to the driver even when interface is down. Driver tries to get
the session pointer from mac context and ends up crashing due to NULL
pointer dereference.
Ignore address change requests when interface is down.

CRs-Fixed: 2060889
Change-Id: I2b572c517b335856cdf2ae04433b4a48a9598572
2017-06-27 05:34:16 -07:00
snandini
17c152af70 Release 5.2.0.31X
Release 5.2.0.31X

Change-Id: Iaa901fc8bc17304ea07a47a54fcaf485d87f57d4
CRs-Fixed: 774533
2017-06-27 01:40:21 -07:00
bings
75be2d0a45 qcacld-3.0: Fix crash caused by sdio ramdump allocation
For TF sdio chip with platform driver, ramdump is
configured in platform driver. Driver can get the
virtual memory, but it can't call ioremap again.

If there is a platform driver, ramdump should be
allocated in platform driver, and if there is no
platform driver, ramdump should be allocated in
driver.

CRs-Fixed: 2066529
Change-Id: Ia2a32a4895f354e365522a30bbfac949ccb7a391
2017-06-27 01:40:21 -07:00
snandini
d2eee305f4 Release 5.2.0.31W
Release 5.2.0.31W

Change-Id: I6876e41e668be3d4a97396dfa9fd69a968b19f6f
CRs-Fixed: 774533
2017-06-26 22:12:49 -07:00
Abhishek Singh
7889a7e84e qcacld-3.0: Do not change channel BW if channel is 0 in HT info
Do not change channel BW if channel is 0 in HT info, As this will
cause invalid channel and phymode sent to firmware and result into
crash.

Change-Id: Ia629314b9ced299afa5d89092d0a9fc5c7cb6b4c
CRs-Fixed: 2065143
2017-06-26 22:12:49 -07:00
snandini
d64296923d Release 5.2.0.31V
Release 5.2.0.31V

Change-Id: I5e35f76b085fd879c3191005c5e9499835af5610
CRs-Fixed: 774533
2017-06-26 18:24:08 -07:00
Zhu Jianmin
ded9d2dc57 qcacld-3.0: Prevent memory issue with more check
Add session_id range check etc

Change-Id: I749076a5f060873702b42ac4908e3220e805c349
CRs-Fixed: 2061117
2017-06-26 18:24:08 -07:00
snandini
70ac723588 Release 5.2.0.31U
Release 5.2.0.31U

Change-Id: Ibb265ab3bfbdfdab88308ba1e4857631dab453b0
CRs-Fixed: 774533
2017-06-26 11:58:01 -07:00
Deepak Dhamdhere
828f189328 qcacld-3.0: Add support for PMKID modes of PMK caching and OKC
Convert the boolean variables used for tracking okc_enable into
separate bit flags for OKC and PMK caching. Firmware will also
add support for bitwise enablement of OKC and PMK caching in 802.11i
configuration part of RSO command.

CRs-Fixed: 2004963
Change-Id: Ib2fcdc6318adb488eca5cf47b2b59541020e6009
2017-06-26 11:58:01 -07:00
snandini
5ccd060f25 Release 5.2.0.31T
Release 5.2.0.31T

Change-Id: I79435778f2ea0618b906ed63a98dc113a2e16e42
CRs-Fixed: 774533
2017-06-23 17:48:03 -07:00
Nachiket Kukade
4bea8b4d2b qcacld-3.0: Check on IE length to avoid buffer over-read
An incorrect IE length can overflow the remaining length variable
and make IE parsing logic perform a buffer over-read.
Check on IE length to avoid buffer over-read.

Change-Id: I20ef6a0136c7a5b602ad15a2fb725f20807b81d0
CRs-Fixed: 2052804
2017-06-23 17:48:02 -07:00
Nachiket Kukade
2f6509fce7 qcacld-3.0: Add maximum bound check on WPA RSN IE length
WPA RSN IE is copied from source without a check on the given IE length.
A malicious IE length can cause buffer overflow.
Add maximum bound check on WPA RSN IE length.

Change-Id: Id159d307e8f9c1de720d4553a7c29f23cbd28571
CRs-Fixed: 2052791
2017-06-23 17:48:01 -07:00
snandini
f1edc1a78d Release 5.2.0.31S
Release 5.2.0.31S

Change-Id: Ic22970f56649ffec2263de8324c413480a71912b
CRs-Fixed: 774533
2017-06-23 13:42:17 -07:00
lifeng
66831666b4 qcacld-3.0: Add vendor attr to get rx aggregation statistics
qcacld-2.0 to qcacld-3.0 propagation

By setting the corresponding parameters: reorder timeout and window size
to FW, the host will deliver information about aggregation of the packets
on RX to upper layer.

Change-Id: I404d56d8d9ca3e90f8d1dee28abd80d784924901
CRs-fixed: 1078111
2017-06-23 13:42:16 -07:00
snandini
1c41c55ca2 Release 5.2.0.31R
Release 5.2.0.31R

Change-Id: Ie600f63aa1860748c47d338bfe243c4b25439086
CRs-Fixed: 774533
2017-06-23 07:42:06 -07:00
Nachiket Kukade
142e996a65 qcacld-3.0: Feed retry count value to the correct category
During .set_phy_params operation, retry value for short retry
is incorrectly fed to the long retry parameter.
Only feed retry value for long retry into the long retry parameter.

Change-Id: I3e8838b9b0c21d3cbaafa3a1785dd3f793b5b372
CRs-Fixed: 2062561
2017-06-23 07:42:05 -07:00
snandini
2a41e3668e Release 5.2.0.31Q
Release 5.2.0.31Q

Change-Id: Ic2cae56551028bd41c7ea6906829ee2c69bc94d4
CRs-Fixed: 774533
2017-06-23 04:03:29 -07:00
Krunal Soni
4bfecf6e23 qcacld-3.0: Resolve compilation by protecting LFR3 feature
Few LFR3 related code checks are not protected which creates the
compilation issue on some of the platform.

Fix the compilation issue by moving LFR3 related code checks to
WLAN_FEATURE_ROAM_OFFLOAD macro.

CRs-Fixed: 2055018
Change-Id: I1ca4000c3bb15e33c2fc85f9117aa4f1ca2aeed4
2017-06-23 04:03:28 -07:00
Padma, Santhosh Kumar
03c3ad8e75 qcacld-3.0: Update dot11mode as per LFR version
Currently driver calculates dot11mode in CSR for LFR-2.0, saves in
global variable pFTPreAuthReq of PE context and later uses that in
lim. But for LFR-3.0, pFTPreAuthReq of PE context is NULL which
can result in NULL pointer access. Add a check for pFTPreAuthReq
to fix this issue.

Change-Id: Ia5cfbca912f9870b9ec7b33a015f4925022f448a
CRs-Fixed: 2055018
2017-06-23 04:03:27 -07:00
snandini
af4ea2a0bc Release 5.2.0.31P
Release 5.2.0.31P

Change-Id: I5d91b4afb430d46b31ef45592937cbeacd08bd9f
CRs-Fixed: 774533
2017-06-23 02:12:35 -07:00
Sravan Kumar Kairam
76ab2662f5 qcacld-3.0: Free allocated memory before return
Currently in function ol_copy_ramdump dynamically allocated memory
is not freed before return in error condition. In this change free
memory before return.

Change-Id: Ie75d69a1716c3598e0123064a6ee522076748f7d
CRs-Fixed: 2044460
2017-06-23 02:12:34 -07:00
snandini
f821fbaa81 Release 5.2.0.31O
Release 5.2.0.31O

Change-Id: Ie0085c4c8f93799f5a721482e8a8c71366c350ba
CRs-Fixed: 774533
2017-06-22 20:07:47 -07:00
Manjunathappa Prakash
dab74fa881 qcacld-3.0: add ini option to enable orphan Tx packets
Add INI config option to enable orphaning of Tx packets.
Default is to disable orphaning.

Change-Id: Ib855d7ebf56fd3def1a2674091a188e8ecd729f2
CRs-Fixed: 2064079
2017-06-22 16:53:19 -07:00
snandini
44e17bcccd Release 5.2.0.31N
Release 5.2.0.31N

Change-Id: I3b0a6809809fce735d0d1ad5ce06f3f4e0558fa7
CRs-Fixed: 774533
2017-06-22 13:38:00 -07:00
Naveen Rawat
90ecd2cf3c qcacld-3.0: Set NSS for STA as intersection of self and AP
Host send self nss capability in start Vdev and thus firmware
start SMPS frames during DBS even if peer is 1x1 capable.

To fix set NSS for STA as intersection of self and AP.

Change-Id: I38eeade0456f65f27b335f4ee14db0472507feb0
CRs-Fixed: 2056290
2017-06-22 13:37:59 -07:00
Srinivas Girigowda
af0173e171 qcacld-3.0: Fix compile warnings and reduce log levels
Fix compile warnings and reduce log levels.

Change-Id: Ic4ed8c3f46da2ae1514e2bd6792638b62f7f2397
CRs-Fixed: 2024274
2017-06-22 13:37:56 -07:00
Naveen Rawat
c921c7b2cc qcacld-3.0: Add check for set_ft_ies buffer length
Add check for buffer length in function sme_set_ft_ies.

Change-Id: I7adc56e23316c0ceb193a5bdf8c4c0b5f4fbd20a
CRs-Fixed: 2055659
2017-06-22 13:37:55 -07:00
snandini
d6f9ed18a0 Release 5.2.0.31M
Release 5.2.0.31M

Change-Id: I26b394d981cbffb7c0837e24b81db8d081bb0075
CRs-Fixed: 774533
2017-06-22 11:47:53 -07:00
Krishna Kumaar Natarajan
fc8c36309a qcacld-3.0: Fix memory leak due to WMA_SET_LINK_STATE
Fix memory leak due to WMA_SET_LINK_STATE. There are potential memory leak
on lim_set_link_state() failure and vdev target request message cleanup.

Change-Id: I873693f9d51f3702e01aec0d9df5c218bdb70f05
CRs-Fixed: 2051977
2017-06-22 11:47:53 -07:00
Varun Reddy Yeturu
9c1f0dc053 qcacld-3.0: Fix the return type in __wlan_hdd_cfg80211_ll_stats_get
Fix the return data type in __wlan_hdd_cfg80211_ll_stats_get from
unsigned long to int type.

Change-Id: Ia51056adbf09fe6a2cb0d33337b4d9107c4f146d
CRs-Fixed: 2051378
2017-06-22 11:47:52 -07:00
Varun Reddy Yeturu
7d47259cff qcacld-3.0: Change return status from unsigned to signed
Change the return status type as the expected value could
be either a negative or Zero based on failure or success
respectively in the routine wlan_hdd_ll_stats_get()

Change-Id: Ieaff1928f081fe28060b2c40f7e546c51d03a7bc
CRs-Fixed: 2036663
2017-06-22 11:47:50 -07:00
Krishna Kumaar Natarajan
c7e2bb7c83 qcacld-3.0: Add support to read link layer stats via debugfs
Add support to read link layer stats via debugfs. This change set
will issue get_req and store the received stats response is debugfs
entry.

Change-Id: If3af9f0a37283583ff011e35c7275a329a6e175d
CRs-Fixed: 2018087
2017-06-22 11:47:49 -07:00
Krishna Kumaar Natarajan
7bff29b84a qcacld-3.0: Add support to handle updated link layer stats
Add support to parse and store additional link layer stats
included as part of radio stats and interface stats.

Change-Id: Idbefa508f5e79221c3d7598e6b120454b56e2423
CRs-Fixed: 2018087
2017-06-22 11:47:47 -07:00
snandini
753b136ff1 Release 5.2.0.31L
Release 5.2.0.31L

Change-Id: I89621f79151a9c342db8c0117df4483c0aef0584
CRs-Fixed: 774533
2017-06-22 06:35:05 -07:00
Sravan Kumar Kairam
645749571d qcacld-3.0: Deinitialize runtime suspend context before hif close
Currently runtime suspend context deinit is done after hif close which
leads to memory leak. In this change deinitialize the runtime suspend
context before hif close.

Change-Id: Idc99f77b09a25a53e10b4e92391060670bb9bb7e
CRs-Fixed: 2065219
2017-06-22 06:35:04 -07:00
snandini
d7fb2d3ef3 Release 5.2.0.31K
Release 5.2.0.31K

Change-Id: I18776e62aa96357ad48435f55dd47102caffce88
CRs-Fixed: 774533
2017-06-22 05:53:01 -07:00
Sravan Kumar Kairam
71121713be qcacld-3.0: At interface down disconnect IPA WDI pipes
Currently IPA WDI TX and RX pipes are set up when the interface is
up but during interface down there is no disconnect of the IPA WDI
pipes. So again when interface up after interface down IPA driver
returns error that endpoints are already have allocated. As a result
the TX and RX WDI pipe handle values will be zero which is invalid.

In this change disconnect WDI pipes at interface down instead of
during wlan exit or ssr deinit.

Change-Id: I1fb7520467f1b5a6c43bab3b16b002fa0f534d75
CRs-fixed: 2033329
2017-06-22 05:53:00 -07:00
snandini
67141e8589 Release 5.2.0.31J
Release 5.2.0.31J

Change-Id: I55d9fe1f3332732069e13674120bff37f9c762db
CRs-Fixed: 774533
2017-06-22 04:38:32 -07:00
Zhu Jianmin
04392c461d qcacld-3.0: Optimize ping latency
If tx frame is ICMP packet, disable bmps for N seconds to avoid
latency of waking up from bmps.

Change-Id: I91f7748bfca81524637e0e4cc39ace5abf53f7dc
CRs-Fixed: 2044602
2017-06-22 04:38:32 -07:00
snandini
b737b9d717 Release 5.2.0.31I
Release 5.2.0.31I

Change-Id: I2cf9644dbbdd9855e434d1d2605d1fadbf174369
CRs-Fixed: 774533
2017-06-22 03:58:06 -07:00
Selvaraj, Sridhar
0641fabce5 qcacld-3.0: Add INI to configure min rssi for roamable AP in PER Roam
Add INI "gper_min_rssi_threshold_for_roam" to configure the minimum
RSSI required for AP candidate to roam in PER based roaming.

Change-Id: I5549c44d2dffb20e92923d3b62e08b94b7a87c9d
CRs-Fixed: 2048414
2017-06-22 03:58:05 -07:00
snandini
d103458c97 Release 5.2.0.31H
Release 5.2.0.31H

Change-Id: I5b5cff9e931754125673f908914b24080b473da1
CRs-Fixed: 774533
2017-06-22 02:02:33 -07:00
Selvaraj, Sridhar
81ab80dfb1 qcacld-3.0: Keep bssDescription at the end of tSirSmeJoinReq struct
Move bssDescription to the end of tSirSmeJoinReq since bssDescription
has ieFields at its end which would be corrupted if we dont keep it
at the end of bssDescription. This results in not detecting the IE's
properly after assoc response processing, not setting wpa_rsn flag
in PEER_ASSOC_CMD to fw. The subsequent LFR3 roam if happens in fw
fails because of this.

Keep bssDescription at the end of tSirSmeJoinReq struct and other
structs where bssDescription is used.

Change-Id: I7096f7da0a475b0c63078f3c77fba240a41dfb00
CRs-Fixed: 2058223
2017-06-21 22:33:33 -07:00
Selvaraj, Sridhar
99edbc3012 qcacld-3.0: Add OSEN IE to Assoc request frame parser
With I57f6319cecdf10e08047b510321b885c3cd711b5, adding IE's to
assoc request is modified to honour the spec.i.e. additional IE's
from HDD is not directly appended at the end of the association
request frame. parser code checks if the additional IE is defined
for assoc request frame parser and fills it accordingly as per the
IE order spec mandates. OSEN IE is not defined in assoc request
frame parser which leads to not adding the same to assoc request.

Add OSEN IE to assoc request frame parser.

Change-Id: I3b6e10128bfa2c63cc8d98e9727b99c496cb5b2c
CRs-Fixed: 2056201
2017-06-22 10:49:59 +05:30
snandini
8f0fad1653 Release 5.2.0.31G
Release 5.2.0.31G

Change-Id: I9840336c7406ab47bee14e2a5be494399f510ee4
CRs-Fixed: 774533
2017-06-21 21:31:35 -07:00
Ajit Pal Singh
64aff0c8a9 qcacld-3.0: Reject connection if channel not ok for DNBS
Reject connection in csr_roam_connect(), if the BSS entry selected
from the driver cached scan results, has a channel which is not OK for
Do_Not_Break_Stream.

Change-Id: Icf725361382bff7dad80138cfc1b51bafa548afa
CRs-Fixed: 2064380
2017-06-21 21:31:34 -07:00
snandini
4539f81564 Release 5.2.0.31F
Release 5.2.0.31F

Change-Id: I6de6ee0ea73630997ca53e66fd8d7f5ed0d428e3
CRs-Fixed: 774533
2017-06-21 16:06:31 -07:00
Jeff Johnson
79f6a60608 qcacld-3.0: Apply policy to fine time measurement
Currently QCA_WLAN_VENDOR_ATTR_CONFIG_FINE_TIME_MEASUREMENT is not
properly represented in the wlan_hdd_wifi_config_policy table, so add
a proper initializer.

Change-Id: I95ba66337c30cae67b23c9942b9360522ad60df0
CRs-Fixed: 2061978
2017-06-21 16:06:31 -07:00
Yuanyuan Liu
f8fe4bc8c8 qcacld-3.0: Send fw log mode when wlan interface is up
Send fw log mode when wlan interface is up as this info will get
lost when wlan fw is unloaded.

CRs-Fixed: 2057979
Change-Id: Ie609ef15aaa242bdf98f37b6aa04b8fbf7c38be8
2017-06-21 16:06:29 -07:00
snandini
6d338d7aae Release 5.2.0.31E
Release 5.2.0.31E

Change-Id: I314d393ef2cbc082b1b1ab78bb1f68986d7a2c72
CRs-Fixed: 774533
2017-06-21 13:52:15 -07:00
Yun Park
034e9786ef qcacld-3.0: Fix Tx comp ring size to total byte counts for WDI Tx pipe
As IPA requires total byte counts of Tx comp ring for
ipa_connect_wdi_pipe, fix to pass the total byte counts of the ring.

Change-Id: I6150115ad2fdf3635ac7a84f592e4545f6dc934a
CRs-Fixed: 1114930
2017-06-21 13:52:15 -07:00
SaidiReddy Yenuga
6f4763de68 qcacld-3.0: validate NLA attr in wlan_hdd_cfg80211_extscan_set_significant_change
NLA attr QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM
used without validation.

validate NLA attribute.

CRs-Fixed: 2025678
Change-Id: Iee9a8f91cc1b5a6c76c5abaef48c0fa29110062e
2017-06-21 13:52:13 -07:00
snandini
725fd4b449 Release 5.2.0.31D
Release 5.2.0.31D

Change-Id: I363d189f724e47472ce52c3caf93a8d02159eb09
CRs-Fixed: 774533
2017-06-21 11:47:03 -07:00
SaidiReddy Yenuga
a191738196 qcacld-3.0: Validate NLA attr in bssid extscan hotlist API
NLA attribute QCA_WLAN_VENDOR_ATTR_EXTSCAN_AP_THRESHOLD_PARAM
used without validation.

validate NLA attribute.

CRs-Fixed: 2025669
Change-Id: I71f7452f0c7a1947326aefc2348b8f72b48f2895
2017-06-21 11:47:02 -07:00
Naveen Rawat
d85a390de4 qcacld-3.0: Add bound check before writing to channel list
In function rrm_process_beacon_report_req, add bound check before
writing to channel list which is of fixed size.

Change-Id: I3c80974bba84a96f7b85e4ce62bbb01c23b4babf
CRs-Fixed: 2060138
2017-06-21 11:47:01 -07:00
snandini
70ebe590f2 Release 5.2.0.31C
Release 5.2.0.31C

Change-Id: Iea3e5ba059ae9a4b8177c393c72de1a9989509fe
CRs-Fixed: 774533
2017-06-21 08:38:16 -07:00
Ashish Kumar Dhanotiya
ff252beffa qcacld-3.0: Resolve out of bound memory access while processing VSIEs
Currently elem_len is not checked against WPS_OUI_TYPE_SIZE
before it uses the buffer for memcmp, this may cause the buffer
overread.

To fix this add the proper comparision logic before the API uses
the buffer.

Change-Id: I9ba63543a529fb88932500be39045fcc19509863
CRs-Fixed: 2061159
2017-06-21 08:38:16 -07:00
snandini
a9c2a5260a Release 5.2.0.31B
Release 5.2.0.31B

Change-Id: I7a16254be61fc889fb1bf6ce4da06747d098e0f4
CRs-Fixed: 774533
2017-06-21 05:56:14 -07:00
Sandeep Puligilla
dbdf6c93c1 qcacld-3.0: Remove wext support for scan commands
Scan results obtained through wext interface is
incomplete due to limitation on number of bytes
passed through wext interface.
Wext scan command is replaced with NL scan.

Remove code references related to wext scan
command support.

Change-Id: I05ccc13d1b658e62b19a389e6a480707b5c446b9
CRs-Fixed: 2063667
2017-06-21 05:56:14 -07:00
Sandeep Puligilla
994f620e23 qcacld-3.0: Cleanup legacy scan in SAP module
Cleanup legacy scan code in the SAP module.

Change-Id: Ifdb2575727c5c52a2b09c03d8bde43e5fd8fb910
CRs-Fixed: 2063667
2017-06-21 05:56:13 -07:00
snandini
f77860aaa2 Release 5.2.0.31A
Release 5.2.0.31A

Change-Id: Ic1e2c4a4684bae1fad56fe5c9db7b92e0bbf523e
CRs-Fixed: 774533
2017-06-21 03:41:53 -07:00
Krishna Kumaar Natarajan
b9e1d71b3f qcacld-3.0: Use CDP API in sme_open_session
Use CDP API in sme_open_session() instead of ol_txrx API.
Using ol_txrx API will lead to unexpected behavior.

Change-Id: I7012fd1904c730fb1074c262cb096d0cd8c20362
CRs-Fixed: 2064278
2017-06-21 03:41:53 -07:00
snandini
8044597bcd Release 5.2.0.31
Release 5.2.0.31

Change-Id: I3dc598a1f2bece7f17f70c81775f7f8383a01bdb
CRs-Fixed: 774533
2017-06-20 22:32:07 -07:00
Nachiket Kukade
348ede7be3 qcacld-3.0: Inform bss even when start_modules is in progress
While start_modules is in progress, wlan_hdd_validate_context
returns error from inform bss. This results in not forwarding
the frames to the upper layer as well as log flooding.

Don't return error from inform bss if start_modules is in progress.

Change-Id: I7837ef2566eaf3f0b7387e118ff2c46e6b617670
CRs-Fixed: 2037694
2017-06-20 22:32:07 -07:00
snandini
e7b1fbf8ec Release 5.2.0.30Z
Release 5.2.0.30Z

Change-Id: Ia11c320c499ccb54940a93c59205e94d8632e9ce
CRs-Fixed: 774533
2017-06-20 21:34:20 -07:00
hqu
6153382fae qcacld-3.0: Distinguish wlan target defaut config in wlan_hdd_main.h
Use macro CONFIG_HL_SUPPORT to do conditional compilation in
wlan_hdd_main.h, it can distinguish HL target from other target
so that it will use different wlan target defaut config.

Change-Id: Ia33cd336de34c17b73909b671c83e304def3d74b
CRs-Fixed: 2063356
2017-06-20 21:34:20 -07:00
snandini
17e55d78eb Release 5.2.0.30Y
Release 5.2.0.30Y

Change-Id: If92920f759c7bf8d86e313007bf4e8b2377305f0
CRs-Fixed: 774533
2017-06-20 20:11:35 -07:00
Jeff Johnson
a6e61b197b qcacld-3.0: Avoid buffer overread when parsing PNO commands
There are currently three issues which can result in a buffer overread
when processing PNO vendor commands:

1) __wlan_hdd_cfg80211_set_passpoint_list() specifies the wrong policy
   when invoking nla_parse().
2) hdd_extscan_passpoint_fill_network_list() does not specify a policy
   when invoking nla_parse().
3) __wlan_hdd_cfg80211_set_epno_list() specifies a policy but not all
   of the attributes that are parsed are present in the policy.

To prevent buffer overread:
1) Update __wlan_hdd_cfg80211_set_passpoint_list() and
   hdd_extscan_passpoint_fill_network_list() to use the policy
   wlan_hdd_pno_config_policy.
2) Update wlan_hdd_pno_config_policy to contain all the fixed-length
   attributes needed by __wlan_hdd_cfg80211_set_passpoint_list(),
   hdd_extscan_passpoint_fill_network_list(), and
   __wlan_hdd_cfg80211_set_epno_list().

Change-Id: I4a20e77ce87967ae78323b83a2aa9085fed2647f
CRs-Fixed: 2054770
2017-06-20 20:11:35 -07:00
snandini
8c251e148e Release 5.2.0.30X
Release 5.2.0.30X

Change-Id: I9e1d5527cfe84d96e722de6487a7d043f4a541e7
CRs-Fixed: 774533
2017-06-20 19:36:18 -07:00
Nachiket Kukade
d45ab8c7c3 qcacld-3.0: Release spinlock before returning from error
While freeing ROC request nodes from the linked list a spinlock is
acquired. But it is not released if the API to remove node returns
failure. This will end up in a deadlock.

Release spinlock before returning from error.

Change-Id: I30281cc358b4827e59325554859c3dcffe6292b0
CRs-Fixed: 2042713
2017-06-20 19:36:18 -07:00
wadesong
1885d2c685 qcacld-3.0: Add ipa_uc_rx_ring_elem_t for 32-bit platform
ipa_uc_rx_ring_elem_t structure is platform specific and current
definition cannot be used on 32-bit ARM platform where IPA 3.5
is attached. Add IPA 3.5 and 32-bit ARM compatible structure to
avoid IPA crash when data traffic is running

Change-Id: Ia5c141c9405675a64f59ba4c09f1ffd911158c9b
CRs-Fixed: 2046905
2017-06-20 19:36:16 -07:00
snandini
28fbb56b5d Release 5.2.0.30W
Release 5.2.0.30W

Change-Id: I5647eba9ceffcccc2cfb0150bca92f3ff33ac712
CRs-Fixed: 774533
2017-06-20 17:52:13 -07:00
Kapil Gupta
63e7528680 qcacld-3.0: Correct vendor attribute for external ACS
Add changes to correct vendor attribute to support external
ACS as defined in qca-vendor-copy.h

Change-Id: Ia09638f59aeea4d87bbd6d4f9ab03210a213a132
CRs-Fixed: 2049157
2017-06-20 17:52:13 -07:00
snandini
321ceb6f1f Release 5.2.0.30V
Release 5.2.0.30V

Change-Id: Ic1f9d47c44de8a8a51c48af0ce39ca6e977d8592
CRs-Fixed: 774533
2017-06-20 16:17:39 -07:00
Abhishek Singh
533c9da880 qcacld-3.0: Wait for roam to get stopped during disconnect
In case roaming was in progress when hdd_disconnect was called, avoid
defer disconnect as that will call hdd api in mcthread which waits on
event for about 5 seconds thus blocking everything. Also defer disconnect
makes supplicant and driver state go out of sync. Rather wait in hdd
for roaming to complete and then issue disconnect keeping state simple
and clean

Change-Id: I1b971226187892f32eb493047c13353bb0d1c867
CRs-Fixed: 2042394
2017-06-20 16:17:39 -07:00
snandini
45047763df Release 5.2.0.30U
Release 5.2.0.30U

Change-Id: I6f470e32f20991899136cfd2f76ddeceed3197fc
CRs-Fixed: 774533
2017-06-20 14:06:39 -07:00
bings
bdcd4a2f94 qcacld-3.0: Fix cfg80211_get_bss calling when IEEE80211_PRIVACY defined
When IEEE80211_PRIVACY is defined, cfg80211_get_bss should be called with
IEEE80211_BSS_TYPE_ESS as ieee80211_bss_type and IEEE80211_PRIVACY_ANY as
ieee80211_privacy

Change-Id: I28154ab45a7143f485824d6884c630315d47d0c7
CRs-Fixed: 2063345
2017-06-20 14:06:39 -07:00
snandini
8b7b764315 Release 5.2.0.30T
Release 5.2.0.30T

Change-Id: I6561f9be97e699594967d1d4790923dffb92f69e
CRs-Fixed: 774533
2017-06-20 05:51:16 -07:00
Ashish Kumar Dhanotiya
470af29603 qcacld-3.0: Add ini support to disable scan in connected state
Currently there is no ini parameter to disable the scanning if
the device is already connected.

Add ini parameter to support this feature.

Change-Id: I0f57be99ea335823c30a058d166b126d787e4461
CRs-Fixed: 2054521
2017-06-20 05:51:16 -07:00
snandini
937e8e6864 Release 5.2.0.30S
Release 5.2.0.30S

Change-Id: Idb5cac4d05f3e6e08a734f83c97b1dcac02e7266
CRs-Fixed: 774533
2017-06-20 05:05:59 -07:00
Abhishek Singh
154637ac11 qcacld-3.0: Post Set key with high priority to lim
If pe queue contain management frame and set key cmd is sent as low
priority the set key may timeout.

Thus to fix this post set key with high priority to lim,
so that it can be processed in priority.

Change-Id: I31e346da6662ab56f268f94260ed0f169b8f182b
CRs-Fixed: 2056378
2017-06-20 05:05:59 -07:00
snandini
8074370d08 Release 5.2.0.30R
Release 5.2.0.30R

Change-Id: I9a3ae9ca237c0e9d25f264cb5b648b5600b26dd3
CRs-Fixed: 774533
2017-06-20 04:11:09 -07:00
Abhishek Singh
af639b45bd qcacld-3.0: Set proper sec channel offset if CSA Wide BW IE is present
If CSA Wide BW IE is present the sec channel offset is always set to
csa_params->sec_chan_offset which is always 0 and thus for next CSA the
BW will always be set to 20 MHz.

To fix this set proper sec channel offset if CSA Wide BW IE is present.

Change-Id: I813b04683cbce3f4f933562c23511de92ce4bcef
CRs-Fixed: 2062475
2017-06-20 04:11:09 -07:00
snandini
ec69dbfc59 Release 5.2.0.30Q
Release 5.2.0.30Q

Change-Id: I9d5ed888fcf098571c14e28256705cc6c63fe61e
CRs-Fixed: 774533
2017-06-20 03:30:37 -07:00
Naveen Rawat
5c35ae4ee4 qcacld-3.0: Send ROAM_SCAN_OFFLOAD_STOP to FW directly from HDD
In case user space disconnects, directly send ROAM_SCAN_OFFLOAD_STOP to FW
to avoid delays in queues.

Change-Id: Ia6e458617818da5ad2e956cd30a203652949db21
CRs-Fixed: 2035160
2017-06-20 03:30:37 -07:00
snandini
f7b7d3a779 Release 5.2.0.30P
Release 5.2.0.30P

Change-Id: Ifcc2b5cc7bb9e1c5e757cbf8980ddc490d330e29
CRs-Fixed: 774533
2017-06-20 01:13:11 -07:00
Sandeep Puligilla
2a206c568a qcacld-3.0: Add NULL IE check
Beacons with NULL IE's are triggering crash
in framework.

Add condition check in WMA to drop beacons
with NULL IE.

Change-Id: Ie28cd513713668334a77a2e8f5f345d79f68fcb5
CRs-Fixed: 2047525
2017-06-20 01:13:11 -07:00
Sandeep Puligilla
4a58f7f2a5 qcacld-3.0: Drop the beacons from NAN devices
Beacons from NAN devices triggering crash in framework.

Don't update the NL with the NAN device beacons.
Drop NAN device beacons in WMA before processed by PE.

Change-Id: I754591459d7a02848454d506b85847b1993aac53
CRs-Fixed: 2047525
2017-06-20 01:13:09 -07:00
snandini
4b7e04558a Release 5.2.0.30O
Release 5.2.0.30O

Change-Id: Ib322c49d16b18406b9db029296b2c1dc94cb3a95
CRs-Fixed: 774533
2017-06-19 22:30:31 -07:00
Kiran Kumar Lokere
7855ee8342 qcacld-3.0: Remove QDF assert for non critical errors
Remove the QDF asserts for qos related errors

Change-Id: I61b99f291b305c5905d544f0062a12734a5ea368
CRs-Fixed: 2054327
2017-06-19 22:30:31 -07:00
snandini
cb771c4a16 Release 5.2.0.30N
Release 5.2.0.30N

Change-Id: I9dca295e42a4adf881228fa1acf7705a576df704
CRs-Fixed: 774533
2017-06-19 20:10:45 -07:00
Kiran Kumar Lokere
5798bfac82 qcacld-3.0: Send beacon template after the vdev restart response
Vdev restart cmd is sent in vdev stop response handler during the
hidden ssid restart process. Lim sends beacon template cmd after it
sends the hidden ssid restart cmd so beacon template is sent to FW
after the vdev stop cmd and before the vdev restart cmd as vdev
restart is sent during vdev stop response handler.

Send the beacon template after vdev restart is successful during
the hidden ssid restart process.

Change-Id: Ia75bde4ce8c564133e2b2a7bd4011089e52808e7
CRs-Fixed: 2039224
2017-06-19 20:10:45 -07:00
Kiran Kumar Lokere
ef93ee97d7 qcacld-3.0: Remove qdf assert for non critical errors
Remove qdf assert for non critical errors in qos.

Change-Id: I20319bac0bdd268d2d46ce7859fd41e8fdc8f5f5
CRs-Fixed: 2044770
2017-06-19 20:10:44 -07:00
snandini
e5ef9d4029 Release 5.2.0.30M
Release 5.2.0.30M

Change-Id: Icc8169c905bff8946963b3001e2c241242fa850f
CRs-Fixed: 774533
2017-06-19 19:32:50 -07:00
Tushnim Bhattacharyya
c827df30e3 qcacld-3.0: Release mutex before returning
Release remain_on_chan_ctx_lock mutex before returning to avoid thread
deadlock situation.
Change-Id: If5fb823ac2c042d34693abb8928dbc2159449a6e
CRs-Fixed: 2056611
2017-06-19 19:32:49 -07:00
Kiran Kumar Lokere
d0fad467ef qcacld-3.0: Process CSA IE only if CSA offload is not enabled
If CSA offload is enabled, FW send the CSA offload event for
the channel switch, so ignore the CSA IE check in beacon and
probe response frame processing.

Change-Id: I3f0d204317a4d26dc503c350307f4c144bf8672d
CRs-Fixed: 2060145
2017-06-19 19:32:47 -07:00
snandini
9737284a5e Release 5.2.0.30L
Release 5.2.0.30L

Change-Id: Iaaf24902c684a1cd826c032bdd8ad39880979097
CRs-Fixed: 774533
2017-06-19 15:40:33 -07:00
Krunal Soni
cebcc29de5 qcacld-3.0: Keep wake lock while HW mode is getting changed
Host should keep the wake lock from the time it sends set hw mode request to FW
till it receives the set hw mode response. This will avoid any fatal
crash condition.

Change-Id: I6ab1020811100be1adbb70b90a06285dc8bed88c
CRs-Fixed: 2060010
2017-06-19 15:40:32 -07:00
snandini
763d45b866 Release 5.2.0.30K
Release 5.2.0.30K

Change-Id: Ieffbec6908e480b700bc80fadaad28b1210daef5
CRs-Fixed: 774533
2017-06-19 12:43:47 -07:00
Manjunathappa Prakash
70ea728fe9 qcacld-3.0: iHelium: Increase RX_HTT_HDR_STATUS_LEN from 64 to 256bytes
Increase packet header bytes to 256, HL1.0 target offload features on
iHelium FW requires header bytes to be increased from 64 to 256bytes.
And round up the HTT_RX_BUF_SIZE to CACHE_LINE_SZ.

Change-Id: Iec45f5747956d0797411f76c2fec1368a13e7d6d
CRs-Fixed: 1039073
2017-06-19 12:43:47 -07:00
Nachiket Kukade
223ad8c2ce qcacld-3.0: Free the memory in ROC request queue during remove
During p2p find one or more remain on channel requests are queued
for execution. Memory leak is observed if module exit happens before
roc cancel is called.

Free the memory allocated in the ROC request queue nodes during exit.

Change-Id: I10d77266652f497f556a0a26b617856d81e982a7
CRs-fixed: 2032162
2017-06-19 12:43:43 -07:00
Dustin Brown
209124664c qcacld-3.0: Free psoc when hdd_wlan_startup fails
A psoc object is being created in hdd_wlan_startup, but not freed in
case of an error. Free any allocated psoc object in hdd_wlan_startup
as part of the existing error handling.

Change-Id: I6292188c4b92198ea157f6e2f1519b89fc991ad5
CRs-Fixed: 2059166
2017-06-19 12:43:41 -07:00
Rajeev Kumar
1c40f07442 qcacld-3.0: Add audit comment in cfg80211_conditional_chan_switch
Add audit comment in cfg80211_conditional_chan_switch to express the intent
why policy table is not used in this API.

Change-Id: Ia2e7dd4d92283794ce389d6c202d4a69338d89bd
CRs-Fixed: 2056564
2017-06-19 12:43:40 -07:00
snandini
0cb67ed674 Release 5.2.0.30J
Release 5.2.0.30J

Change-Id: I8dbfc2b7b6bd8ece9e3ef7670ceb84cba7775acd
CRs-Fixed: 774533
2017-06-19 00:06:57 -07:00
Ashish Kumar Dhanotiya
cc770eb720 qcacld-3.0: Validate vendor command do_acs
Currently attributes are not validated in __wlan_hdd_cfg80211_do_acs,
this can lead to a buffer overread.

To resolve this issue, Define an nla_policy and validate the
attributes.

CRs-Fixed: 2054685
Change-Id: Ic1bd5abbef09407f925625b709f10cf9cb7c3d7f
2017-06-19 00:06:56 -07:00
snandini
56f7b1d386 Release 5.2.0.30I
Release 5.2.0.30I

Change-Id: I60acc5fa627a2cd2735757df216e75b74f04e2ed
CRs-Fixed: 774533
2017-06-18 23:30:19 -07:00
Naveen Rawat
9ff3e249af qcacld-3.0: Skip an IE if found more its max times in a frame
Check if a IE has been encountered more than max possible for that IE
while parsing a frame.

Change-Id: I1054c7df18780469849be55fc4343f09ac502a49
CRs-Fixed: 2058261
2017-06-18 23:30:18 -07:00
snandini
8565edc294 Release 5.2.0.30H
Release 5.2.0.30H

Change-Id: Ic7d6a3cfb6f116a88d25ea496963aa418b368097
CRs-Fixed: 774533
2017-06-18 17:36:58 -07:00
Govind Singh
4ff22580dc qcacld-3.0: Use converged beacon template WMI cmd
WMI beacon template wmi cmd is converged in WMI layer.
Use converged beacon template WMI cmd and legacy cmd
is removed.

Change-Id: Ia76ec059489d9faa7b5420a8eb88c89ffe0807dc
CRs-Fixed: 2038284
2017-06-18 17:36:57 -07:00
snandini
fadeb650ef Release 5.2.0.30G
Release 5.2.0.30G

Change-Id: I41d21361eca2cd51d2dba0c235224a1a8a3188d5
CRs-Fixed: 774533
2017-06-18 16:55:32 -07:00
Kabilan Kannan
0e9b029973 qcacld-3.0: Reduce log level in TDLS functions
Some of the TDLS functions have info level logs and it
causes kernel log buffer overeflow and triggers
WD bite.
Reduce the log level from info to debug.

Change-Id: I2878a617f4e06eea6c3aaafd218e0cbbdd999070
CRs-Fixed: 2043718
2017-06-18 16:55:32 -07:00
snandini
0442e53174 Release 5.2.0.30F
Release 5.2.0.30F

Change-Id: I32c56f526943728d6e62064f6b0b1ca4815227a8
CRs-Fixed: 774533
2017-06-18 16:11:05 -07:00
Deepak Dhamdhere
d42ab7c3dc qcacld-3.0: Ignore peer_unmap_timer_handler during recovery
If the driver recovery is in progress, unmap events may not come
from firmware. Ignore the peer_unmap timeout in such case.

CRs-Fixed: 2033452
Change-Id: I284c57530a477953247ad325dfaddff72767aecf
2017-06-18 16:11:04 -07:00
Deepak Dhamdhere
2b283c6543 qcacld-3.0: Use qdf_timer_sync_cancel to stop peer_unmap_timer
Peer may get deleted between the time peer_unmap_timer fires and
the handler gets executed in mc thread context, causing memory
access error. Use qdf_timer_sync_cancel() to wait for the handler
to finish its job before freeing the peer object.

CRs-Fixed: 2026393
Change-Id: Ie60b5c300be529d529f7e836adc0e3be917fe2e8
2017-06-18 16:11:03 -07:00
Deepak Dhamdhere
fe55836608 qcacld-3.0: Initialize peer_unmap_timer during peer attach
Initialize peer_unmap_timer during peer attach instead of at the
time of peer detach. Then ol_txrx_unref_delete can destroy
the timer without peer detach getting called earlier.

CRs-Fixed: 2014183
Change-Id: Icebec27d5562350871a89b5cf71ae99f096feee8
2017-06-18 16:11:01 -07:00
Deepak Dhamdhere
e1c2e21a3d qcacld-3.0: Add peer unmap timeout handler
Add a timeout handler that fires off 6000 ms after peer detach
operation is initiated. Used for debugging the scenario of missing
peer unmap events after deleting a STA type peer.

CRs-Fixed: 1109867
Change-Id: Iad18f374ba3c1458c5214befd1d5c1517a7bdedf
2017-06-18 16:10:59 -07:00
snandini
058d514b1d Release 5.2.0.30E
Release 5.2.0.30E

Change-Id: I1c608166a9270d9afd3c70687c167f3769205a8b
CRs-Fixed: 774533
2017-06-18 15:27:52 -07:00
Rajeev Kumar
ef3a336f3f qcacld-3.0: Fix rx wake lock getting acquired for bcast/mcast frames
RX wake lock is only required for:
1) Unicast data packets
2) Local ARP data packet

Fix logic in hdd_is_arp_local() such that RX wake lock is only
acquired for above 2 data packet types.

Change-Id: I38899ed19f3481396663ba316abab0965e2cec56
CRs-Fixed: 2044288
2017-06-18 15:27:51 -07:00
snandini
7aa33ca833 Release 5.2.0.30D
Release 5.2.0.30D

Change-Id: I52dc38d9efd9a80448bb1282a1116256cb3ab140
CRs-Fixed: 774533
2017-06-18 14:36:59 -07:00
Rajeev Kumar
67f5b87203 qcacld-3.0: Fix buffer overread & overflow in P2P LO handler
Currently in __wlan_hdd_cfg80211_p2p_lo_start() there are multiple
issues with the incoming cfg80211 vendor command handling:
1) A policy is not supplied when invoking nla_parse() which prevents
   basic sanity of the incoming attribute stream.
2) The length of attribute QCA_WLAN_VENDOR_ATTR_P2P_LISTEN_OFFLOAD_DEVICE_TYPES
   is not properly validated.
3) The length of attribute QCA_WLAN_VENDOR_ATTR_P2P_LISTEN_OFFLOAD_VENDOR_IE
   is not properly validated.

To address these issues:
1) Create an appropriate nla_policy and specify this policy when
   invoking nla_parse().
2) Validate the length of QCA_WLAN_VENDOR_ATTR_P2P_LISTEN_OFFLOAD_DEVICE_TYPES
   properly to prevent potential over read.
3) Validate the length of QCA_WLAN_VENDOR_ATTR_P2P_LISTEN_OFFLOAD_VENDOR_IE
   properly to prevent potential over read.

Change-Id: I0a76dad8cccc6158f7ef3da293a6462acd839bfb
CRs-Fixed: 2054755
2017-06-18 14:36:59 -07:00
Krunal Soni
90ba954419 qcacld-3.0: Fix sub type of association response
Current driver sends association response when it receives reassociation
request which creates the IoT issue.

Fix the sub type.

Change-Id: Id86966794cf45e4596473fb68e9b400489bc7041
CRs-Fixed: 2014103
2017-06-18 14:36:57 -07:00
snandini
3c15227de4 Release 5.2.0.30C
Release 5.2.0.30C

Change-Id: I129e3f7201e3ece40fdd180a081166192d554df9
CRs-Fixed: 774533
2017-06-16 09:49:26 -07:00
Dustin Brown
0f8dc3d7b2 qcacld-3.0: Use refactored unit-test suspend APIs
The HIF portion of Unit-Test suspend has been refactored. Update HDD to
use the updated Unit-Test Suspend APIs.

Change-Id: Id10f6f5811e836844980b929f2747b1238bcf95d
CRs-Fixed: 2055332
2017-06-16 09:49:26 -07:00
snandini
cbd60d91a6 Release 5.2.0.30B
Release 5.2.0.30B

Change-Id: Ie0875e6d22045c18882c1d23ff964458af49fff6
CRs-Fixed: 774533
2017-06-16 05:26:11 -07:00
Arif Hussain
8cc9d8407b qcacld-3.0: Fix sap context memory leak
Make sure to decrement sap context ref count in wlansap_roam_callback
for failure case also, else this will prevent freeing sap context memory
in during driver unload in wlansap_close().

Change-Id: I07bd8a254196e2fc38018b738b20a9f6746d6b92
CRs-Fixed: 2012433
2017-06-16 05:26:11 -07:00
snandini
7d6d36059e Release 5.2.0.30A
Release 5.2.0.30A

Change-Id: I900b23eaed25bca0b4fe32a429fc6c374b82198f
CRs-Fixed: 774533
2017-06-16 03:28:15 -07:00
Naveen Rawat
6417668a2e qcacld-3.0: Always support MCS 0-7 for HT connection
In case HT peer rates are malformed and MCS 0-7 are not supported
set them forcefuly because as per spec, a 11n connection must support
MCS 0-7

Change-Id: If599c1478b9d3231da589576ef5ba9236b58ce4c
CRs-Fixed: 2059506
2017-06-16 03:28:14 -07:00
snandini
43710452d0 Release 5.2.0.30
Release 5.2.0.30

Change-Id: I829d0013cb562ffdbb18a85a3ea4f8fe2779e50c
CRs-Fixed: 774533
2017-06-16 00:41:35 -07:00
Ashish Kumar Dhanotiya
bfe639fc93 qcacld-3.0: Buffer overflow while parsing setrmcrate command
There is a buffer overflow while using sscanf.
To resolve this, use sscanf according to buffer length.

Change-Id: Ida2444b42ef6b73ea6f55735166df941158a6e50
CRs-Fixed: 2059779
2017-06-16 00:41:34 -07:00
snandini
6b4e49fe1f Release 5.2.0.29Z
Release 5.2.0.29Z

Change-Id: Iaf055f25044807bf596f4a0ebe7a2b7a864aeb77
CRs-Fixed: 774533
2017-06-15 17:18:50 -07:00
Arif Hussain
7631afa88d qcacld-3.0: Refactor code use to search vdev using MAC address
In LIM, move functionality to find session for a given MAC address in
separate function so that this code can be reused by other functions
if needed.

In HDD, remove logic added to find adaptor for a given MAC, instead use
existing function hdd_get_adapter_by_macaddr.

Change-Id: I989f09ffcbee3a717c22c267a01dafd1b404da64
CRs-Fixed: 2004223
2017-06-15 17:18:49 -07:00
snandini
45912ad723 Release 5.2.0.29Y
Release 5.2.0.29Y

Change-Id: Ia65e184378f89ebaa3b6ee5533de277b546b075f
CRs-Fixed: 774533
2017-06-15 12:56:03 -07:00
Kiran Kumar Lokere
26d0548b73 qcacld-3.0: Disable MU beamformee in master mode operation
Do not advertise MU beamformee capability in SAP, P2P GO and IBSS
operating modes.

Change-Id: Iee6ecaaddef374c9954c5144107bcce9da48c001
CRs-Fixed: 2048653
2017-06-15 12:56:03 -07:00
snandini
f44b062804 Release 5.2.0.29X
Release 5.2.0.29X

Change-Id: Icc6f5c45f68c68342ce634d5e8a1c463968ae6e9
CRs-Fixed: 774533
2017-06-14 23:21:37 -07:00
Nitesh Shah
e410b80979 qcacld-3.0: Release mutex properly when TDLS peer not found
Mutex is not released properly in the loop when the TDLS
peer is not found in the function wlan_hdd_tdls_disable_
offchan_and_teardown_links(), that can cause crash.

This change releases the mutex properly in the function
wlan_hdd_tdls_disable_offchan_and_teardown_links() when
TDLS peer is not found, and going for the next loop.

Change-Id: Ia226c71e91e0e5995dd86557e0135508f32d8bef
CRs-Fixed: 2058784
2017-06-14 23:21:36 -07:00
snandini
28b297c547 Release 5.2.0.29W
Release 5.2.0.29W

Change-Id: I4704dcd03af3f18f1d528c98b2d3d6699b5fb7e0
CRs-Fixed: 774533
2017-06-14 19:26:43 -07:00
Manikandan Mohan
3dad1a4869 qcacld-3.0: Fix mem leak in SAP SSR
Fix a memory leak observed if SAP restart fails after SSR.

Change-Id: I868b20972e4b78b6f6c89a26fc41ad10161c239c
CRs-fixed: 2060614
2017-06-14 19:26:43 -07:00
Dustin Brown
ab482ac2b4 qcacld-3.0: Print build timestamp with driver version
As part of driver init, the version string gets printed. To help in
debugging, also print a timestamp from when the driver was compiled.

Change-Id: Icf064af6a0d84434d239b54603092bf2276df596
CRs-Fixed: 2059303
2017-06-14 19:26:41 -07:00
snandini
f2600fb70b Release 5.2.0.29V
Release 5.2.0.29V

Change-Id: I686cf60817891811990c089ab120f37e2d644881
CRs-Fixed: 774533
2017-06-14 15:53:46 -07:00
Sandeep Puligilla
f587adff92 qcacld-3.0: Serialize IPA stats command in low priority queue
Currently IPA stats command request gets scheduled at every
100ms and posts message to WMA queue which can cause MC
thread to prioritize these request messages over other
messages in pe queue. This can cause delayed processing of
association related messages in pe queue in noisy environement.

To avoid this serialize IPA stats cmd to lower priority SME queue.

Change-Id: I1f8257b869dacd65a61e52e34f001ee24c108c4a
CRs-Fixed: 2040579
2017-06-14 15:53:45 -07:00
Dustin Brown
ceed67eebf qcacld-3.0: Hold wake lock for connection attempt
Hold a short wake lock when a connection attempt is made to help ensure
the device does not power collapse in the middle.

Change-Id: Ia9e20df5481340224fa4c272b58152eec27790a9
CRs-Fixed: 2053126
2017-06-14 15:53:44 -07:00
snandini
3c5b58c412 Release 5.2.0.29U
Release 5.2.0.29U

Change-Id: I3f451281f47587a540f51ec5dc1b00bef03e50ad
CRs-Fixed: 774533
2017-06-14 13:01:19 -07:00
Dustin Brown
498b11a4a1 qcacld-3.0: Specify policy for txpower_scale_decr_db
__wlan_hdd_cfg80211_txpower_scale_decr_db() calls nla_parse without
specifying a policy. Specify an nla policy with the expected attribute
information when calling nla_parse in
__wlan_hdd_cfg80211_txpower_scale_decr_db().

Change-Id: I219190726ccb19cb8849177888bca859da1c76db
CRs-Fixed: 2054752
2017-06-14 13:01:18 -07:00
snandini
f2dbc2e5eb Release 5.2.0.29T
Release 5.2.0.29T

Change-Id: Ic0488423bc9d5f3a33048e0f910a99becfa8a82d
CRs-Fixed: 774533
2017-06-14 11:56:37 -07:00
lifeng
e9245fcedb qcacld-3.0: Update the supported rates when channel switching
qcacld-2.0 to qcacld-3.0 propagation

Fix the regression issue introduced by
commit 329c3375edfcf5c434ed57fdec5dd27229611d8a.
The supported rates are populated by hostapd per the pre-defined
hw_mode in conf file.
Obviously the supported rates won't update althought cross-band
switching from 2G to 5G, then the sap will reject any sta who
intends to join the bss.

The Fix now is to populate the intersection of rates generated by
hostapd and driver itself.

Change-Id: Ica336398865a8b5e16297e4555dbb7de5e79567e
CRs-fixed: 1109564
2017-06-14 11:56:36 -07:00
snandini
be6f24ed87 Release 5.2.0.29S
Release 5.2.0.29S

Change-Id: Ifb8b1c4467b9e7fc5cc6bb0a3a8f955e92e19c04
CRs-Fixed: 774533
2017-06-14 08:25:25 -07:00
Yun Park
641304c513 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_txrx_internal.h
Fix Datapath kernel checkpatch warnings in ol_txrx_internal.h

Change-Id: I4be2823e6179322bcbf26f1c2f1120a238434c06
CRs-Fixed: 2032874
2017-06-14 08:25:24 -07:00
Yun Park
4a2be57d53 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_txrx_types.h
Fix Datapath kernel checkpatch warnings in ol_txrx_types.h

Change-Id: Ia18c899500f5162ad4a6e283db161350d5faea16
CRs-Fixed: 2032874
2017-06-14 08:25:23 -07:00
Yun Park
eaea863f3f qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_txrx.c
Fix Datapath kernel checkpatch warnings in ol_txrx.c

Change-Id: I9a11c8a61524e91d9df6357cf0994b261dcc3d04
CRs-Fixed: 2032874
2017-06-14 08:25:21 -07:00
Yun Park
ba9b617e9c qcacld-3.0: Fix Datapath kernel checkpatch warnings in ipv6_defs.h
Fix Datapath kernel checkpatch warnings in ipv6_defs.h

Change-Id: Id64667f9b7d80104187f715a8ede6095ee69ef88
CRs-Fixed: 2032874
2017-06-14 08:25:19 -07:00
Yun Park
0b3741c555 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_rx_fwd.h
Fix Datapath kernel checkpatch warnings in ol_rx_fwd.h

Change-Id: I50e2a892ae70143a393bdefe409d9bfbc2d48e79
CRs-Fixed: 2032874
2017-06-14 08:25:17 -07:00
Yun Park
f9677156d7 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_tx_send.c
Fix Datapath kernel checkpatch warnings in ol_tx_send.c

Change-Id: I94b3e093eac8d51524a689151028ef296cc4da82
CRs-Fixed: 2032874
2017-06-14 08:25:15 -07:00
Yun Park
34adb051ad qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_rx.h
Fix Datapath kernel checkpatch warnings in ol_rx.h

Change-Id: I3a83d4ed95a004fee57af674c385c8eb2d519d23
CRs-Fixed: 2032874
2017-06-14 08:25:13 -07:00
Yun Park
a13ef65af1 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_rx_reorder.h
Fix Datapath kernel checkpatch warnings in ol_rx_reorder.h

Change-Id: I0a7b214a2a81c3f8d4db7efa8c47d8ab97878db6
CRs-Fixed: 2032874
2017-06-14 08:25:12 -07:00
Yun Park
02355f4da8 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_rx.c
Fix Datapath kernel checkpatch warnings in ol_rx.c

Change-Id: I75477a2ed36394fd0d1cbdc6b6cbbd96e044a9b3
CRs-Fixed: 2032874
2017-06-14 08:25:10 -07:00
Yun Park
512f3a145d qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_txrx_peer_find.c
Fix Datapath kernel checkpatch warnings in ol_txrx_peer_find.c

Change-Id: Ie0416390bfd4c1f6a50c70747a9fc5b87daa7959
CRs-Fixed: 2032874
2017-06-14 08:25:09 -07:00
Yun Park
863014df56 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_txrx.h
Fix Datapath kernel checkpatch warnings in ol_txrx.h

Change-Id: I8123dc787b9e26882fbe01aada3b9dcc698d86ed
CRs-Fixed: 2032874
2017-06-14 08:25:06 -07:00
Yun Park
a7217756a3 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_txrx_peer_find.h
Fix Datapath kernel checkpatch warnings in ol_txrx_peer_find.h

Change-Id: Ia21408c855a8cc729a9075b36eed4ce753f8cece
CRs-Fixed: 2032874
2017-06-14 08:25:05 -07:00
Yun Park
28e92985a9 qcacld-3.0: Fix Datapath kernel checkpatch warnings in wdi_event_api.h
Fix Datapath kernel checkpatch warnings in wdi_event_api.h

Change-Id: Iec1119b62d0aa9efbc55121b84afc7e93ad98ee1
CRs-Fixed: 2032874
2017-06-14 08:25:03 -07:00
Yun Park
577335799a qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_tx_queue.c
Fix Datapath kernel checkpatch warnings in ol_tx_queue.c

Change-Id: Icc186d67922d810b84ca11049a6282ad952c5da8
CRs-Fixed: 2032874
2017-06-14 08:25:02 -07:00
Yun Park
1239b22f93 qcacld-3.0: Fix Datapath kernel checkpatch warnings in txrx.h
Fix Datapath kernel checkpatch warnings in txrx.h

Change-Id: Ia58e1014120fcdf314927d0d3680ca27d16621f3
CRs-Fixed: 2032874
2017-06-14 08:25:00 -07:00
Yun Park
196641d7b9 qcacld-3.0: Fix Datapath kernel checkpatch warnings in wdi_event.h
Fix Datapath kernel checkpatch warnings in wdi_event.h

Change-Id: I15295af3c6711b5b477739ec5741ba2b4e36b6d3
CRs-Fixed: 2032874
2017-06-14 08:24:59 -07:00
Yun Park
cb0bb18ba3 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_tx_desc.h
Fix Datapath kernel checkpatch warnings in ol_tx_desc.h

Change-Id: I00647231116da840dd3e49e54fee6c1c5826982d
CRs-Fixed: 2032874
2017-06-14 08:24:57 -07:00
Yun Park
d79331a15f qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_tx_queue.h
Fix Datapath kernel checkpatch warnings in ol_tx_queue.h

Change-Id: I2b44744e7021b877554dd08d9f5a01e611ff457d
CRs-Fixed: 2032874
2017-06-14 08:24:55 -07:00
Yun Park
89f62d6c3a qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_txrx_encap.c
Fix Datapath kernel checkpatch warnings in ol_txrx_encap.c

Change-Id: Ib1af9f38ab4fb13fa11b1fcc8c21d1b6bb8a614d
CRs-Fixed: 2032874
2017-06-14 08:24:54 -07:00
Yun Park
b539ea38bf qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_rx_pn.c
Fix Datapath kernel checkpatch warnings in ol_rx_pn.c

Change-Id: I68d52e0dfcf2521b34e4a396528b9bfb8a0058fb
CRs-Fixed: 2032874
2017-06-14 08:24:52 -07:00
Yun Park
63018127e4 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_rx_defrag.c
Fix Datapath kernel checkpatch warnings in ol_rx_defrag.c

Change-Id: Iacf91e53cedf7908daa4d86525acc4d4f80969b0
CRs-Fixed: 2032874
2017-06-14 08:24:51 -07:00
Yun Park
5cc476218b qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_rx_defrag.h
Fix Datapath kernel checkpatch warnings in ol_rx_defrag.h.

Change-Id: Iea74ad576793b34fbf8bbdbafa9b2f831b1f108d
CRs-Fixed: 2032874
2017-06-14 08:24:48 -07:00
Yun Park
07be5536d0 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_rx_reorder_timeout.h
Fix Datapath kernel checkpatch warnings in ol_rx_reorder_timeout.h

Change-Id: I878b51abc716768e9c52ab58b4e0387c6544f368
CRs-Fixed: 2032874
2017-06-14 08:24:47 -07:00
Yun Park
42e0bef5fe qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_rx_reorder_timeout.c
Fix Datapath kernel checkpatch warnings in ol_rx_reorder_timeout.c

Change-Id: Ia8fc0a14b34876eb648d1c22a0e96e733cc317c4
CRs-Fixed: 2032874
2017-06-14 08:24:45 -07:00
Yun Park
3453282718 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_tx.c
Fix Datapath kernel checkpatch warnings in ol_tx.c

Change-Id: I538bf59ab717dfac6cd5d88273dc938b1f76b6d2
CRs-Fixed: 2032874
2017-06-14 08:24:44 -07:00
Yun Park
4afce45d11 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_tx_desc.c
Fix Datapath kernel checkpatch warnings in ol_tx_desc.c

Change-Id: Iec012ad960057d27ccf063ff35607fecefe74cc3
CRs-Fixed: 2032874
2017-06-14 08:24:42 -07:00
Yun Park
d541465b3b qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_tx_send.h
Fix Datapath kernel checkpatch warnings in ol_tx_send.h

Change-Id: I4a4abea0913eaba7bab8b50faa6330f930f1981a
CRs-Fixed: 2032874
2017-06-14 08:24:41 -07:00
Yun Park
57b82634ee qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_tx_sched.h
Fix Datapath kernel checkpatch warnings in ol_tx_sched.h

Change-Id: I123d2197294be6ae19174a4a40d02dd8047091e1
CRs-Fixed: 2032874
2017-06-14 08:24:39 -07:00
Yun Park
d1b045edcf qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_cfg.c
Fix Datapath kernel checkpatch warnings in ol_cfg.c

Change-Id: I42f9d34fb38ec1f990988d434965673401236ef4
CRs-Fixed: 2032874
2017-06-14 08:24:38 -07:00
Yun Park
1edc871c44 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_rx_fwd.c
Fix Datapath kernel checkpatch warnings in ol_rx_fwd.c

Change-Id: Iaf14e45dac4fd3d7293379798976162d92ae58fb
CRs-Fixed: 2032874
2017-06-14 08:24:36 -07:00
Yun Park
04097e8e92 qcacld-3.0: Fix Datapath kernel checkpatch warnings in ol_tx_classify.c
Fix Datapath kernel checkpatch warnings in ol_tx_classify.c

Change-Id: Ic409ee871bff01669c6f042e44c6d71ce6e63a65
CRs-Fixed: 2032874
2017-06-14 08:24:35 -07:00