Commit Graph

1966 Commits

Author SHA1 Message Date
Agrawal Ashish
b141b09b36 qcacld-3.0: Add feature flag for DSRC feature
qcacld-2.0 to qcacld-3.0 propagation

Currently DSRC feature is compiled for all the
targets even if DSRC is not required.
Fix to protect DSRC changes with DSRC enabled feature.

Change-Id: I2e6f975366e1de8aa8afb818a073e1591f76d7fb
CRs-Fixed: 1053362
2016-09-21 17:02:26 -07:00
Agrawal Ashish
4c104387cc qcacld-3.0: Fix SAP start failure issue
qcacld-2.0 to qcacld-3.0 propagation

At the time of driver load, sap session is opened as part of
hdd_init_ap_mode but in case of sap restart, sme_open_session
is called from sapFsm.
At the time of opening session, sme_open_session register
wlansap_roam_callback callback for connection status.
If this callback is not registered, HDD will not get connection
status and HDD will start cleanup after SAP connection timeout which
will result in SAP failure.
Need to register wlansap_roam_callback as part of sme_open_session
when session is not created as part of hdd_init_ap_mode.

Change-Id: Ifd2cec5fec432f1dcd2b39c59df1f1c5b13c55d5
CRs-Fixed: 1051097
2016-09-21 17:02:18 -07:00
Agrawal Ashish
7dd7c59917 qcacld-3.0: Correct handling for VDEV_UP
qcacld-2.0 to qcacld-3.0 propagation

In SAP case there are two situation when driver needs to do vdev restart.
1)Hidden SSID: In case of Hidden ssid, vdev restart happens.
In process of restart first vdev stop happens then vdev restart and
finally VDEV_UP happens.
2)DFS detection on current channel: In this case due to DFS detection
driver need to change the current channel.
To change the channel vdev restart happens.
There can be a race condition when restart is happening as part of
Hidden ssid or switch channel, wma_send_beacon can do vdev up.
Fix this by not calling wmi_unified_vdev_up_send if restart is in progress.

Change-Id: I16c86105748b34b76ed575fc2e69a54cc7bab1c6
CRs-Fixed: 958230
2016-09-21 17:02:09 -07:00
Selvaraj, Sridhar
af54e2e6f0 qcacld-3.0: Update capability info in Reassoc request to be in sync with BSS
qcacld-2.0 to qcacld-3.0 propagation

Check if the spectrum management, short preamble, immediate block ack
are supported by BSS before sending Reassoc request in roaming and
reset the corresponding capability info bits in Reassoc request if the
respective BSS does not support it

Git-commit: 1424fcbda6a8a71484ead54c059e17069f9895d7
Change-Id: Ied61d9b963b0b8176655fadaa7f1458cb1e830ef
CRs-Fixed: 1002770
2016-09-21 17:02:02 -07:00
Selvaraj, Sridhar
251761aeab qcacld-3.0: Add support to handle TDLS event in WOW mode
qcacld-2.0 to qcacld-3.0 propagation.

TDLS teardown event sent by firmware is not processed whenever
host is in WOW mode which will lead to failure of TDLS
teardown

Fix is to handle this event in WOW mode.

Git-commit: 9cd6b405b3b75ff59febc30b5d8a6374b3f69675
Change-Id: I3649bfdf4381f49483a3ffe2c80d5339b52a3764
CRs-Fixed: 1009456
2016-09-21 17:01:54 -07:00
Padma, Santhosh Kumar
9509135262 qcacld-3.0: Add timer related messages at the top of PE queue
qcacld-2.0 to qcacld-3.0 propagation

Currently when PE queue is full, timer message gets queued at the
end of PE queue even when timer gets expired in time. This causes
delay in processing timer messages. This delay can be maximum if
timer message is the last message in PE queue. This can take substantial
amount of time to process timer message as timer message will be
processed only after processing of other messages. For instance,
if timer message processing takes substantial amount of time during
scan, it can delay sending max channel timeout and may result in
scan timeout. So, add timer related messages at
the top of PE queue to process those messages immediately.

