Commit Graph

276 Commits

Author SHA1 Message Date
Srinivas Girigowda
a35f10958e qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in tSirTdlsAddSta Req/Rsp
Replace tSirMacAddr with cdf_mac_addr in tSirTdlsAddSta Req/Rsp.

Change-Id: Ie10b69ce99645f7ace3d772dc8c8de87ad86f2bc
CRs-Fixed: 898864
2015-12-28 14:20:45 -08:00
Srinivas Girigowda
84f4292b85 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirTdlsDelSta Req/Rsp/Ind
Replace tSirMacAddr with cdf_mac_addr in sSirTdlsDelSta Req/Rsp/Ind.

Change-Id: I98264dea13b7bc596c092461da0ecf865332095e
CRs-Fixed: 898864
2015-12-28 14:20:45 -08:00
Srinivas Girigowda
5146deef9f qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirPlmReq
Replace tSirMacAddr with cdf_mac_addr in sSirPlmReq.

Change-Id: I21df91d980bc081af28f67a344d138b3c54eaf14
CRs-Fixed: 898864
2015-12-28 14:20:45 -08:00
Srinivas Girigowda
9d6a6db43f qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sTSMStats
Replace tSirMacAddr with cdf_mac_addr in sTSMStats.

Change-Id: Ib7a00874a5ad1c90ac2ab332015b136efc73cdc9
CRs-Fixed: 898864
2015-12-28 14:20:45 -08:00
Srinivas Girigowda
37eeeb06c8 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirSmeProbereq
Replace tSirMacAddr with cdf_mac_addr in sSirSmeProbereq.

Change-Id: I86622c1bca4bdcd0aad5b7a44ff490e11e8c142d
CRs-Fixed: 898864
2015-12-28 14:20:45 -08:00
Srinivas Girigowda
d8af4a6b62 qcacld-3.0: Replace tSirMacAddr with cdf_mac_addr in sSirSmeStartBssReq
Replace tSirMacAddr with cdf_mac_addr in struct sSirSmeStartBssReq.

Change-Id: I76c09e0c865ada1fe53a9e4779a32b19291fbfda
CRs-Fixed: 898864
2015-12-28 14:20:45 -08:00
Krishna Kumaar Natarajan
c768199001 qcacld-3.0: CL 1417063 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

Add rsPhyErrMask fields to WMI COMB_PHYERR_RX.

Change-Id: Ib64bb9b21d381863ef60e17e93886d070a6a7617
CRs-Fixed: 865207
2015-12-28 14:20:45 -08:00
Krishna Kumaar Natarajan
e2c7046b2a qcacld-3.0: CL 1414893 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

Add wmi interface changes related to SCPC implementation.

Change-Id: I493f03d14dfb54fb152e142c0ec4df69bcb65721
CRs-Fixed: 865207
2015-12-28 14:20:45 -08:00
Krishna Kumaar Natarajan
1dfa3537bf qcacld-3.0: CL 1413998 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

Add new RTT related wmi interface changes to support
TLV based messaging.

Change-Id: I0591907984c3c58039a06ce123dca777d24c590f
CRs-Fixed: 865207
2015-12-28 14:20:45 -08:00
Krishna Kumaar Natarajan
3878391e4a qcacld-3.0: CL 1412803 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

Add service bit for Unified WOW.

Change-Id: If23dbd048fab5032200901d263a71fb49c8203e4
CRs-Fixed: 865207
2015-12-28 14:20:45 -08:00
Krishna Kumaar Natarajan
04c4e912c6 qcacld-3.0: CL 1412709 - update fw common interface files
qcacld-2.0 to qcacld-3.0 propagation

Add wmi interface changes related to enhanced ioac feature.

Change-Id: Ia45ef032bd6e01242e28123cfc402cac9ae8a22d
CRs-Fixed: 865207
2015-12-28 14:20:45 -08:00
Krishna Kumaar Natarajan
d913190603 qcacld-3.0: Fix mangled function names
Fix mangled APIs sme_configure_ext_wo_w,
sme_process_ready_to_ext_wo_w and
lim_remove_timeout_pbc_sessions which were introduced
while converting the names programmatically.

Change-Id: Ie0a79b476a99bf1be0411dae0542359e7d58141a
CRs-Fixed: 882962
2015-12-28 14:20:44 -08:00
Krishna Kumaar Natarajan
8a8df26374 qcacld-3.0: Fix incorrect reference to wiphy flags
Fix incorrect reference of wiphy flags while setting
WIPHY_FLAG_HAS_CHANNEL_SWITCH.

