Commit Graph

1666 Commits

Author SHA1 Message Date
Krunal Soni
0193b6f143 qcacld-3.0: Provide support enable RX LDPC in certain cases
In following conditions RX LDPC support needs to be enabled
1) when STA is coming up in 5G band
2) when IBSS is coming up in 5G band

for anyother cases RX LDPC needs to be disabled. If user has
choosen RX LDPC to be disabled from INI file then it needs to
be disabled for all the cases including above mentioned cases.

To achieve this, take the intersection of global, INI, and harware
specific RX LDPC settings.

Change-Id: Iae10aa4a8c0931cdb796cd9c8ff558d4bc8e0aed
CRs-Fixed: 1050004
2016-08-19 18:52:48 -07:00
Krunal Soni
6f6088cc41 qcacld-3.0: Fix the memory leak caused by pmfSaQueryTimer
this patch will fix the memory leak caused by pmfSaQueryTimer
which was encountered during stress and stability tests.

Change-Id: I5a2367302e0eac3a024626795a4469d1ced76e8c
CRs-Fixed: 970527
2016-08-19 18:52:47 -07:00
Himanshu Agarwal
b56ad2e5c1 qcacld-3.0: Change structure names for WIN compilation fix
Change structure names to fix WIN compilation when used in
coexistence with MCL codebase.

Change-Id: Ife09989e1f0f0c4d619f73c5960968d3a6721b6e
Acked-by: prgandhi@qti.qualcomm.com
CRs-Fixed: 1008872
2016-08-19 18:52:45 -07:00
qcabuildsw
9f6c8a05ea Release 5.1.0.23U
Release 5.1.0.23U

Change-Id: Iceb664a4c098fc700c18eb1c77ab1cd43e3426e7
CRs-Fixed: 688141
2016-08-19 18:33:29 -07:00
Manjunathappa Prakash
b4ae4ab7b0 qcacld-3.0: Serialize the LRO manager array access
Serialize the LRO descriptor list modifications.

Change-Id: Ie40ccf274e6e44441a16ff3d6f36a3007b732c09
CRs-Fixed: 1056091
2016-08-19 18:33:29 -07:00
Arif Hussain
a34700c82e qcacld-3.0: Fix sap_acs_channel_check
In sap_acs_channel_check fix ‘if’ condition will be always true for any
given channel, this will fail to validate if the given channel is in ACS
channel range.

Fix the if condition check from logical OR to AND to validate given channel
is within the ACS start and end channel range.

Change-Id: I1d69c9d440e641b052fd6098d1c99f22a64e9a9d
CRs-Fixed: 1056036
2016-08-19 18:33:27 -07:00
Arif Hussain
1b21e81150 qcacld-3.0: Fix overlapping channel selection in ACS
The enableOverLapCh is not populated from HDD context, So sap_filter_over_lap_ch
function always filter overlapping channel causing ACS to select only
non-overlapping channel.

Populate enableOverLapCh from HDD context to SAP context.

Change-Id: I99b1ada48573e8b03ab42a94d98f92f7b0b0e871
CRs-Fixed: 1055071
2016-08-19 18:33:25 -07:00
Mohit Khanna
c6f03989a8 qcacld-3.0: Add USB bus support (DP)
Add datapath changes for USB bus support

Change-Id: Iabb6f5bbfa4d0c2a8026262d2ecb11cdc0533742
CRs-Fixed: 1023663
2016-08-19 18:33:24 -07:00
Mohit Khanna
0fe6167c19 qcacld-3.0: Add USB bus support (WMA)
Add WMA specific changes for USB bus support.

Change-Id: I4186d22e4f0af258ee92fb269db9a987cdd0c933
CRs-Fixed: 1023663
2016-08-19 18:33:23 -07:00
Mohit Khanna
da4f443792 qcacld-3.0: Add USB bus support (Kbuild)
Add kbuild specific changes for USB bus support.

Change-Id: Icc6e8378ba3cbfca8aeb54b5084840e621639582
CRs-Fixed: 1023663
2016-08-19 18:33:21 -07:00
Mohit Khanna
04bea52a30 qcacld-3.0: Add USB bus support (BMI)
Add BMI specific changes for USB bus support.

Change-Id: Icf9d2097d23945c6fab6d3d06dbff04578c8054e
CRs-Fixed: 1023663
2016-08-19 18:33:20 -07:00
Mohit Khanna
b7da043345 qcacld-3.0: Add USB bus support (Tgt Config HL)
Add module specific changes for USB bus support.