Change-Id: Iccaf0075c97a7edd2c1de1d168f1a4e7d01381c2
CRs-Fixed: 936179
2016-09-21 17:01:47 -07:00
Padma, Santhosh Kumar
429553dfdb qcacld-3.0: Fix Beamforming during roaming
qcacld-2.0 to qcacld-3.0 propagation

Currently, capabilities su_beam_formee are set during association request
but not in re-association request. This can lead to failure in beamforming
after roaming. Fix this by updating them during roaming as well.

Change-Id: I28e86b93a5114f3b76733effe4428a92cf94b441
CRs-Fixed: 1033328
2016-09-21 17:01:39 -07:00
Deepthi Gowri
7e11bc3515 qcacld-3.0: Flush p2p scan results before single channel p2p scan
qcacld-2.0 to qcacld-3.0 propagation

Currently the p2p scan results are not flushed if the p2p
scan is issued for a single channel scan which would result
in a stale entry.

To address this, flush the p2p scan results before issuing
single channel p2p scan.

Change-Id: Iaaee1b4b4147e68e99927ea90082bc6f288a2e72
CRS-Fixed: 855782
2016-09-21 17:01:21 -07:00
Nitesh Shah
d8ff632154 qcacld-3.0: Enable WMM-QoS for HT capable TDLS peers
Propagation from qcacld-2.0 to qcacld-3.0.

During TDLS session establishment, assume the peer is HT
capable STA. If WMM-QoS is enabled in the DUT, but the TDLS
peer does not have WMM/WME IE in TDLS Setup Request/Response
and has QoS Capability element, then the DUT does not
transmit data with QoS. Thus, the throughput gets decreased.

Fix is to enable QoS for the STA for TDLS session if the peer
is HT/VHT capable or WMM/WME IE is present.

Change-Id: Id74983f41ce5de797202edc501f3904d57535ec6
CRs-Fixed: 1053852
2016-09-21 17:01:13 -07:00
Nitesh Shah
99934acf2d qcacld-3.0: Enable QOS if TDLS peers are QOS capable
qcacld-2.0 to qcacld-3.0 propagation

DUT is enabling QOS based on fixed capabilities in host which
is leading to issue of sending data frames withou QOS header
even though peers are capable.

Fix is to ensure that QOS will be enabled by interpreting
WMM IE.

Change-Id: I08d12ccfc6f1587f228618f2add4b5a1549df8ad
CRs-Fixed: 955872
2016-09-21 17:01:06 -07:00
Agrawal Ashish
d3f22f6b7f qcacld-3.0: Update QOS capability of TDLS station/link with Data Path
qcacld-2.0 to qcacld-3.0 propagation

Currently, the QOS capability of the TDLS link is updated
based on the BSS capability. Thus, if the BSS is not QOS
capable, the TDLS link eventually is not considered as QOS capable.
To address this, update the TDLS link with the data path with the
QOS capability based on the TDLS handshake between the peers.
The information of QOS is obtained to the driver through
the change_station callback from the supplicant and thus
the information is updated to the data path accordingly.
Also, this commit advertises that the station is QOS capable
by default in the TDLS setup request /response handshakes.

Change-Id: I6a36fd77b333e66e8c030f5230b4aaaee6d7a00c
CRs-Fixed: 776081
2016-09-21 17:00:59 -07:00
Nitesh Shah
d732f74d74 qcacld-3.0: Diag event for WOW reason code
Propagation from qcacld-2.0 to qcacld-3.0

Add diag event for WOW reason code.
The event EVENT_WLAN_POWERSAVE_WOW will be used to
inform the WOW reason code.

Change-Id: I9273c9e737b97207ce0acee131ab6f3c19cd3e0d
CRs-Fixed: 1037383
2016-09-21 17:00:51 -07:00
Abhishek Singh
440450989a qcacld-3.0: Do not trigger del sta if it is already in progress
qcacld-2.0 to qcacld-3.0 propagation

