Commit Graph

1784 Commits

Author SHA1 Message Date
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
Poddar, Siddarth
0cec8eaf67 qcacld-3.0: add NULL check and drop rx indication for a frame
qcacld-2.0 to qcacld-3.0 propagation

Add check to handle kernel NULL pointer dereference
during calling ol_rx_reorder_release.

Change-Id: If0367e0a7910d7ee460709fc8ae25ecc6de3485d
CRs-Fixed: 994435
2016-08-17 17:07:01 -07:00
Kabilan Kannan
ff89f748c1 qcacld-3.0: Avoid race condition in antenna switch operation
qcacld-2.0 to qcacld-3.0 propagation

When the TDLS traffic flows continuously between the two
peers and if the antenna switch command comes from the
user, it creates a race condition and blocks the
antenna switch operation.
Add a new transition state in TDLS to avoid this race
condition.

Change-Id: I1c9b183c460e1401bd1ee2631489c57778ec665b
CRs-Fixed: 971505
2016-08-17 17:06:58 -07:00
Selvaraj, Sridhar
35cc2cf07c qcacld-3.0: Don't populate TDLS IE's in extended capabilities
qcacld-2.0 to qcacld-3.0 propagation

Currently in case of IBSS, beacons are populated with TDLS IE's
in extended capabilities though TDLS IE's and extended capabilities
doesn't signify anything.

Fix will ensure to exclude extended capabilities and TDLS IE's

Git-commit: c50b50f7f0616b4536e7df998e98f9347562e680
Change-Id: I63b6f413964cc53f2f25496fef40f99c4244293a
CRs-Fixed: 1017887
2016-08-17 17:06:55 -07:00
Yun Park
7f171abb04 qcacld-3.0: Fix potential NULL dereference in ol_txrx_ipa_uc_get_resource
Pointer 'cds_get_context(QDF_MODULE_ID_TXRX)' returned from call to
function ol_txrx_ipa_uc_get_resource may be NULL and will be
dereferenced.
The fix is to check if cds_get_context is not NULL before passing it
to ol_txrx_ipa_uc_get_resource.

Change-Id: Idbb69bcbef6cb54df334c30419dc0f7015466f28
CRs-Fixed: 1042048
2016-08-17 17:06:53 -07:00
Arun Khandavalli
0850081699 qcacld-3.0: Validate the memory allocation for the bpf program
Validate the memory allocated for the bpf filter program before
dereferencing it.

Also return the correct error status to the caller

Change-Id: Ia165e2f8611830f26c6e466f74bb5e32fc8822e8
CRs-Fixed: 1042027
2016-08-17 17:06:51 -07:00
Mukul Sharma
45114d999a qcacld-3.0: Move scan_results_available from bucket complete to cycle complete
qcacld-2.0 to qcacld-3.0 propagation

Currently extscan_results_available event is posted to user space after a
bucket scan is completed. If the extscan start request is configured for
multiple buckets, then the user space application tries to fetch cached
results on every extscan_results available.
If the get_cached_results is issued with flush=1, then every get_cached_results
will have 0 scan results and since flush=1 is set, due to a bug in firmware
even the temporary scan cache is flushed, there by we miss reporting the
APs found in the previous bucket scans and only the last get_cached_results
will report the APs found in the last bucket scan. Whereas the expectation is
get_cached_results must report all the APs found in the complete scan cycle.
The proposed fix is in both firmware and host:
1. Firmware to ignore get_cached_results flush=1 and not to flush the temporary
   scan cache in the middle of extscan cycle.
2. Host to consume bucket_started event within host driver and map
   extscan_results_available with cycle_complete instead of bucket_complete.

Change-Id: I399204261fa3d8515146c590630a3bb663ee801c
CRs-Fixed: 975402
2016-08-17 17:06:48 -07:00
Mukul Sharma
fa937be21a qcacld-3.0: Enhance EXTSCAN feature
qcacld-2.0 to qcacld-3.0 propagation

Make the following enhancements to the EXTSCAN feature:
* Add buckets_scanned param while sending
  on_full_scan_result/cached result event to user space.
* Configure REPORT_EVENTS_CONTEXT_HUB to firmware.
* Remove status while sending on_scan_event to user space.
* Add support for SCAN_THRESHOLD_NUM_SCANS /
  SCAN_THRESHOLD_PERCENT while sending scan event.

Change-Id: Ib37ce7cef5b3ce9d9ee4ebdc5ea9bcadaad7b695
CRs-Fixed: 960456
2016-08-17 17:06:45 -07:00
Rajeev Kumar
dd3bc6012f qcacld-3.0: Add INI item to control BPF feature configuration
Add INI item to control BPF feature configuration.

Change-Id: Ia110916f5d657db6970f988dab5c3be55074c3bf
CRs-Fixed: 1055033
2016-08-17 17:06:43 -07:00
Rajeev Kumar
ea4eb0b037 qcacld-3.0: Disable suspend/resume unit test framework in Kbuild
APPS suspend/resume support is ready. By default disable WLAN suspend
resume test framework and enable it in engineering builds on need basis.