Change-Id: Id6fe6b79b2dbf41a93ee815c20f44972122c9bb7
CRs-Fixed: 1023663
2016-08-19 18:33:19 -07:00
Mohit Khanna
1d531c408f qcacld-3.0: Add USB bus support (PLD)
Add PLD specific changes for USB bus support.

CRs-Fixed: 1023663
Change-Id: I030ee8a5e6dd13ed8bd970d80f435219677c4e4b
2016-08-19 18:33:17 -07:00
Mohit Khanna
fa99aea342 qcacld-3.0: Add USB bus support (HDD)
Add HDD specific changes for USB bus support.

CRs-Fixed: 1023663
Change-Id: I572a78cd9de1f7e531f300ced69a7eb51f4a167f
2016-08-19 18:33:16 -07:00
Himanshu Agarwal
11a08c08db qcacld-3.0: Add check to find IPV6 mcast packet
Propagation from qcacld-2.0 to qcacld-3.0.

1) Add check to find IPV6 mcast packet embedded in a
   link layer unicast packet in wma_wow_wake_up_stats.
2) Add extra length check for IPV4 packets.

Change-Id: Ic2af69032262237b8751019817ae181913346818
CRs-Fixed: 1049254
2016-08-19 18:33:14 -07:00
Himanshu Agarwal
4574e28362 qcacld-3.0: Correct wow wakeup counters
Propagation from qcacld-2.0 to qcacld-3.0.

Correct the updation of various wow wakeup counts.
Change wow_icmpv6_uc_bc_count to wow_icmpv6_count
as there is no broadcast in case of ipv6.

Change-Id: Iceaf1226edbf909ca3881e049c33f7d121860ef2
CRs-fixed: 1049254
2016-08-19 18:33:12 -07:00
Himanshu Agarwal
77e1b31e0d qcacld-3.0: Add ipv4 and ipv6 packet checks
Propagation from qcacld-2.0 to qcacld-3.0.

Presently in updating wma_wow_wake_up_stats, icmpv4 and icmpv6
counts are increased just by checking ICMP protocol offset byte
and ICMPV6 protocol offset byte without checking for whether it
is a IPV4 or IPV6 packet. So it is possible that for ICMPV6 packet,
the IPV4 protol offset byte is equal to ICMP protocol or for some
ICMP packet, the IPV6 protocol byte is equal to ICMPV6 protocol and
thus both the icmpv4 and icmpv6 counts will get increased for that packet.

Add ipv4 and ipv6 packet checks as well in addition to the present checks
to avoid wrong increment in the counts.

Change-Id: I2d6e5d095d2f4b2dd474b9338bfc830b04bfa533
CRs-fixed: 1048651
2016-08-19 18:33:11 -07:00
Tushnim Bhattacharyya
c7d6202f2a qcacld-3.0: Disallow chain mask request for 2x2 if hardware is not capable
Disallow host requesting for 2x2 chain if hardware is not capable of or
ini setting disabled it. Downgrade the request to 1x1 instead. No need for
waiting for NSS update to complete as all requests are serialized through
SME cmd queue.

Change-Id: Ifee4ce15771b57ac3cc1e85650c56f426c34c833
CRs-Fixed: 1037816
2016-08-19 18:33:08 -07:00
Mohit Khanna
47384bcd39 qcacld-3.0: fix peer map handler race condition
The existing peer_map_unmap_lock in ol_txrx_peer_find_add_id
does not include call to ol_txrx_peer_unref_delete. The peer addition
handling needs to be atomic with peer reference deletion (in case peer
ref deletion is required).

Move the peer_map_unmap_lock to include ol_txrx_peer_unref_delete.

CRs-Fixed: 1056442
Change-Id: Ica15ea70527f0ea116b960dd7958da73f304288b
2016-08-19 18:33:07 -07:00
Arun Khandavalli
d454d42793 qcacld-3.0: Increase WMA_STA_WOW_DEFAULT_PTRN_MAX to 5
qcacld-2.0 to qcacld-3.0 propagation

The problem with the existing code is:
* WMA_STA_WOW_DEFAULT_PTRN_MAX is set to 4 and in wma_wow_sta()
  we make sure atleast WMA_STA_WOW_DEFAULT_PTRN_MAX free slots are
  available before configuring the default wow pattern. But after this
  check we are actually configuring 5 default wow patterns.
* If BPF is enabled, we are limiting the Max WoW patterns to 2,
  because the free slots are 2 which is less than the expected default
  free slots WMA_STA_WOW_DEFAULT_PTRN_MAX. we are not configuring
  default STA mode wow pattern and hence no wakeups observed for
  incoming packets.