If SAP receive auth from an already connected STA, it post
eWNI_SME_DISASSOC_IND msg to SME to delete the STA context and
return. STA may try to send auth again as it didnt receive auth
resp.

Now many frames (probe req, auth etc) may get accumulated in PE
message queue and unless PE queue is fully processed SME queue will
not be processed and thus del sta will get delayed. This may again
cause STA to send more auth req and every time MC thread process an
auth req before the sta is deleted, eWNI_SME_DISASSOC_IND msg is
posted in SME message queue.

And if PE keeps on getting auth before the sta is deleted,
SME queue will pile up leading to crash.

To fix this do not trigger del sta if it is already in progress.

Change-Id: Icff3778d35ef7ea646463fe49c4335e260e9e156
CRs-Fixed: 982329
2016-09-21 17:00:42 -07:00
Abhishek Singh
c994160fb0 qcacld-3.0: If BSS is unreachable remove it from scan cache
qcacld-2.0 to qcacld-3.0 propagation

If BSS is present in kernel and driver scan cache, supplicant
tries to connect to the BSS multiple time even if the BSS is
unreachable. Due to multiple failures to connect supplicant
disable the network.

To avoid this, remove the BSS from scan cache:
 - If connect fails due to BSS unreachable i.e. probe
   resp/auth/assoc timeout and scan for ssid failure.
 - If disconnect is due to Link lost.

Change-Id: I3263dd02691000d83d4aef61c75b72d78c28f582
CRS-Fixed: 1039104
2016-09-21 17:00:33 -07:00
Abhishek Singh
a6b0982b34 qcacld-3.0: Avoid sending P2P action frame confirmation twice
qcacld-2.0 to qcacld-3.0 propagation..

P2P action frame confirmation can be called from work queue
wma_mgmt_tx_ack_work_handler as well as from MC thread during
remain on channel completion. So it can lead to race condition
where frame confirmation is called twice and driver tries to free
frame buffer twice.

To detect duplicate use PE global lock in P2P action frame
confirmation.

Change-Id: Id193b5a979fad5effa7c6b00d89452ad876ae00e
CRs-Fixed: 1035077
2016-09-21 17:00:14 -07:00
Srinivas Girigowda
e1e691382c qcacld-3.0: Move certain logs to appropriate log levels
Propagation from qcacld-2.0 to qcacld-3.0

Some of the logs are printing quite often and spamming the kernel logs.
Hence move them to appropriate log levels and remove the useless debug
messages.

Change-Id: If38d7a6a3cf13a5879f6a628d3d7eb4f5156a95b
CRs-Fixed: 1001441
2016-09-21 16:58:47 -07:00
Abhishek Singh
37456d231d qcacld-3.0: Add VHT transmit power envelope IE in chan switch wrapper
qcacld-2.0 to qcacld-3.0 propagation

Add changes to support VHT transmit power envelope sub element in
channel switch wrapper.