Change-Id: Ifebaa9a8452a8564f60f29015f240d5a43bb9afb
CRs-Fixed: 947551
2015-12-28 14:20:44 -08:00
Govind Singh
ede435fab0 qcacld-3.0: cleanup tx-queue during SSR
qcacld-2.0 to qcacld-3.0 propagation

During SSR, Host is sending packets to firmware before WMI_READY_EVENT.
Fix is to avoid sending tx when logp_in_progress & clean ll-queue
packets in shutdown.

Change-Id: Ib6b9f4d51f2aa7f85d384831818b45763c702c88
CRs-Fixed: 834887
2015-12-28 14:20:44 -08:00
DARAM SUDHA
a51d6fb5df qcacld-3.0: disable pn check for ibss network, in security mode
qcacld-2.0 to qcacld-3.0 propagation

Multicast packets using different sequence number space
gets dropped on the host due to the existing logic of
running duplicate detection check and out-of-order packet check
on all non-aggregation (legacy) TIDs, since f/w uses a
special (non-aggregation) TID (18) to indicate these packets
to the host, irrespective of sequence number space.

The fix is in 2 parts:

1) Do only duplicate detection on mcast packets & not out-of-order check
   (Also do dup-detection only if retry bit is set)
2) Instead of using mcast TID indicated by f/w, use the actual
   packet TID from the Rx descriptor to perform the duplicate detection
   and use a separate (new) field in rx_reorder_array to store
   the last successful mcast sequence number. On the next mcast packet
   perform the duplicate detection against mcast sequence number, rather
   than the ucast sequence number.

Change-Id: I4c3542e82a1917b4ed27513e9244702bb212df88
CRs-FIXED: 788954
2015-12-28 14:20:44 -08:00
DARAM SUDHA
61270b0e59 qcacld-3.0: initialize SendFlags in HTT before downloading to FW
qcacld-2.0 to qcacld-3.0 propagation

In Low-latency interface, to avoid 1d2 happening during roaming
test, host need to send HTC header to fw, by setting SendFlags
to zero to avoid deadlock situation.1d2 happened during roaming
test.

Change-Id: Ib3d16deadf038708fb75bcba692bd6adf3959c4e
CRs-Fixed: 807505
2015-12-28 14:20:44 -08:00
Konamki, Sreelakshmi
ec14e6a53b qcacld-3.0: STA is disconnected with specific AP IPTIME N904NS-second
qcacld-2.0 to qcacld-3.0 propagation

STA gets disconnected with AP IPTIME N904NS when AP is configured
for WPA1 + TKIP on CH 161.
Return value of memcmp function must be checked with NOT operation.

Change-Id: Ic866a70917c1e713855c28a8f156ffe7c381fa07
CRs-Fixed: 642070
2015-12-28 14:20:44 -08:00
Hema Aparna Medicharla
5e1f302b26 qcacld-3.0: Donot defer Rx frames processing if ADD TS request sent
qcacld-2.0 to qcacld-3.0 propagation

Current implementation defers all the received frames
when ADD TS request is sent out over the air. This,
in addition, to check for pMac->lim.gLimAddtsSent
incurs delay, till ADD TS response timeout, in processing
of the ADD TS response received if SET_LIM_PROCESS_DEFD_MESGS
is set to FALSE. As there is no rationale defer processing
of Rx frames while waiting for ADDTS response, changes are
made to not defer processing of RX frames for the same.

Change-Id: I1d1a41a0e3555ae19548a0cabf3b9569af775f72
CRs-Fixed: 839546
2015-12-28 14:20:44 -08:00
Konamki, Sreelakshmi
f5910aba20 qcacld-3.0: STA is disconnected with specific AP IPTIME N904NS-second
qcacld-2.0 to qcacld-3.0 propagation

STA gets disconnected with AP IPTIME N904NS when AP is configured
for WPA1 + TKIP on CH 161.

Change-Id: Ifa30ed624c1f9f3c549def45cdb9e5f8ebfae233
CRs-Fixed: 627650
2015-12-28 14:20:44 -08:00
Sreelakshmi Konamki
e1ce562b9b Revert "qcacld-3.0: After DELTS, revert to UAPSD related intervals in ini"
qcacld-2.0 to qcacld-3.0 propagation

This reverts Change-Id I858cd3cbd536ec189ea808c5d637abffe388f7aa.