Address this issue by changing the WMA_STA_WOW_DEFAULT_PTRN_MAX to 5 and
MAX WoW filters to WMA_STA_WOW_DEFAULT_PTRN_MAX if BPF is enabled.

Change-Id: If433cff18ce511e7fdffadff69ee13b762a1719b
CRs-Fixed: 973054
2016-08-19 18:33:05 -07:00
Arun Khandavalli
3dd06deb03 qcacld-3.0: BPF fixes for check connection state, set maxwow filter
qcacld-2.0 to qcacld-3.0 propagation

* Set BPF filter only if the station/p2p client is in the connected
  state.
* Depending on the BPF service enabled in firmware dynamically
  configure the number of wow filters.
    - If bpf enabled maxwowfilter is 2.
    - If bpf is disabled maxwowfilter is read from ini.

Change-Id: I14c722c9a1189f4ba4fbc2c8a554ae85b7a61fa8
CRs-Fixed: 967535
2016-08-19 18:33:04 -07:00
Arun Khandavalli
c67110c9b2 qcacld-3.0: Start ap adapter from __wlan_hdd_add_virtual_intf
With SAP+STA concurrency there shall be a new interface created softap0 on
which SAP comes up. In the present scenario the support for starting
the ap adapter only via the change interface.
Since the SAP adapter is not started the start_bss request from the
upper layer fails.

To migitate the issue add support for the start ap adapter from the
 __wlan_hdd_add_virtual_intf.

Change-Id: I4d112441b5aa7ff91dafa9e43f9aceb18d0e13f0
CRs-Fixed: 1056331
2016-08-19 18:33:01 -07:00
qcabuildsw
4cf1ca19ea Release 5.1.0.23T
Release 5.1.0.23T

Change-Id: Id3726a27cc0f0a3600c1e961cb5282f16369283f
CRs-Fixed: 688141
2016-08-19 16:58:23 -07:00
Sreelakshmi Konamki
e1cd51f194 qcacld-3.0: Update ICMP and ICMPV6 WOW wake up stats
qcacld-2.0 to qcacld-3.0 propagation

Currently ICMP counter is incremented only for IPV4 multicast packets.
But ICMP count includes total unicast/multicast/broadcast ICMP packets.

Add changes to update ICMP counter for unicast/multicast/broadcast
ICMP packets.

Change-Id: I00f9fb0c8231fd69f6c108ced8028eb19315006e
CRs-Fixed: 1020079
2016-08-19 16:58:20 -07:00
Padma, Santhosh Kumar
5e33bebbc2 qcacld-3.0: Get wakelock stats
qcacld-2.0 to qcacld-3.0 propagation

Send wakelock stats to HAL layer when it requests through vendor
command QCA_NL80211_VENDOR_SUBCMD_WAKELOCK_STATS. This is a
blocking request in HDD.

Change-Id: Ie043323d90f63c19de2da9d1b8b54bc28d2c8f3d
CRs-Fixed: 958964
2016-08-19 16:58:18 -07:00
Govind Singh
068c4b0fc3 qcacld-3.0: Set NAPI event after hif layer is initialized
hdd_napi_event requires hif_ctx, after dynamic mode feature hif_ctx
is getting created later as part of hdd_start_modules. HIF ctx is being
created/destroyed depending on the interface up/down from the upper
layer, hence set NAPI event after hif layer is initialized.

Change-Id: I9fb21f6f75cc689620a6befd997956610e2ca3ae
CRs-fixed: 1055660
2016-08-19 16:58:16 -07:00
Anurag Chouhan
19aa3bf9b4 qcacld-3.0: CL 1607151 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

add nan_data_supported_bands to NaN capabilities messages

Change-Id: Ib7ee708c9235e86cf9588d011de29df1e34ad690
CRs-fixed: 865207
2016-08-19 16:58:13 -07:00
Anurag Chouhan
e326c92400 qcacld-3.0: CL 1605795 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

WMI pdev POWER_STATS request and report message defs
pktlog flag in HTT_T2H RX_IN_ORD_PADDR_IND
New release of Hawkeye HW header files

Change-Id: If2f122a6879b60052849b7efb738e7fc1a4c23f3
CRs-fixed: 865207
2016-08-19 16:58:11 -07:00
Anurag Chouhan
e28b1f0798 qcacld-3.0: CL 1602603 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

define WMI_PKTLOG_EVENT_SW
Update htt.h with Lithium TCL/TX related data structures

Change-Id: Ica0b6cd11df8a84a0b7e0771354795aa082f20fe
CRs-fixed: 865207
2016-08-19 16:58:09 -07:00
Anurag Chouhan
11b53a140c qcacld-3.0: CL 1598475 - update fw common interface files
Propagation from qcacld-2.0 to qcacld-3.0

