Commit Graph

21 Commits

Author SHA1 Message Date
Nirav Shah
331172a1d9 qcacld-3.0: Use appropriate list API
Use list_for_each_entry_safe API to traverse list
while deleting list entry in cds_drop_rxpkt_by_staid
to avoid crash.

CRs-Fixed: 943767
Change-Id: I4d09fd88f0faefacfc886866d9045b09feeb4432
2015-12-28 14:20:47 -08:00
Peng Xu
4aeef3c7aa qcacld-3.0: Don't allow two P2P GO interfaces on the same band
In P2P GO + GO concurrency case, only DBS mode is supported for
the two interfaces. Second P2P GO interface startup is blocked
if its channel is on the same band as the first P2P GO interface.

Change-Id: Ic85bd8f92983c8c08f61fdaf09be1ad13a17cd8f
CRs-fixed: 945804
2015-12-28 14:20:43 -08:00
Gupta, Kapil
121bf2115a qcacld-3.0: Support for handling of op class in xcsa action frame
qcacld-2.0 to qcacld-3.0 propagation

Add support to parse operating class from xcsa frame and select
channel bandwidth on basis of new operating class.

Change-Id: I33d794e77220ef82cca793767d459979eb940669
CRs-Fixed: 942104
2015-12-28 14:20:43 -08:00
Leo Chang
3bc8fedce7 qcacld-3.0: wdi2.0 feature enable, hdd cds
wdi20 enable implementation for hsoffload. Large physical address
support and wdi20 interface propagate to IPA.
part of HDD and CDS

Change-Id: Iaccab3ae233e0b9a8e4942bee0ebaa40ce94fc16
CRs-fixed: 941041
2015-12-28 14:20:43 -08:00
Masti, Narayanraddi
fd0d19c399 qcacld-3.0: channel bonding is not valid for channel 14
qcacld-2.0 to qcacld-3.0 propagation

Channel bonding mode in not valid for channel 14. So don't
consider it while deriving the channel bonding mode.

Change-Id: I7ceae149cdd9e2f3c75f937c56cc5e93455fa8ee
CRs-Fixed: 908439
2015-12-09 23:21:37 -08:00
Srinivas Girigowda
f2599dd3c6 qcacld-3.0: WLAN logs cleanup
This is a qcacld-2.0 to qcacld-3.0 propagation.

1. Add log to print ssid, bssid, rssi, channel and country code
   while connecting to an AP.
2. Add log to print disconnect reason when disconnect request is
   received from user space.
3. Cleanup some of the logs moving it to appropriate log level
   which are showing up as ERROR level in bug report.

Change-Id: Id8ea69a14a18565c226f89a8a5e10be46741d76d
CRs-Fixed: 914336
2015-12-02 12:55:29 -08:00
Sanjay Devnani
a64b512a9e qcacld-3.0: Check if unload is in progress during suspend
If unload in progress, abort suspend. causes null pointer ref otherwise

Change-Id: I7028b6f0efc9da62352b561e9def90ff9bffd5e6
CRs-Fixed: 878755
2015-11-25 17:26:47 -08:00
Nirav Shah
3650780ece qcacld-3.0: Do not lock to free all packets to avoid watchdog bark
Propagation from qcacld-2.0 to qcacld-3.0

Do not take single lock to free all TLSHIM packets
to avoid watchdog bark during driver unload.

CRs-Fixed: 934555
Change-Id: Iebfb449bd8174bc27207d33073c84a8f11d6e490
2015-11-25 17:26:47 -08:00
Xun Luo
a858a47ead qcacld-3.0: clear WMI work queue before bus context destruction
qcacld-2.0 to qcacld-3.0 propagation

All WMI work queue should be cleared and processing stopped before
bus context destruction. This change enforces this rule.

Change-Id: I2e12f3f08424f718ec66fe257060ce13de17ee4e
CRs-Fixed: 840422
2015-11-25 17:26:46 -08:00
Ratnam Rachuri
12553c61f6 qcacld-3.0: make non-interruptable wait for Tlshim Rx shutdown
qcacld-2.0 to qcacld-3.0 propagation

replace wait_for_completion_interruptible with wait_for_completion
to do Tlshim Rx shutdown with non-interruptible call.

Change-Id: I09a70fd2818db42401ba2ca91a75244c1f07557e
CRs-Fixed: 820482
2015-11-23 13:09:11 -08:00
DARAM SUDHA
ecf4211368 qcacld-3.0: Set tfm to NULL to avoid freeing in crypto_free_cipher
qcacld-2.0 to qcacld-3.0 propagation

tfm is invalid when alloc fails. Set tfm to NULL to avoid freeing
the crypto transform in crypto_free_cipher()->crypto_destroy_tfm.

Change-Id: I3261377f3a7b6ab5740d4144be9e84a1a3a07e42
CRs-Fixed: 809085
2015-11-23 13:09:10 -08:00
Chandrasekaran, Manishekar
907c2af8d6 qcacld-3.0: Fix misspelled entry in the enum wifi_logging_ring_id
This is qcacld-2.0 to qcacld-3.0 propagation

