Commit Graph

137 Commits

Author SHA1 Message Date
Himanshu Agarwal
18d6b8c19b qcacld-3.0: Replace HELIUMPLUS_PADDR64 with HELIUMPLUS
Replace HELIUMPLUS_PADDR64 preprocessor macro with already
existing preprocessor macro HELIUMPLUS.

Change-Id: I4f109fc939e12323565bc05c89cc51dff3f3a7f3
CRs-Fixed: 2006551
2017-03-05 21:26:23 -08:00
Tushnim Bhattacharyya
44939d41fe qcacld-3.0: build file change for policy manager restructuring
Move Policy Manager code to host common

CRs-Fixed: 2009818
Change-Id: Ia69683368f5eee638dcc6f19df9195edb9930130
2017-03-03 13:12:51 -08:00
Yu Wang
66e4ff2fe1 qcacld-3.0: Update prefix for multi-interface with chip name
1. The paths for driver to get ini and fw files
   are incorrect for QCA SDIO chip on Dual-WiFi
   platforms, with wrong prefix or no prefix.
   Correct prefix for ini file, from '<mod_name>'
   to '<chip_name>/'; add prefix '<chip_name>/'
   for fw files.

2. For QCA9377, there is a special cnss API for getting
   fw names, it's cnss_get_qca9377_fw_files().
   Use the right cnss API to get fw files for QCA9377

Change-Id: Ia7616153b6823e9550703e649c7fc21ab306ca07
CRs-Fixed: 2008217
2017-03-02 19:58:56 -08:00
Ravi Joshi
d55b18a8bd qcacld-3.0: Fix wlan_cfg header file inclusion issue
wlan_cfg.h header file was not getting included due to error in the
wlan_cfg path.

Change-Id: I97d706f1c35475e4da4be3d181f2d6c215b531cc
CRs-Fixed: 2005582
2017-03-01 19:01:57 -08:00
Varun Reddy Yeturu
35c07f93a6 qcacld-3.0: Changes to compile renamed files
Make changes to support compilation for the files that have
been renamed. Rename the files from wlan_serialization_legacy_mcl_api
to wlan_serialization_legacy_api to keep it more appropriate.

Change-Id: Id219a9f3e00bef0ed85408539b33d54462bf91b5
CRs-Fixed: 2012863
2017-03-01 16:47:29 -08:00
Mukul Sharma
0cdf8b3ba3 qcacld-3.0: Update Kbuild to suppport PMO functionality in target interface
Update Kbuild to suppport target interface PMO functionality.

Change-Id: I768ba97a738226046510807954b26e722d828111
CRs-Fixed: 2002387
2017-02-28 16:21:45 -08:00
Mukul Sharma
c5de677a6e qcacld-3.0: Enable power manager offload (PMO) in kbuild
Include pmo source and includes files in Kbuild.

Change-Id: I2c636ad080a242183ed70d6ead146dd1efd6b6ec
CRs-Fixed: 2002629
2017-02-28 16:21:34 -08:00
Abhishek Singh
9be07e2ee7 qcacld-3.0: Add Kbuild changes to include converged scan files
Add changes to include converged scan APIs and definitions

Change-Id: I715b3c217d60f45ef621e56f683d6ca855c4b684
CRs-Fixed: 1095299
2017-02-27 22:49:46 -08:00
Ravi Joshi
fa5536fad9 qcacld-3.0: Enable per-PDEV Tx descriptor pool
Napier uses per-PDEV Tx descriptor pool until per-VDEV descriptor
pools are introduced.

Change-Id: I6887d07046045b12e6f3983793eb66ae16f63772
CRs-Fixed: 2005582
2017-02-27 15:05:41 -08:00
Krunal Soni
6ca248aaba qcacld-3.0: Add new legacy serialization file in Kbuild
There is new legacy serialization MCL file added to serialization
module which needs to be compiled for MCL platform and needed to
add reference in SME  module.

CRs-Fixed: 2005532
Change-Id: Id946a62f6e0dec4531deccc83dae6373d396a91a
2017-02-26 02:07:47 -08:00
Rajeev Kumar
b32b8a97f0 qcacld-3.0: Add Kbuild changes to store (ext)service ready in PSOC
Add Kbuild changes to store service ready data in PSOC object.