Adding defined weightage values for WMI_PDEV_SET_PCL_CMDID
Add filter configure interface in fwcommon for sniffer mode.

Change-Id: Ic822863cbbaffe7303dedf7f6c16ba92c2d0a5d3
CRs-fixed: 865207
2016-08-19 16:58:06 -07:00
qcabuildsw
6c453d93a6 Release 5.1.0.23S
Release 5.1.0.23S

Change-Id: I9b6d5c1ccb88c478e7eecb9f82d4aae56f132820
CRs-Fixed: 688141
2016-08-19 11:03:51 -07:00
Arif Hussain
aca67305b5 qcacld-3.0: SAP: Add radar pulse table for KR and CN
Add radar pulse table for new DFS domain KR and CN.

Change-Id: I75708a215f51b558a6b7573bcc730a08d2e4bd11
CRs-Fixed: 1047817
2016-08-19 11:03:51 -07:00
Amar Singhal
604ba6cf04 qcacld-3.0: Modify DFS region for KR and CN
KR and CN have different DFS regions than what kernel provides.
Assign the correct DFS regions for KR and CN. Also use "enum
dfs_region" as the parameter type in functions that have
dfs region as parameter.

CRs-Fixed: 1047214
Change-Id: I2ddd67d3c29a448dd2a1d3a63113750783fb6731
2016-08-19 11:03:51 -07:00
qcabuildsw
2807f3d22e Release 5.1.0.23R
Release 5.1.0.23R

Change-Id: I384e3faaaff18c51d750542f45ab1a1f3cd7ca96
CRs-Fixed: 688141
2016-08-19 11:03:51 -07:00
Yuanyuan Liu
3e918e5ca3 qcacld-3.0: Send WLAN off event to WLS at the end of WLAN off steps
send WLAN off event to WLS at the end of WLAN off steps
to make sure WLAN is really off when WLS calls 'glink deinit'.

Change-Id: I29e15d51ec306071fc9f5ff7e3565c75814944e8
CRs-Fixed: 985226
2016-08-19 11:03:51 -07:00
Yuanyuan Liu
f2ee05f167 qcacld-3.0: Provide PLD API for getting IRQ number
Provide PLD API of getting IRQ number for a given CE ID.

Change-Id: Icd293993e84ab4daa98430db231b8b73e082cd29
CRs-Fixed: 1047259
2016-08-19 11:03:51 -07:00
Yuanyuan Liu
9135361da5 qcacld-3.0: Remove platform stub files
Remove platform stub files as PLD takes care of platform APIs.

CRs-Fixed: 1056957
Change-Id: I0364d8a58f272f3646b913063f6484c83c2b7985
2016-08-19 11:01:34 -07:00
qcabuildsw
b07f5ab403 Release 5.1.0.23Q
Release 5.1.0.23Q

Change-Id: I5dda077d8a1160e20b91077856dc7be7a89c9543
CRs-Fixed: 688141
2016-08-18 09:11:48 -07:00
Manishekar Chandrasekaran
d3ee9756dc qcacld-3.0: Ensure MAS commands to be made PDEV specific
Make MAS (MCC Adaptive Scheduler) commands to be PDEV
specific.

Two instances of OCS (Off Channel Scheduler) can exist
in the FW (one per MAC) and FW provides the option of
enabling and disabling MAS on a per MAC basis. But,
Host does not have enable/disable option for individual
MACs. So, the agreement with the FW is for the Host to
send down a ‘pdev id’ of 0. When ‘pdev id’ of 0 is used,
FW treats this as a SOC level command and applies the
same value to both MACs. So, irrespective of the value
of ‘WMI_SERVICE_DEPRECATED_REPLACE’ in the WMI service
bit map, the pdev id needs to be ‘0’ (SOC level) for
the WMI command
WMI_RESMGR_ADAPTIVE_OCS_ENABLE_DISABLE_CMDID.

WMI command WMI_RESMGR_SET_CHAN_TIME_QUOTA_CMDID to set
the MCC quota is sent down as channel – value pairs.
The value being channel time quota and the channel being
sent down is a home channel. The additional requirement
from FW is that all the channels in a single WMI command
belong to the same MAC. FW asserts if the WMI command
mixes and matches home channels associated with
different MACs. So, although the PDEV ID is not part of
the WMI command struct, the cmd is in a sense PDEV
specific.

There is no change in the WMI command
WMI_RESMGR_SET_CHAN_LATENCY_CMDID to make it PDEV
specific since this WMI command always send only one
channel-latency pair to the FW. So, there shouldn’t be
any problem of FW receiving home channels associated
with different MACs, for this WMI command.