With change id I858cd3cbd536ec189ea808c5d637abffe388f7aa,
host is not sending WMI_STA_UAPSD_AUTO_TRIG_CMDID command to firmware
during disable UAPSD per AC.

Change-Id: Ifdbcd6926ca86b1baeeadcf7a4720e460d41a6e5
CRs-Fixed: 911229
2015-12-28 14:20:44 -08:00
Chandrasekaran, Manishekar
f78b05e239 qcacld-3.0: Avoid taking lock for vfree API during driver load/unload
This is qcacld-2.0 to qcacld-3.0 propagation

Avoid invoking vfree inside spinlock during logging service
activation and deactivation. Since vfree is prone to sleep, this
disables the IRQs for duration longer than the acceptable limit.
vfree can be done without spin lock here, as there is no
synchronization issue in this scenario.

CRs-Fixed: 914363
Change-Id: I4d69431a98a4e4301dfc1e2b3b4c40c408a7ef99
2015-12-28 14:20:44 -08:00
Peng Xu
278d012c68 qcacld-3.0: Dynamic OTA test mode enable
For OEM to do OTA tests, power save, background scan, and low RSSI
scanning need to be disabled and it should be done dynamically.
Implement a vendor command to enable and disable OTA test mode.

CRs-fixed: 941776
Change-Id: Ic9da11cf5f4bb19a01d9b55c50c0aea196abbfb6
2015-12-28 14:20:44 -08:00
Peng Xu
f9008d617a qcacld-3.0: Increase max vdev number in target config
Currently the max vdev value for roaming, beacon offload and
beacon miss offload is 2, this causes crash when creating
multiple vdev interfaces as now DBS concurrency is supported.
Change the max vdev value to 3 for various offload features and
change the max vdev supported value to 4.

Change-Id: I57ddfa384bdba3ae7f9207551d28be75d500e7bf
CRs-fixed: 938798
2015-12-28 14:20:43 -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
Sushant Kaushik
f217d95372 qcacld-3.0: Enable Tx beamformee by default
qcacld-2.0 to qcacld-3.0 propagation

Default value of  Tx beamformee is 0.
As as part of fix, enable the default value
of Tx beamformee.

Change-Id: Ib4b30f2a925e95cd96cc789ac7bc223274fa6a67
CRs-Fixed: 921834
2015-12-28 14:20:43 -08:00
Gupta, Kapil
e1044069d8 qcacld-3.0: Stop overwriting pnoOffload value with dummy value.
qcacld-2.0 to qcacld-3.0 propagation

Currently tpAniSirGlobal pnoOffload value is initialized with
FW caps first time only and resetting to 0 while starting a bss in
go mode. Existing value of pnoOffload is not retained while
getting config for tSmeConfigParams.

Added changes to retain current value of pnoOffload from
tpAniSirGlobal while getting config for new tSmeConfigParams.

Change-Id: I0eda12ec1c69aeca4465d41f3e3ba96b8e1944cb
CRs-Fixed: 913994
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
Sushant Kaushik
7a53588e1d qcacld-3.0: Remove LL stats redundant logs
qcacld-2.0 to qcacld-3.0 propagation

Currently there are many LL stats related logs
which doesn't provide any useful information.
As a part of fix, remove all those redundant logs.

Change-Id: Id1a89f209cfb57646828c5ee059f6f3790aac1c0
CRs-Fixed: 903941
2015-12-28 14:20:43 -08:00
Abhishek Singh
1e94d7a2cc qcacld-3.0: IBSS: Handle IBSS mode in stop adapter properly
qcacld-2.0 to qcacld-3.0 propagation
In Stop Adapter IBSS mode is not handled properly and
no DEL BSS is sent for the connected IBSS before DEL SELF STA.
This may lead to crash in FW.

As part of fix handle the IBSS mode and send DEL BSS if IBSS is
connected.

Change-Id: Ice1304aced1a158c7b589a95337412cda0183a04
CRs-Fixed: 908990
2015-12-28 14:20:43 -08:00
Abhishek Singh
ac2be14ac2 qcacld-3.0: Update the status code in Re/assoc rsp for failure
qcacld-2.0 to qcacld-3.0 propagation

If deauth is received just after Assoc rsp from AP in addSTA
response Re/assoc confirm is sent with status failure.
But protStatusCode in assoc confirm is not updated and thus the
pRoamInfo->reasonCode may have garbage value.
In case of Wep connection failure reason code,
pRoamInfo->reasonCode, is sent to the supplicant in connect
result. Now if pRoamInfo->reasonCode is 0 supplicant receives
connection success though connection have actually failed.