Change-Id: I7192aea299f2ece8fff5eadd88a775791442283e
CRs-fixed: 2001240
2017-02-23 18:10:20 -08:00
Sandeep Puligilla
fdd201e5b5 qcacld-3.0: Initialize os private structure in pdev object
-Initialize and free os private structure in pdev object
-Move vendor command definition to common project.

Change-Id: I9b8501d042afe1c967bfbfef81c01c0382a67531
CRs-Fixed: 2002991
2017-02-23 03:07:00 -08:00
Mukul Sharma
dad267ec7d qcacld-3.0: Add global_lmac_if support for components
Add global_lmac_if support for components.

Change-Id: I914447dccb1e005e25378d69ace02f06b9b5112b
CRs-Fixed: 2002384
2017-02-22 11:54:05 -08:00
Rajeev Kumar
da2444cda4 qcacld-3.0: Add WMA changes for WMI (ext)service ready convergence
Add WMA changes for WMI (ext)service ready event common parsing
to populate common psoc object with service ready data such that
new components can get service ready data from common psoc object.

Change-Id: I5bc42a7534aebd6877fc02378b2e698d2d021383
CRs-Fixed: 1110768
2017-02-21 22:33:13 -08:00
Ankit Gupta
764d6a928f Revert "qcacld-3.0: Enable lock stats features with CONFIG_SLUB_DEBUG_ON"
This reverts the commit for enabling lock stats feature
with CONFIG_SLUB_DEBUG_ON.

Change-Id: I80df6bb1661c851bda4c0a31c87475d1f2751640
CRs-Fixed: 2009630
2017-02-21 22:33:05 -08:00
Yu Wang
c8a6c49c47 qcacld-3.0: correct the path for qca-wifi-host-cmn in Kbuild
From qcacld30-hl_git.bb/qcacld30-ll_git.bb, qca-wifi-host-cmn
is in the same directory with qcacld-3.0(<src_root>/wlan/),
so correct the path for it in Kbuild.

Change-Id: I5c552d2f89cd7b6832c37d6785cfc5a0d00c795d
CRs-Fixed: 2005755
2017-02-19 20:06:41 -08:00
Varun Reddy Yeturu
269eca1e34 qcacld-3.0: Enable compilation for Serialization
Define and enable the compile time flags for the
UMAC convergence serialization component

Change-Id: Idf4eede72f7316e9f5c14dd61a98ef7045096316
CRs-Fixed: 2000032
2017-02-18 18:55:22 -08:00
Srinivas Girigowda
c1bb1bdcda qcacld-3.0: Move core\utils directory and files to qcacmn
As a part of UMAC convergence, move the core\utils logging
to qcacmn.

Change-Id: I5c17d35e2504c35f00c21755e36d8c9851165547
CRs-Fixed: 1109855
2017-02-17 22:13:13 -08:00
Jeff Johnson
a2d9bb372c qcacld-3.0: Enable HDD Request Manager
The HDD Request Manager is ready for production use, so add it
to the Kbuild.

Change-Id: I4e598e51983475318bc668e786aca690a934bd6c
CRs-Fixed: 2005299
2017-02-16 20:32:33 -08:00
Rajeev Kumar
69d7d490ab qcacld-3.0: Enable object manager reference count debug feature
Object manager provides reference count infrastructure for all 4
common objects: psoc, pdev, vdev and peer. Reference count APIs
provide protection from use after free scenarios by making sure
reference counted object is not freed prematurely while its still
in use. Reference count usage requires certain set of disciplines
from components for example:
1) A component 'C' is responsible for all its reference count
2) A component 'B' can't release reference count of a common object
   taken by component 'A'
3) A component can't release a reference count which it has not
   taken.

Enable reference count debug infrastructure such that wrong APIs
usage can be detected and fixed properly.

Change-Id: I7a5b92fe00a060eee15b74572d2624197b331894
CRs-Fixed: 2006322
2017-02-15 23:56:27 -08:00
Tang Yingying
4c0e83ee98 qcacld-3.0: Disable LRO feature when linux kernel version < 4.4
Currently kernel LRO API is only provided in version 4.4. There will
be compilation error if kernel version < 4.4. Add fix to disable
LRO feature when linux kernel version < 4.4.