Change-Id: Ieac517ec44238034e1a5539cbe10ebbefb30dd09
CRs-Fixed: 1052716
2016-09-21 11:44:47 -07:00
Service qcabuildsw
d88ce7d6ba Merge "qcacld-3.0: Create bug report in case of nil scan results" into wlan-cld3.driver.lnx.1.1-dev 2016-09-21 11:00:46 -07:00
Service qcabuildsw
63a5df90a2 Merge "qcacld-3.0: Disable IBSS creator info upon GETIBSSPEERINFOALL command" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:15 -07:00
Service qcabuildsw
1fbb72bde0 Merge "qcacld-3.0: Fix the bug in populating the ll stats" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:14 -07:00
Service qcabuildsw
f96d23aa34 Merge "qcacld-3.0: Validate and Rectify RSN IE in probe response frame" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:14 -07:00
Service qcabuildsw
eb5dc00fd9 Merge "qcacld-3.0: Add proper lengths to payload" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:13 -07:00
Service qcabuildsw
061013e1ea Merge "qcacld-3.0: Fix buffer overflow" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:13 -07:00
Service qcabuildsw
94e8ed4d94 Merge "qcacld-3.0: Fix pmfComebackTimer during roaming" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:12 -07:00
Service qcabuildsw
eef571d3b1 Merge "qcacld-3.0: Reset use_protection when legacy AP goes away" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:12 -07:00
Service qcabuildsw
7329f35b8e Merge "qcacld-3.0: Unpause data queue after SAP SSID setting" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:11 -07:00
Service qcabuildsw
ec902e2adf Merge "qcacld-3.0: Parse attributes for vendor IE and access policy" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:11 -07:00
Service qcabuildsw
26b45de1b1 Merge "qcacld-3.0: Add access policy for vendor IE" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:10 -07:00
Service qcabuildsw
d9be4bba04 Merge "qcacld-3.0: Use preauth channel to fetch the band during roaming" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:10 -07:00
Service qcabuildsw
26aafeff8f Merge "qcacld-3.0: Fix to send the deauthentication frame from HDD" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:09 -07:00
Service qcabuildsw
365cd42b5d Merge "qcacld-3.0: Pass the correct reason code to disassoc" into wlan-cld3.driver.lnx.1.1-dev 2016-09-20 17:45:09 -07:00
qcabuildsw
7f17f527a0 Merge "Release 5.1.0.27B" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:51 -07:00
Service qcabuildsw
9441550889 Merge "qcacld-3.0: Refactor support to get per chain rssi stats" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:50 -07:00
Service qcabuildsw
ca47d22857 Merge "qcacld-3.0: Add support to get per chain rssi stats" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:49 -07:00
qcabuildsw
fe6fdc69c5 Merge "Release 5.1.0.27A" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:45 -07:00
qcabuildsw
a207b4643f Merge "Release 5.1.0.27" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:34 -07:00
Service qcabuildsw
454a46a6d4 Merge "qcacld-3.0: Add check to Validate SSID length" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:33 -07:00
Service qcabuildsw
6ff6395f46 Merge "qcacld-3.0: Add check to Validate cfg_ini" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:32 -07:00
qcabuildsw
f76edd5778 Merge "Release 5.1.0.26Z" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:28 -07:00
Service qcabuildsw
0f940a0634 Merge "qcacld-3.0: Cleanup ESE feature" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:27 -07:00
qcabuildsw
20c626b269 Merge "Release 5.1.0.26Y" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:26 -07:00
Service qcabuildsw
946f5a70d7 Merge "qcacld-3.0: Fix a compilation error in wlan_hdd_auto_shutdown_cb()" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:25 -07:00
Service qcabuildsw
8a1ee10b4f Merge "qcacld-3.0: Fix a compilation error ing nl_srv_init()" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:24 -07:00
Service qcabuildsw
4129d18b54 Merge "qcacld-3.0: Cleanup NAN feature" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:23 -07:00
Service qcabuildsw
c32100e02e Merge "qcacld-3.0: Cleanup IBSS feature" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:22 -07:00
qcabuildsw
8dcb9450f1 Merge "Release 5.1.0.26X" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:21 -07:00
Service qcabuildsw
093e1532fb Merge "qcacld-3.0: Call pld_pcie_power_off in pld_power_off" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:40:09 -07:00
qcabuildsw
d6a767c4c3 Merge "Release 5.1.0.26W" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:39:38 -07:00
Service qcabuildsw
fe1a019e39 Merge "qcacld-3.0: Populate CDS config flag bpf_packet_filter_enable" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:39:08 -07:00
Service qcabuildsw
f67d3da018 Merge "qcacld-3.0: Cleanup MBSSID compilation flag (phase 3)" into wlan-cld3.driver.lnx.1.1-dev 2016-09-19 12:39:06 -07:00