To avoid this update protStatusCode, before sending Re/assoc
failure.
Also properly derive if connection is WEP from roamProfile before
clearing it.

CRs-Fixed: 926572
Change-Id: I5ae0832d37746be16696f521bddd5b67307b1ee4
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
Leo Chang
8e07361afb qcacld-3.0: wdi2.0 feature enable, dp hif
wdi20 enable implementation for hsoffload. Large physical address
support and wdi20 interface propagate to IPA.
This is part of HIF and DP.

Change-Id: If898f03a8a75689c98c70d1e55910f476d8fe329
CRs-fixed: 941041
2015-12-28 14:20:43 -08:00
Satish Singh
3c86037150 Release 5.0.0.148 QCACLD3 WLAN Driver
Release 5.0.0.148 QCACLD3 WLAN Driver

Change-Id: Ibc96af71bdcabbd54a325220429b38fa29e72f2e
CRs-Fixed: 688141
2015-12-09 23:24:39 -08:00
Yun Park
f19e07d2ef qcacldi-3.0:IPA-uC: Cleanup IPA pending event list when driver unload
qcacld-2.0 to qcacld-3.0 propagation

IPA pending_event list keeps IPA events arrived while IPA resource
loading/unloading.
This list is freed only when TX/Rx resume/suspend OP code from FW.
This change is to limit the pending event list size and free up the
pending event list when WLAN driver is unloaded.

Change-Id: Id0489a59bd3c2b04d2faba1069df7b2244a2a730
CRs-Fixed: 937765
2015-12-09 23:21:41 -08:00
Kiran Kumar Lokere
fa043534bf qcacld-3.0: Fix the issue observed in static code analysis
Fix the issue observed in static code analysis.

Change-Id: I3ec4abc3b51d3b36350e1f2d592ae59a21d8aa62
CRs-Fixed: 928208
2015-12-09 23:21:40 -08:00
Ryan Hsu
04aec8e5d1 qcacld-3.0: Fix the PNO WoW is not configured in concurrency case
qcacld-2.0 to qcacld-3.0 propagation

In the case of SAP + STA mode we fail to enable PNO on the STA interface,
and as a result the PNO feature will fail to find a network and wake the
host. Fix this by making sure PNO is configured in all appropriate
concurrency cases.

Change-Id: I97084cfde73025f0d09b60616959c9530ba82c80
CRs-fixed: 921150
2015-12-09 23:21:40 -08:00
Hanumantha Reddy Pothula
589fd70615 qcacld-3.0: Resolve invalid memory access while processing GET STATES IOCTL
qcacld-2.0 to qcacld-3.0 propagation

While processing GET STATES IOCTL, in a while loop, HOST prints PE, LIM
and MLM states of each session. Normally while loading, HOST allocates
memory for five sessions, but while processing this IOCTL, it iterating
in a loop assuming there are 255 sessions allocated, leading to crash
because of invalid memory access.
Hence while printing PE, LIM and MLM states iterate only for allocated
number of sessions.

Change-Id: I29c9a627615a1983d23831578f45aefe116dac25
CRs-Fixed: 879950
2015-12-09 23:21:40 -08:00
Kanchanapally, Vidyullatha
e306281cab qcacld-3.0: Add new vendor command to get link properties
qcacld-2.0 to qcacld-3.0 propagation

Add support in driver for a new vendor command to get
the link properties nss, rate flags and operating
frequency.

Change-Id: Ie3b8d5b2c3886055d303441c5d8b2f2a0a2719bd
CRs-Fixed: 834199
2015-12-09 23:21:40 -08:00
Ratnam Rachuri
28dcf49c9f qcacld-3.0: avoid conditional compilation for HEADROOM_SIZE macro
qcacld-2.0 to qcacld-3.0 propagation
In hdd_alloc_station_adapter, deleted pWlanDev->hard_header_len updating
code.

Change-Id: I7a3ead434a910dd522f9a02a24cd6ad8669e3fc8
CRs-Fixed: 853305
2015-12-09 23:21:40 -08:00
Edhar, Mahesh Kumar
e3c8d35f4a qcacld-3.0: synchronize PE and HDD initiated disconnects
qcacld-2.0 to qcacld-3.0 propagation

PE generated disassoc request is not serialized in SME queue. This
results in corrupting 'lim.limDisassocDeauthCnfReq.pMlmDisassocReq'
which is a global context to save disassoc request.

Address the above by indicating all the PE generated disassoc requests
to SME and process disconnection request only after receiving
eWNI_SME_DISASSOC_CNF from SME(similar to that of processing disassoc
request from peer).