Change-Id: I69198e55bb3c4ee7c5844e2b7b55e12cb8075d7c
CRs-Fixed: 1112463
2017-02-15 19:11:21 -08:00
Yu Wang
58e1cad939 qcacld-3.0: fix compilation errors for HL target on MDM
1. sdio related source files are not included due to
   CONFIG_HIF_SDIO is not enabled.
   Enabled CONFIG_HIF_SDIO if CONFIG_ROME_IF is sdio.

2. Paramters for nl_srv_init/nl_srv_exit are incorrect
   if MULTI_IF_NAME is defined.
   Correct the parameters, to align with the prototype.

Change-Id: I4e395e07b12e3b1904cabfa4a40fa10845d8e735
CRs-Fixed: 2004368
2017-02-14 16:28:18 -08:00
Rajeev Kumar
fe98146f84 qcacld-3.0: Remove obsolete NAPIER_CODE feature flag
NAPIER_CODE feature flag is no longer needed and hence
remove it.

Change-Id: Ide612ca55722d8defbee6d37a81ad55ffd0fba5f
CRs-Fixed: 2006308
2017-02-14 14:38:12 -08:00
Houston Hoffman
d4ba43143b qcacld-3.0: Enable lock stats features with CONFIG_SLUB_DEBUG_ON
Enable lock stats feature in non perf mode builds.

Change-Id: I088e216cea64293d206c8a780072d2b53f2c6173
CRs-Fixed: 2004702
2017-02-10 18:10:46 -08:00
Houston Hoffman
06fd5662b2 qcacld-3.0: define CONFIG_SHADOW_V2
Define CONFIG_SHADOW_V2 to continue using shadow
registers for QCA6290.

Change-Id: I342759910950489c53f69874a6e70f371ae04bca
CRs-Fixed: 2004391
2017-02-10 18:10:44 -08:00
Jeff Johnson
b90ab57f0c qcacld-3.0: Fix Kbuild path for wma_ocb.o
When CONFIG_WLAN_FEATURE_DSRC is enabled the resulting build fails
because there is no rule to make wma_ocb.o. The issue is that there is
a typo in the rule, so fix the rule.

Change-Id: I1b724736fcac175b9bf83e4a98878e1333a54b57
CRs-Fixed: 2002874
2017-02-09 15:50:20 -08:00
Mukul Sharma
c3e7a78d8f qcacld-3.0: Add target_if support for components
Add target_if support for components.

Change-Id: I5110460afff7c4f5797b3441719dddf9a37c8a50
CRs-Fixed: 2001969
2017-02-08 22:25:31 -08:00
Rajeev Kumar
39ff01fc84 qcacld-3.0: Remove obsolete cds_mq.h and cds_mg.c files
After control path scheduler componentization cds_mq header and
source files are not needed hence delete obsolete cds_mq.h and
cds_mq.c files.

Change-Id: I9cef1086e805d0e5ea7b377d0a2de3512b452572
CRs-Fixed: 2000240
2017-02-02 18:38:56 -08:00
Dhanashri Atre
33e147e59f qcacld-3.0: Enable MCL buffer replenishment
Enable the MCL buffer replenishment compile flag.

CRs-Fixed: 1116939

Change-Id: Id98504a9324fea76662e261e35d432543a5371bc
2017-02-01 16:23:32 -08:00
Poddar, Siddarth
1bec7aeaa0 qcacld-3.0: Enable FEATURE_METERING for SDM660 and SDM630 in Kbuild
Enable FEATURE_METERING for SDM660 and SDM630 in Kbuild
to get any IPA stats by Wlan driver.

CRs-Fixed: 1115310
Change-Id: I44ad270735c91b9642612307d223da7f5e25fcf0
2017-01-31 23:47:49 -08:00
Mahesh Kumar Kalikot Veetil
c0233a7d73 qcacld-3.0: Add debugfs support flag in Kbuild
Turn on debugfs support only if CONFIG_DEBUG_FS is enabled in kernel
configuration.