Change-Id: If1e23ed41987a1f8b40cfae6504f6b69f8a06932
CRs-Fixed: 1055093
2016-08-17 17:06:40 -07:00
Himanshu Agarwal
ec51a5a4c8 qcacld-3.0: Dump more WoW wakeup packet info
Propagation from qcacld-2.0 to qcacld-3.0.

Dump some more info for WOW wakeup packet:
   1) ether_type
   2) proto_type in case of IPV4 and IPV6 packets
   3) src port and dst port in case of TCP/UDP

Change-Id: I1578aa5322af50f0ae43248c48a2f754ea081970
CRs-Fixed: 1043939
2016-08-17 17:06:38 -07:00
Himanshu Agarwal
f951500494 qcacld-3.0: Change print type from %d to %u for unsigned variables
Propagation from qcacld-2.0 to qcacld-3.0.

Change print type from %d to %u for the unsigned variables in
wma_wow_dump_mgmt_buffer and wma_wow_parse_data_pkt_buffer.

Change-Id: I2ea9ae2aa5c6f1bbec65b724de35a0071ea26804
CRs-Fixed: 1038593
2016-08-17 17:06:35 -07:00
Himanshu Agarwal
dd356df33d qcacld-3.0: Dump header info for first mgmt. packet after WOW wakeup
Propagation from qcacld-2.0 to qcacld-3.0.

Dump soem information such as source MAC address, destination
MAC address, sequence number, packet type, subtype and other
important information for the first mgmt. packet after WOW wakeup.

Change-Id: I4f39d93e8aeb243ec3df5cc1a916aec0a1aa4819
CRs-Fixed: 1019037
2016-08-17 17:06:33 -07:00
Himanshu Agarwal
82de9040dd qcacld-3.0: Dump header info for first data packet after WOW wakeup
Propagation from qcacld-2.0 to qcacld-3.0.

Dump some information such as source MAC address, destination
MAC address, sequence number, packet type, subtype and other
important information for the first data packet after WOW wakeup.

Change-Id: I3c83991f56be34412f3f10adf58bd991ecb536ca
CRs-Fixed: 1019037
2016-08-17 17:06:31 -07:00
Nirav Shah
5e74bb81d5 qcacld-3.0: Parse tx packets only once in tx datapath
Classify tx packets at one place and store packet type in
skb cb structure to avoid multiple check to determine
packet type at various layers.

Change-Id: Id2ea9b08bdcbc62b1d96d983d19bcf71becc9c42
CRs-Fixed: 1022454
2016-08-17 17:06:28 -07:00
Nirav Shah
bd36b0690b qcacld-3.0: Changes to support different rx data path
Changes to configure different rx data path rx_thread,
RPS or NAPI through ini parameters. Also added support
for RPS mask setting using cnss-daemon.

CRs-fixed: 1026370
Change-Id: I23ab8fe0f05245b38cf4b37e93da8fd99d4c1f68
2016-08-17 17:06:26 -07:00
qcabuildsw
aedea909b4 Release 5.1.0.23L
Release 5.1.0.23L

Change-Id: I5d82962af91661bd6ab69a36784180e032e99211
CRs-Fixed: 688141
2016-08-17 11:21:48 -07:00
Arif Hussain
e69337b2ca qcacld-3.0: Update wma_get_channels as per the latest draft for 160MHz
as per the latest draft for BSS bandwidth 160MHz, channel frequency segment 2
represents the center channel frequency. Update wma_get_channels to use correct
segment to calculate center channel when operating in 160MHz.

Change-Id: I9a8f2035b590a90415fbc5a0a6608c48bbd5b2e5
CRs-Fixed: 1048793
2016-08-17 11:21:48 -07:00
Prakash Dhavali
6b561685d4 Release 5.1.0.23K
Release 5.1.0.23K

Change-Id: I1af1099fb2be6547036ffc2d60d841d4b4e51af6
CRs-Fixed: 688141
2016-08-17 11:21:48 -07:00
Ganesh Kondabattini
ff05066870 qcacld-3.0: free the memory for ch_list while unloading the driver
qcacld-2.0 to qcacld-3.0 propagation

If unloading the driver at the time __wlan_hdd_cfg80211_stop_ap is
called, free the memory allocated for ch_list before returing
from the __wlan_hdd_cfg80211_stop_ap. Otherwise it will result in
memory leak.

Change-Id: I16ab508f74068f7ca1452c97c6105a1ae6e38ef0
CRs-Fixed: 971886
2016-08-17 11:21:48 -07:00
Masti, Narayanraddi
ab712a7a63 qcacld-3.0: Fix to encrypt broadcast frames
qcacld-2.0 to qcacld-3.0 propagation

Currently, In SAP mode due to incorrect wep key
index broadcast frames are not encrypted.

Fix is to make sure to update default index for
BSS(group) key.

Change-Id: I328855decbad20dbd88b48022e466e4f78f5d722
CRs-Fixed: 932749
2016-08-17 11:21:47 -07:00
Sreelakshmi Konamki
142a2c8fd8 qcacld-3.0: Print correct no.of channels
qcacld-2.0 to qcacld-3.0 propagation