Change-Id: I2b93925ba64c4d9ff22b071dd2e5c7681be59e15
CRs-Fixed: 934183
2015-12-09 23:21:40 -08:00
Edhar, Mahesh Kumar
6a50152d98 qcacld-3.0: Honor NL80211_SCAN_FLAG_FLUSH scan flag
qcacld-2.0 to qcacld-3.0 propagation

Honor NL80211_SCAN_FLAG_FLUSH scan flag by flushing
sme and lim scan cache entries.

Change-Id: I1ff59e583f815bfec2df458c58a40b30b7bffa00
CRs-Fixed: 934979
2015-12-09 23:21:40 -08:00
Edhar, Mahesh Kumar
bd8b391bf5 qcacld-3.0: Properly update channel width and bonding parameters
Currently as part of application triggered channel switch both the
channel bandwith and bonding mode are limited to 20MHz.
Change made to properly update the channel width and bonding
parameters.

Change-Id: I48297eed74c9e3bfed6fefa67f664f3503fac1f6
CRs-Fixed: 944647
2015-12-09 23:21:40 -08:00
Abhishek Singh
37595beb13 qcacld-3.0: Lower the log level of mtrace to Info to avoid WD bark
qcacld-2.0 to qcacld-3.0 propagation.

Too many log prints are seen if mtrace are dumped and this cause
WD bark.

To avoid this lower the log level of mtrace to Info.

Change-Id: I05d3fa8b3494785a1933f159280b6c9ba6923c0d
CRs-Fixed: 926416
2015-12-09 23:21:40 -08:00
Abhishek Singh
9e93043272 qcacld-3.0: Fix Static analysis error.
qcacld-2.0 to qcacld-3.0 propagation

Fix Static analysis errors as below:
1) Memory leak in limHandleDelBssInReAssocContext

Change-Id: I9dc0c630d62c06fb55e953f9506b04dbeff9bd51
CRs-Fixed: 919502
2015-12-09 23:21:40 -08:00
Himanshu Agarwal
e1086fad37 qcacld-3.0: Cleanup checks in the driver exit path
Propagation from qcacld-2.0 to qcacld-3.0

Added sanity checks for below variable before accessing in the
driver exit path.

nl_srv_sock
pdev_txrx_ctx

Change-Id: I793db21e1a6d1eded027ecbd2805494ea7610852
CRs-Fixed: 846457
2015-12-09 23:21:39 -08:00
Varun Reddy Yeturu
044bda2e10 qcacld-3.0: Create configuration item gfirst_scan_bucket_threshold
qcacld-2.0 to qcacld-3.0 propagation

Create a configuration item to program the first bucket
threshold of the scan results to have the flexibility to
adjust the first bucket threshold.

CRs-Fixed: 922979
Change-Id: I6fad27a2990f7555173e4735131e8392d0277009
2015-12-09 23:21:39 -08:00
Varun Reddy Yeturu
f76f6de348 qcacld-3.0: Fix Static Analysis Issues
1) Check for bssid if it is NULL, before dereferencing it.
2) Check for hal_ctx if it is NULL, before dereferencing it.

CRs-Fixed: 940721
Change-Id: I836416a4717b15902e8b8f27fa2e5e5e7935c12f
2015-12-09 23:21:39 -08:00
Houston Hoffman
b8954c6402 qcacld-3.0: Remove from_irq
From irq variable is not serving a good purpose.

Change-Id: I362e4fa8c5202e748fac455fb76ce676bd1ea31b
CRs-Fixed: 941355
2015-12-09 23:21:39 -08:00
Houston Hoffman
a499f30bd5 qcacld-3.0: Replace target_lock with ce_index_lock
Target_lock was a global lock for all target and copy engine data
structure access. Replacing target_lock with a per copy engine
lock permits paralel completion handling for different copy engines.

Change-Id: I9c09d557c85f9e48beafe5e3f936e105183ddd3f
CRs-Fixed: 941355
2015-12-09 23:21:39 -08:00
Houston Hoffman
15ec6c6895 qcacld-3.0: Remove target_lock from hif_crash_shutdown
This is called by the platform driver in case of kernel panic.
Replacement syncronization might be needed here if the kernel
panic doesn't stop the other host cpus before the platform driver
calls this.

Change-Id: Ic6d4eb1cb08f6363029463994ec7e3837212e271
CRs-Fixed: 941355
2015-12-09 23:21:39 -08:00