Change-Id: I0b63bff056123fe29b0880bbe98da7a5c204fae7
CRs-Fixed: 1083744
2017-01-30 16:06:10 -08:00
Himanshu Agarwal
795b7f756c qcacld-3.0: Inline funcs for mgmt_txrx southbound API's
Use inline functions to access mgmt_txrx southbound API's.
This will remove the need to invoke these directly from the
structures.

Change-Id: I50f71261618fd6812265738597bd6f2968cef692
CRs-Fixed: 1110551
2017-01-27 04:51:43 -08:00
Jeff Johnson
522db00cbf qcacld-3.0: Enable -Wmissing-prototypes
Enable the compiler's -Wmissing-prototypes switch. This will help
catch two types of issues:

1) Implementations which do not include their header file which
   prevents the compiler from verifying that the signature of the
   implementation matches the signature of the prototype.

2) Functions which should be static but which are missing the 'static'
   keyword.

Change-Id: I4f8e45b40e57bdf7bec40e3d72cc48e7bfe15b7b
CRs-Fixed: 1074336
2017-01-23 07:58:17 -08:00
Venkata Sharath Chandra Manchala
5d714d821c qcacld-3.0: Added CONFIG_LITHIUM check for Hal and DP files
Added CONFIG_LITHIUM checks to selectively compile Hal and DP
files only for lithium based chipsets. Also added
QCA_WIFI_QCA6290 define for conditional compilation in
ce_main.c

Change-Id: I9e9aac0070aaf4b8292e9f3a6b0ceb8738d0e696
CRs-Fixed: 1103135
2017-01-18 20:05:45 -08:00
Debashis Dutt
237c6149c9 qcacld-3.0: Add .c files for REO CMD/STATUS ring processing
Add dp_reo.c & hal_reo.c for REO CMD/STATUS ring processing
dp_reo.c implements the logic & hal_reo.c implements the
HW abstractions.

Change-Id: I1150b66d3505101645430a1e64403a20716d1d59
CRs-Fixed: 1103135
2017-01-18 20:05:41 -08:00
Rajeev Kumar
699debfa8f qcacld-3.0: Create object manager API files in HDD
Create HDD object manager API files and move HDD object manager
APIs implementation inside it.

Change-Id: I762c8a4aafb67c35ef1eb07a7efa5b826659754e
CRs-Fixed: 1108557
2017-01-12 10:03:01 -08:00
Himanshu Agarwal
2fdf77a63c qcacld-3.0: UMAC Converged driver init/deinit with mgmt txrx comp
MCL driver interactions with mgmt txrx component in init deinit
of driver. Also, changes to make legacy path to go through mgmt
txrx component for both tx and rx mgmt. frames.

Change-Id: Icf368358fef3b9204bed5195a2502b0ea5f052d8
CRs-Fixed: 1103247
2017-01-10 03:05:58 -08:00
Himanshu Agarwal
b180aede62 qcacld-3.0: Enable UMAC converged southbound interface by default
Enable UMAC converged southbound interface by default by removing
CONFIG_WLAN_CONVERGED_INTERFACE in Kbuild and WLAN_CONVERGED_INTERFACE
based API definitions in wma_main.c.

Change-Id: I3b849192b667e8c2f9fb628355c80b3d817f741a
CRs-Fixed: 1103247
2017-01-10 03:05:54 -08:00
Sridhar Selvaraj
dc400d2572 qcacld-3.0: Add Host Driver support for Chip Power stats debugfs
Implementation of Host driver support to collect chip power stats
from firmware and display the stats in
    "adb shell cat /sys/kernel/debug/wlan0/power_stats".

Change-Id: I19595ebf5a6870a0ee4d3cc2ff47d18eb24d213c
CRs-Fixed: 1045057
2017-01-09 11:21:43 -08:00
Selvaraj, Sridhar
0672a1213d qcacld-3.0: Add support for init/deinit with obj manager framework
Create the psoc, pdev, vdev, peer hierarchy by calling obj manager
API's in driver init/deinit code.