Fix the misspelled entry RIND_ID_DRIVER_DEBUG to
RING_ID_DRIVER_DEBUG in the enum wifi_logging_ring_id

CRs-Fixed: 938286
Change-Id: I0d33128c6d11ecc9ff3d403931bfd6bfdbbb2b4a
2015-11-23 13:09:05 -08:00
Chandrasekaran, Manishekar
430ee2ec1f qcacld-3.0: Avoid waiting for SME messages while holding SME global lock
Avoid waiting for SME response messages while holding the SME global
lock. Currently a wait for 500ms happens in cds_handle_conc_multiport
after the holding the SME global lock. Because of this, the set hw mode
response posted by LIM is not processed by SME as SME would be waiting
for the lock.

Change-Id: Ib7890cb7124f5879316f46b1bf9f0ad3fb225665
CRs-Fixed: 939026
2015-11-23 13:09:05 -08:00
Chandrasekaran, Manishekar
eceb811625 qcacld-3.0: Add CDS APIs to manipulate connection update event
Add CDS connection manager APIs to manipulate the connection
update event. These APIs can be used to initialize, reset,
set and wait for connection update event.

Change-Id: I5689711d4bdc0e39b2456573158943ebda9cbc2a
CRs-Fixed: 939026
2015-11-23 13:09:05 -08:00
Chandrasekaran, Manishekar
0d814c7b3e qcacld-3.0: Move cds_get_bin.c to concurrency management files
cds_get_bin.h and cds_get_bin.c were derived from qcacld-2.0
vos_get_bin.h and vos_get_bin.c.  These files got their names
since at one time they housed the wrappers used to retrieve
binary files nv.bin, cfg.dat, and firmware.  But over time the
functionality to actually retrieve binary files (get_bin) has
been removed, and almost all that is left is concurrency
management functions.  So, moving the .[ch] functionality to
the right files.

CRs-Fixed: 932777
Change-Id: I4a26c304cc6b6224d0839c365e4006fd32270961
2015-11-23 13:09:04 -08:00
Tushnim Bhattacharyya
bda664359b qcacld-3.0: dump the 3 port connection topology with new logs
The existing log for dumping concurrency information doesn't consider
DBS & also doesn't cover for various new combinations added newly.
Update logic for dumping DBS info & cover the new concurrency cases.

Change-Id: Id898bdc2c8aabfa70c99e6193c52f2723ded5c65
CRs-fixed: 935453
2015-11-23 13:09:02 -08:00
Varun Reddy Yeturu
35b51a271f qcacld-3.0: Avoid PMKID and send correct MIC for CCKM+RSN scenario
qcacld-2.0 to qcacld-3.0 propagation

In the current design, PMKID is sent in RSN IE in reassoc req for
CCKM roaming.When AP receives CCKM IE and PMKID, it gets confused
and rejects the reassociation.So in case of CCKM+RSN, don't send
PMKID.
Also, in reassoc request, MIC was going 0 in CCKMIE.This MIC is
calculated by calling platform driver API.When this API returns
SUCCESS then result is copied in MIC buffer but if this API
returns EINPROGRESS/EBUSY, then driver wait for the event and once
the event is completed it does not copy the result in MIC buffer.
So changes are done to copy this result in MIC buffer in case of
BUSY/INPROGRESS status.

Change-Id: Ide74db250aa5c129fa223582be830c15f34cfb16
CRs-Fixed: 763969
2015-11-23 13:09:01 -08:00
Chandrasekaran, Manishekar
ef70c0dd64 qcacld-3.0: Set HW mode before issuing connect for Hidden SSID
Set the HW mode if needed before connecting to an SSID that
is hidden.

CRs-Fixed: 928208
Change-Id: Ibefd207327da1b85ae26a91afd27fc6baf98cf14
2015-11-23 13:08:09 -08:00
Chandrasekaran, Manishekar
123d863c0c qcacld-3.0: Support for CLI+SAP in the PCL tables for third connection
Add support for CLI+SAP combination in the PCL tables which will be
used before deciding the PCL for the third connection that is going to
come up.

CRs-Fixed: 932277
Change-Id: I87e0d6306a40129931268d869b09c5bf763fab95
2015-11-23 13:08:09 -08:00
Mukul Sharma
c7a59f3210 qcacld-3.0: SSR protection for linux/crda reg_notifier api
qcacld-2.0 to qcacld-3.0 propagation

if SSR trigger in middle of execution of linux_reg_notifier
/crda_reg_notifier, driver may access uninitialized data.
Hence Driver need to protect these function from SSR.

Change-Id: I9bdc6851a44fecc8353e94b38eb1dd4f63e58604
CRs-Fixed: 798672
2015-11-23 13:08:07 -08:00
Prakash Dhavali
7090c5fd8d qcacld-3.0: Initial snapshot of ihelium wlan driver
qcacld-3.0: Initial snapshot of ihelium wlan driver
to match code-scanned SU Release 5.0.0.139. This is
open-source version of wlan for next Android release.

Change-Id: Icf598ca97da74f84bea607e4e902d1889806f507
2015-11-17 17:52:53 -08:00