Change-Id: Ie22800e07bbeef65c43f9171de828533b982a06b
CRs-Fixed: 1052652
2016-08-18 09:11:47 -07:00
qcabuildsw
cf6ce2c055 Release 5.1.0.23P
Release 5.1.0.23P

Change-Id: Ie16a5163c716d5bd9fc0ee211ab206079218d6c4
CRs-Fixed: 688141
2016-08-18 01:49:44 -07:00
Govind Singh
b84759415b qcacld-3.0: Add ndp_ctx NULL check in error scenario
Add ndp_ctx NULL check in error scenario before
dereferencing it.

Propagation from qcacld-2.0 to qcacld-3.0.

Change-Id: I7a6aa92351e0140b78c9d7b95f2a6cca45f8e387
CRs-Fixed: 1044060
2016-08-18 01:49:43 -07:00
qcabuildsw
e5fe78c945 Release 5.1.0.23O
Release 5.1.0.23O

Change-Id: I5db783be1a0d9568d335588cee0b49a82734721a
CRs-Fixed: 688141
2016-08-18 00:41:02 -07:00
Nirav Shah
c657ef50ea qcacld-3.0: Changes to update mac_id in packetlog
Changes to update mac_id in packetlog header
for DBS.

Change-Id: I602d399e1ef34077b5d7bfc867fb60678ed8612c
CRs-fixed: 1047382
2016-08-18 00:41:01 -07:00
qcabuildsw
cb6e2089bb Release 5.1.0.23N
Release 5.1.0.23N

Change-Id: Iea866eec216ff827b53869454df616934852120a
CRs-Fixed: 688141
2016-08-17 20:06:12 -07:00
Sandeep Puligilla
829d6acb75 qcacld-3.0: Remove duplicate OBSS start scan request
Host is sending OBSS start scan request twice to firmware.
OBSS scan start is triggered as part of the set context response
processing and it gets called twice after association.

Added condition check to allow only once the OBSS scan request.

Change-Id: I8ccc7172df9d89aaa09ad924ced7f8ed5a6ace13
CRs-Fixed: 1053626
2016-08-17 20:06:11 -07:00
Krishna Kumaar Natarajan
da90922125 qcacld-3.0: Fix incorrect compilation flag termination
Fix incorrect compilation flag termination.

Under WLAN_ENABLE_AGEIE_ON_SCAN_RESULTS compilation flag TDLS and few
other unrelated changes were present. This change set will remove
the unrelated changes outside this compilation flag.

Change-Id: I16ca3013147c549acc1b0758c268af717166ac57
CRs-Fixed: 1050754
2016-08-17 20:06:09 -07:00
Krishna Kumaar Natarajan
89a99d46ed qcacld-3.0: Provide sequence control information to userspace
Provide sequence control information to userpace tool via
vendor IE.

Change-Id: Ic0489f7fca3519964b12aa5f272bd66a4d02115c
CRs-Fixed: 1050754
2016-08-17 20:06:06 -07:00
Poddar, Siddarth
7ca1e08421 qcacld-3.0: Delete PMF Sta from previous vdev
qcacld-2.0 to qcacld-3.0 propagation

If a PMF Sta is already connected to one interface and try
to switch to other interface without sending deauth/disassoc,
sta entry is not deleted from previous vdev and one more entry
is created on current vdev. Due to this htt is not able to get
valid peer for EAPOL packets and EAPOL packets are dropped leading
to connection failure.
To fix this, Add check to delete PMF Sta from one vdev when
assoc request is received on another vdev.

Change-Id: Ida2e20fe08af3c6ed426822a71db1fd6854a0bea
CRs-Fixed: 1033224
2016-08-17 20:06:04 -07:00
qcabuildsw
53675724ec Release 5.1.0.23M
Release 5.1.0.23M

Change-Id: I5d684de1663405265674bbbf42d8ebeb604853fb
CRs-Fixed: 688141
2016-08-17 17:07:05 -07:00
Poddar, Siddarth
74178df581 qcacld-3.0: Add argument to ol_tx_queue_free for vdev or peer queues
qcacld-2.0 to qcacld-3.0 propagation

Add additional argument in ol_tx_queue_free to indicate whether
txq is vdev or peer queues to avoid extracting peer_id in case of
vdev txq queue in ol_tx_queue_log_free function.

Change-Id: Ic521c23b4001f15a382e9435413cdafca0c8b49f
CRs-Fixed: 1023457
2016-08-17 17:07:03 -07:00