Change-Id: I804fd56fff0f72d69274dda2667efb6b681e4dda
CRs-Fixed: 1097219
2017-01-06 11:40:26 -08:00
Rajeev Kumar
ebb0a73519 qcacld-3.0: Rename control path scheduler from sch to scheduler
Legacy protocol engine already has a module name 'sch' rename
control path scheduler from sch to scheduler to avoid naming
conflict with protocol sch.

Change-Id: I94ce9aa5037aa75319aaad2287116462444c03f4
CRs-Fixed: 1105115
2016-12-27 16:37:40 -08:00
Frank Liu
65b17d9609 qcacld-3.0: Support southbound interface
Attach southbound interface. Each individual component is supposed
to define tx_ops and rx_ops function to attach with southbound.

Change-Id: I622a53ab76bc3bab3774e90569af53ad49b95053
CRs-Fixed: 1096553
2016-12-21 03:12:35 -08:00
Krunal Soni
d32c6bc3fd qcacld-3.0: Enable converged control path scheduler
Enable converged control path scheduler for cld driver
and disable legacy cds MC thread scheduler.

Change-Id: I11ecc6a5ee930a1039ed3460b3a3d4e5f7b75ac6
CRs-Fixed: 1095867
2016-12-14 14:25:00 -08:00
Rajeev Kumar
1705fc275e qcacld-3.0: Add Kbuild changes for control path converged scheduler
Add Kbuild changes for control path converged scheduler.

Change-Id: I62381d9a3ca4d950f9c44223222c68484f856188
CRs-Fixed: 1095867
2016-12-14 14:24:57 -08:00
Samuel Ahn
c9c48ca408 qcacld-3.0: Add support for multiple instances of the host driver
Propagation from qcacld-2.0 to qcacld-3.0.

If the module name is changed to something other than wlan in
Makefile or Kbuild, then MULTI_IF_NAME is defined to be the module name.
When MULTI_IF_NAME is defined, the names for the config files, log files,
and firmware files are prepended or appended with MULTI_IF_NAME. This
prevents file name collisions allowing multiple instances of this driver
to be loaded with different module names.

Change-Id: Id880c5fe423eb0b2a2c01677d8fa7c4a784c74df
CRs-Fixed: 946520
2016-12-14 14:08:37 -08:00
Ashwini Muduganti
7964982baa Rename msmcobalt to msm8998
Change-Id: I55b17306cdcc6f8653e4a72e86a95320b5e27139
2016-12-14 14:07:56 -08:00
Ankit Gupta
120b9b0ca3 qcacld-3.0: Enabling per vdev tx descriptor pool
Change to enable per virtual device transmit descriptors
in Kbuild for lithium.

Change-Id: I2824de2daa5bce7b0ab6993fb7f85ea01ac0849d
CRs-Fixed: 1089685
2016-12-12 13:34:38 -08:00
Houston Hoffman
435cd44d2f qcacld-3.0: Introduce CONFIG_PLD_PCIE_INIT
CONFIG_PLD_PCIE_INIT indicates that pcie initialization
and io remap have allready been done by the platform driver,
and should not be re-done by the wlan driver.
This is to facilitate shared controll between the MHI & wlan
drivers.

Change-Id: I97704076d1efe2a8d980c8f659f05367ca82a5f6
CRs-Fixed: 1097375
2016-12-10 18:07:38 -08:00
Srinivas Girigowda
0a85ccd9aa qcacld-3.0: Enable -Wheader-guard compiler option
This is a qcacld-2.0 to qcacld-3.0 propagation.

Enable the compiler's -Wheader-guard switch. This will help
catch mismatches between #ifndef and #define lines in header guard.

Change-Id: Ic05a829eadbf974598370c494a5cff10201ec600
CRs-Fixed: 1091052
2016-12-09 17:51:59 -08:00
Dustin Brown
cd756941d2 qcacld-3.0: Make RX wakelock duration configurable
Propagation from qcacld-2.0

Change hard coded RX wakelock duration into an ini configuration item.
Only aquire the wakelock for unicast traffic, and if the configured
wakelock item is greater than 0.

Change-Id: I46b946ddfeae510a5446ff4ab012c09e4964a50c
CRs-Fixed: 1068594
2016-12-08 16:39:17 -08:00