In __wlan_hdd_cfg80211_scan(), no.of channels printed as received no.of
channels from supplicant instead of filtered no.of non DSRC channels.

Fix to update the correct no.of channels

Change-Id: I5f424a043535b0fdcc7886ba062b34fbc2e6dca0
CRs-Fixed: 1036775
2016-08-17 11:21:47 -07:00
Sreelakshmi Konamki
752f5b1338 qcacld-3.0: Fix to remove 11P channels from channel list during scan
qcacld-2.0 to qcacld-3.0 propagation

As per current implementation 11P channels are added to 5G band
as part of driver initialization if FEATURE_STATICALLY_ADD_11P_CHANNELS
is not defined. Kernel has enabled 11P channels due to which it gives
11p channels as part of scan command. This increases the scan time.

Add changes to remove 11P channels from the received channel list
during scan command.

Change-Id: I4ae24a1813ac5d4738022b2f15a93736c2f05978
CRs-Fixed: 1003326
2016-08-17 11:21:47 -07:00
Sreelakshmi Konamki
2e8180d84b qcacld-3.0: Remove 11P channels from channel list in PNO scan
qcacld-2.0 to qcacld-3.0 propagation

Host driver receives 11P channels as part of PNO scan because
kernel enables 11P channels. This increases the scan time.

Add changes to remove 11P channels from the received
channel list in PNO scan

Change-Id: Iede759dfabdc971309f3d1f68411d241f415b422
CRs-Fixed: 1017824
2016-08-17 11:21:47 -07:00
Agrawal Ashish
f156e94f6a qcacld-3.0: Don't return max connection error before doing disconnect
qcacld-2.0 to qcacld-3.0 propagation

In some cases, it is possible that driver get request for connection
from supplicant without getting disconnect for previous connection.
If there are two active session, driver will return the error.
Driver should do disconnect first followed by check for
max concurrency is allowed.

Change-Id: Ie7bf202c47d0282019730448096d91c7dc888e34
CRs-Fixed: 945566
2016-08-17 11:21:47 -07:00
Prakash Dhavali
8080d23b71 Release 5.1.0.23J
Release 5.1.0.23J

Change-Id: I2972bfd1d092b01c9d819afe64c6a14bbaab0de9
CRs-Fixed: 688141
2016-08-17 11:21:47 -07:00
Ravi Joshi
ddce59aeef qcacld-3.0: Fix host debug message flooding for unicast traffic
The debug message was added to identify a case of trying to
send a unicast traffic to an unknown peer. However, as per the
implementation, the debug print becomes always true while
sending unicast traffic in station or p2p client mode.

Integration from qcacld-2.0 to qcacld-3.0.

CRs-Fixed: 1051920
Change-Id: I849317c699ffca1e057c4e59747e08535baca381
2016-08-17 11:21:47 -07:00
Yuanyuan Liu
0de344f3b5 qcacld-3.0: Update pld_soc_info structure
Update pld_soc_info structure with more Hardware information.

Change-Id: I42c0a16ec00c560b1cec1f355db3e15cd15adee5
CRs-Fixed: 1046753
2016-08-17 11:21:47 -07:00
Yuanyuan Liu
6043d3cff2 qcacld-3.0: Allocate memory for wlan_mac.bin
Directly accessing fw->data is not supported on msmcobalt.
It causes system crash due to invalid pointer.
Hence allocate memory and copy the content of
wlan_mac.bin to that memory before accessing it.

Change-Id: Ie10a8ccd3cc16d48fa509ece997f9098fce52c55
CRs-Fixed: 1045912
2016-08-17 11:21:47 -07:00
Yuanyuan Liu
5bdfad7653 qcacld-3.0: Add feature of auto-generate mac address
Auto-generate mac address using device serial number when the mac
address that passed from WLAN FW is invalid and no mac address
specified in ini file and no user defined mac address in wlan_mac.bin .

CRs-Fixed: 1047629
Change-Id: I4ecc901558bc526c99f8b9bdb9442a4d288b313c
2016-08-17 11:21:35 -07:00
Prakash Dhavali
c22e50b46a Release 5.1.0.23I
Release 5.1.0.23I

Change-Id: Iad282778957bfb33ba591b0f3757027e85d51237
CRs-Fixed: 688141
2016-08-13 18:27:35 -07:00
Manjunathappa Prakash
cf26ae6db3 qcacld-3.0: Serialize the freeing LRO descriptors
Add lock to serailize the freeing of LRO descriptors.
Without this double free of LRO descriptors lead to list
corruption.

Change-Id: I0b3c9ddecff0700ac1f6ec44f09c9ddf59997799
CRs-Fixed: 1053657
2016-08-13 18:27:29 -07:00
Vishwajith Upendra
040ecc2df9 Release 5.1.0.23H
Release 5.1.0.23H

Change-Id: I1982d65ac8689527ff23c72a2d96cc529b760fc2
CRs-Fixed: 688141
2016-08-13 18:27:22 -07:00