Commit Graph

137 Commits

Author SHA1 Message Date
Dustin Brown
8b28e08535 qcacld-3.0: Enable unit-test suspend/resume for SLUB builds
Enable unit-test suspend/resume ioctls for all SLUB builds, for a
better out-of-the-box debug experience.

Change-Id: Iab6662a39125371ab700c8482e06cd98a3d171a5
CRs-Fixed: 1098034
2016-12-08 07:47:44 -08:00
Rajeev Kumar
97767a0297 qcacld-3.0: Define init-deinit basic framework for phase 3 convergence
Define basic dispatcher framework for init/deinit. Each individual
component is supposed to define its init/deinit primitives and replace
dummy place holder primitives.

Change-Id: I35140ea7af03ce568e1732435458caf78ab28996
CRs-Fixed: 1095741
2016-12-01 19:19:17 -08:00
Ravi Joshi
fc2ed78279 qcacld-3.0: Disable PKTLOG & enable polling for DP on Lithium
For Napier end-to-end bringup:
 -- Disable PKTLOG, this is not ready on the new HW design
 -- Enable timer based polling on DP UMAC rings
 -- Modify cdp_soc_attach() to attach to Lithium DP

Change-Id: I096644887848dd8eae75bf4c497acc0b19f89833
CRs-Fixed: 1074199
2016-11-26 13:35:43 -08:00
gbian
e55c956d40 qcacld-3.0: Add sanity check for tx desc
qcacld-2.0 to qcacld-3.0 propagation

Add sanity check for tx desc to avoid crash if firmware report the invalid
msdu id to the host.

Change-Id: I5a339e81f3de882b5f7cc42b0628ea4738141c58
CRs-Fixed: 1071620
2016-11-24 20:21:17 -08:00
Houston Hoffman
a0f93495d3 qcacld-3.0: Only compile QCA6290 registers for lithium
QCA6290 is part of the Lithium chipset family. Without
support for lithium, compiling in the register deffinitions
for QCA6290 does not make sense.

Change-Id: Id251a931287d2662e0b910da299c12e9d45b719c
2016-11-22 15:35:00 -08:00
Leo Chang
395cbb57fa qcacld-3.0: clean up build options fit into emulation platform
Introduced emulation specific flag

Change-Id: I6783f43974274ff8c9d0265133339a8d8a33329b
CRs-fixed: 1086846
2016-11-21 15:20:10 -08:00
Aravind Narasimhan
4ed314d52c qcacld-3.0: Kbuild change to build QCA6290 register definitions
Add qca6290defs.c and define QCA6290_HEADERS_DEF

Change-Id: I0c583542fc18f28c4a9da1f804aa33227dfbdda8
CRs-Fixed: 1089874
2016-11-19 19:32:19 -08:00
Leo Chang
5f7a1e0299 qcacld-3.0: enable wifi 3.0 build
Enable wifi 3.0 compile and feature sets

Change-Id: Ifbff91bfd97eaeaef50b5caed902bb24e1034f3c
CRs-fixed: 1086846
2016-11-17 19:13:20 -08:00
Yue Ma
e6a7a32b00 qcacld-3.0: Enable to use CNSS2 platform driver
Enable the flags to use CNSS2 platform driver for host driver.

Change-Id: I18996443ab8e7c24fb65b6003cfc368b664b5837
2016-11-16 16:37:49 -08:00
Yue Ma
e93d52557a qcacld-3.0: Remove obsolete codeswap feature
Codeswap feature is introduced for a WLAN chipset which is already
cancelled. It is no longer used in host driver. Remove the feature
to avoid any confusion for future development.

Change-Id: I70ae291ded2d2e290408e2f5b177e872f1f3d7e8
CRs-fixed: 1082183
2016-11-03 17:54:05 -07:00
Srinivas Girigowda
6147c58dff qcacld-3.0: Replace DEBUG macro with WLAN_DEBUG
This is a qcacld-2.0 to qcacld-3.0 propagation.

pr_debug() should not appear by default in kernel log (kmsg).
DEBUG is a kernel macro, since host driver is using the same name macro,
pr_debug log statements are appearing in kmsg.

Fix this by moving the code under DEBUG to WLAN_DEBUG and
remove DEBUG macro from Kbuild.

Change-Id: I5bb385f91f9b6ba15629a5878625fefc21d4a7e1
CRs-Fixed: 1003261
2016-10-19 10:45:28 -07:00
Mohit Khanna
e7a4357688 qcacld-3.0: Use correct flag to compile USB-PLD file
Currently we are using different flags to enable compilation of pld_usb.c
and one to enable/disable PLD USB stub functions. Use the same flag for
both cases - CONFIG_PLD_USB_CNSS

Change-Id: Icc89405d785f3fc0ebc4a97d234013ac86ebd068
CRs-Fixed: 1076326
2016-10-17 21:58:34 -07:00
Padma, Santhosh Kumar
d7cc079983 qcacld-3.0: Add changes for DISA certification
Add changes to parse DISA parameters received from
user space and pass them to firmware for firmware
to encrypt data and send back to driver. Also, add
changes to print encrypted data received from firmware.

Change-Id: Ic6928a93f799c47518fbbad96564062f595287dd
CRs-Fixed: 1064970
2016-10-04 12:40:51 -07:00
Jeff Johnson
a6300253f0 qcacld-3.0: Enable Green AP feature on msmcobalt
Currently the Green AP feature is only enabled on mobile router
platforms. Enable it on the msmcobalt platform as well.

Change-Id: Ib5000b2201cc2c7bd88e3d322b186afcdb0a72e3
CRs-Fixed: 1072412
2016-10-04 12:07:01 -07:00
Poddar, Siddarth
eefe348b69 qcacld-3.0: Store pktlog events when pktlog is enabled by default in INI
Host should not honor any vendor pktlog disable command
if NO vendor pktlog enable command is sent previously.

Currently, vendor sends pktlog disable command without sending enable
command during init and because pktlog is enabled in ini by default,
Host sends the pktlog disable command to firmware which is not as expected.

To fix this, host uses reserved flag in wifi_start_log to distinguish
vendor command from iwpriv or pktlog conf tool command and vendor disable
pktlog command will be sent to firmware only when vendor pktlog enable
commands is sent previously.

Moreover, pktlog INI enable by default and Pktlog buffer size are now
controlled using a macro FEATURE_PKTLOG depending on build variant.
For production/user build, pktlog is default disable and buffer size is
1 MB, whereas for dev build, pktlog is default enable and buffer size is
10 MB.

Change-Id: If64cd522e91cbe9a6d94d8626eb758282fcfd1bd
CRs-Fixed: 1072584
2016-10-03 17:39:04 -07:00
Agrawal Ashish
b141b09b36 qcacld-3.0: Add feature flag for DSRC feature
qcacld-2.0 to qcacld-3.0 propagation

Currently DSRC feature is compiled for all the
targets even if DSRC is not required.
Fix to protect DSRC changes with DSRC enabled feature.

Change-Id: I2e6f975366e1de8aa8afb818a073e1591f76d7fb
CRs-Fixed: 1053362
2016-09-21 17:02:26 -07:00
Sandeep Puligilla
0e64b614b8 qcacld-3.0: Enable HT20/40 coexistance functionality
Enable HT20/40 co-existance functionality.

Change-Id: Id096f174f63280f55ad7c89c74416434d9309170
CRs-Fixed: 1060104
(cherry picked from commit 11e46bd4cf480721b203c01487a5231579963ab6)
2016-09-11 17:53:21 -07:00
Orhan K AKYILDIZ
c16426aaef qcacld-3.0: Kbuild change as hif_napi_cpu changes moved to hif_napi
Remove compile dependency for hif_napi_cpu.c

Change-Id: Icf25c3df738a548f3e8cd312fa8dfcfaa3e7a031
CRs-Fixed: 1064917
2016-09-11 17:40:51 -07:00
Orhan K AKYILDIZ
1481aff562 qcacld-3.0: Add multi-queue NAPI function
Add throughput policy handler which triggers irq/CPU mananagement
functions as required.
Adapt NAPI enablement code to recent changes to the init sequence.
Add to the new files to build.

Change-Id: I8c16667a08982e419c2f2152cf31afcd3a535eb4
CRs-Fixed: 1064917
2016-09-08 21:31:49 -07:00
Houston Hoffman
1158c0a444 qcacld-3.0: Enable runtime pm compilation by default
Compile in runtime pm code for mcl. Maintain compilation
of runtime pm for future product lines and discrete chipsets.

Change-Id: Ieb34a64bf4624e959ae64aafa8ab03085aad9164
CRs-Fixed: 1044155
2016-09-05 01:23:17 -07:00
Deepak Dhamdhere
f2a7d8be0e qcacld-3.0: Use OkcEnabled .ini flag to control firmware OKC
Turn off opportunistic key caching (OKC) in firmware based on
"OkcEnabled" parameter in WCNSS_qcom_cfg.ini.
It is enabled by default and can be turned off with value 0.
Remove FEATURE_WLAN_OKC compilation option because OKC is always
compiled in for cld3.0. Remove underlying empty routine
cb_notify_set_okc_feature_enabled().

CRs-Fixed: 1057181
Change-Id: I174e860abef0532d62517635fe56927d8c3c9fd3
2016-09-02 21:27:00 -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
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
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
Krishna Kumaar Natarajan
bbbf2ef17b qcacld-3.0: Remove unused data structures related to OEM message
Remove unused data structures related to OEM message

Change-Id: I33c5190b78ffff2bf160e57a6edaf4b67189062c
CRs-Fixed: 1038872
2016-08-04 12:35:34 -07:00
Rajeev Kumar
a78a0a4578 qcacld-3.0: Add unit test framework to validate WLAN suspend/resume features
WLAN suspend/resume feature has tight dependency on APPS platform
suspend/resume support. On new targets APPS suspend/resume is not
supported until target is feature complete. In absence of APPS
suspend/resume support testing WLAN offload features become
difficult. Add unit test framework to test WLAN suspend/resume
features using private IOCTL command by simulating APPS
suspend/resume behaviour.

Trigger WLAN suspend:
iwpriv wlan0 wlan_suspend 0 0

To resume WLAN run a ping test from access point side and very 1st
ping request unicast packet should trigger wake up.

If FW is not waking up APPS then use below command to do a manual
wake up:

Trigger WLAN resume:
iwpriv wlan0 wlan_resume 0 0

This unit test framework is only for SNOC.

Change-Id: I177a0047f460aa2a305a9e4e46fbfaa94a81dced
CRs-Fixed: 1042205
2016-08-03 18:34:46 -07:00
Manjunathappa Prakash
beeacb1071 qcacld-3.0: Kbuild: Enable LRO
Enable LRO. Depends on kernel LRO feature is enabled.

Change-Id: Idee37eb664046961c26d8619f7eb18c57ac0fb32
CRs-Fixed: 1035499
2016-07-19 18:18:26 -07:00
Sandeep Puligilla
e438cd1f6e qcacld-3.0: Remove unused macros from Kbuild
Kbuild contains several macros in CDEFINES that are no longer used

Removed these macros from Kbuild file

Change-Id: Ib34ada0b2a07b9d428e9b29ad13ce5fe0302d461
CRs-Fixed: 1023225
2016-07-11 18:11:24 -07:00
Poddar, Siddarth
29296fbb1c qcacld-3.0: Add hif-sdio support (Part 8: - HIF SDIO)
Add kbuild changes for HIGH latency and HIF
SDIO changes

Change-Id: I4d886090773a9b19d27a9f68115774b87299d84d
CRs-Fixed: 969334
2016-06-29 21:02:34 -07:00
Jeff Johnson
2b0a7b818b qcacld-3.0: Refactor WLAN_FEATURE_LPSS
Currently in HDD the WLAN_FEATURE_LPSS code is distributed amongst
multiple source files. In order to be more aligned with established
practices refactor most of the feature code into a feature-specific
file .

Change-Id: I7c743f32fd1455fc253a00d69bfc9abb7f6743da
CRs-Fixed: 1018553
2016-06-29 12:11:31 -07:00
Ravi Joshi
a063dd9f69 qcacld-3.0: Create new files for supporting NAN data path feature
Add new files for supporting NAN data path feature.

Propagation from qcacld-2.0 to qcacld-3.0

CRs-Fixed: 962367
Change-Id: If12d15789659d04559a9d65d6b7016d4cc595fcf
2016-06-27 18:17:22 -07:00
Krishna Kumaar Natarajan
e42bb17c5a qcacld-3.0: Disable FEATURE_MEMDUMP in Kbuild
Disable FEATURE_MEMDUMP in Kbuild.

FEATURE_MEMDUMP should be redesigned appropriately for
cld-3.0. Disable this feature until implementation is
complete.

Change-Id: I3190414ff32d8a75b07c2c311e257f4d388ef26d
CRs-Fixed: 1026747
2016-06-23 12:26:33 -07:00
Nirav Shah
1da7768385 qcacld-3.0: Remove PROTO_TRACE feature
Remove PROTO_TRACE feature and add MGMT packet
logging in DPTRACE.

Change-Id: I9bc019bb03e703cb8044cb5d4290fd438b1c3e69
CRs-Fixed: 1008087
2016-06-14 14:28:41 -07:00
Nirav Shah
cc1f1ae340 qcacld-3.0: Add ini support for DPTRACE
Add ini parameter and feature flag for
DPTRACE to enable/disable as per requirement.

Change-Id: I80db65adb7b8e82d5ea75cceac742fd229d7a2b5
CRs-Fixed: 1008087
2016-06-14 14:28:36 -07:00
Yuanyuan Liu
11f526acba qcacld-3.0: Use PLD internal flags
Use PLD internal flags in PLD layer instead of using CNSS/ICNSS
kernel flags.

CRs-Fixed: 1018099
Change-Id: Id32c62ccd1749ef5a38fd11aba6ce6e4fbe84a6e
2016-06-14 14:28:12 -07:00
Manjunathappa Prakash
c8e756412e qcacld-3.0: Enable DEBUG_Rx_RING_BUFFER to keep track of posted buffers
This enables the tracking of posted rx ring buffers. With this we can
identify if host/fw is wrong when we hit below issue:
"wlan: [0:E :QDF] rx hash: htt_rx_hash_list_lookup: no entry found for"
<physical address>

Change-Id: Ib973a2e2a69e881beddea23cdc1d2d994eeb1e12
CRs-Fixed: 864569
2016-06-14 14:28:02 -07:00
Poddar, Siddarth
ef1f30228f qcacld-3.0: Add firmware download support for sdio bus (Part 5 - HIF SDIO)
Add BMI and firmware download support for sdio bus platform.
Refactor fw and bmi download routines to get rid of compile
time bus specific macro.
Refactor allocation and free routines for high latency bus.

CRs-Fixed: 969334
Change-Id: I2c217891d0ca4b503e7388b3ebe2f787e8325af5
2016-06-14 14:27:55 -07:00
Nirav Shah
76291969a5 qcacld-3.0: Add logic in host to detect msdu_id duplication
Add logic in host to detect if host is using
musdu_id which is already in use.

CRs-Fixed: 929428
Change-Id: I10413ed4b5b76e16211aa0cbb9012cfb8f26cae0
2016-05-18 16:33:43 -07:00
Manikandan Mohan
5356c2b387 qcacld-3.0: Add vendor command for TSF operations
Update TSF feature for vendor command QCA_NL80211_VENDOR_SUBCMD_TSF
to support TSF operations.

Change-Id: I89abf14b9b7d8ee8fe1c12f7684c87e4dee9bfb0
CRs-fixed: 997799
2016-05-13 16:20:43 -07:00
Yuanyuan Liu
9a7ba50ddd qcacld-3.0: BMI: Clean up BMI unused code
Clean up bmi_2 related code. These code are hardware/platform
specific which is no longer supported.

CRs-Fixed: 1001252
Change-Id: I783f4a411044268d24ba660ce9f10dabe0cce8bf
2016-05-06 14:51:27 -07:00
Manikandan Mohan
dcc21ba7f6 qcacld-3.0: get tsf from fw
qcacld-2.0 to qcacld-3.0 propagation

Get tsf from fw. Provide ioctl interface cap_tsf/get_tsf.
Driver issue wmi cmd to fw to realize capture/get.
It can be used in station and softap mode. For sta, getting
tsf from connected ap. For softap, it will generate tsf by-
self

Change-Id: I00d30882bce2f49ee3de3fa189e094c04c0d9943
CRs-Fixed: 817527
2016-05-02 23:27:49 -07:00
Yuanyuan Liu
d9f7a36529 qcacld-3.0: Add PLD layer
PLD stands for platform driver. It is a interface between CLD and
CNSS/ICNSS. It hides the CNSS/ICNSS APIs from CLD and provides a set
of common APIs.
Other modules should include pld_common.h if they want to call PLD
APIs.

CRs-Fixed: 979275
Change-Id: I3571fc70f502dc367c65f13b412cd5d37ee41d3c
2016-05-02 23:27:47 -07:00
Houston Hoffman
52ec669089 qcacld-3.0: Fix compilation errors for msmcobalt (2/2)
Fix compilation errors when building for msmcobalt.

Change-Id: I2e1d968e967f493fb927440777d1d01f7e3f66b0
CRs-Fixed: 1006068
2016-04-25 22:56:07 -07:00
Manjunathappa Prakash
fa345994b5 qcacld-3.0: Enable V2 FLOW CONTROL for SNOC
Enable "tx flow control v2" for SNOC.

Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>

Change-Id: Ifaca9c97d78e6b09876e3d0a7a9e85d763e67e09
CRs-Fixed: 999422
2016-04-25 22:55:56 -07:00
Yue Ma
df224b8fb8 qcacld-3.0: Fix conditional logic checking in Kbuild
In msm-4.4 kernel, CONFIG_ARCH_MSM is replaced by CONFIG_ARCH_QCOM,
hence add it to the list so that MSM_PLATFORM can be correctly enabled
for the driver.

Also filter function works in a exclusive way that will causes problem
when several flags are defined at the same time. Fix it so that multiple
flags can be defined.

Change-Id: Ic5445951516c8d2cd79a71aefebd42b3f178c727
CRs-fixed: 1005069
2016-04-25 22:55:40 -07:00
Chandrasekaran, Manishekar
b2d9fa14f4 qcacld-3.0: Enable packet tracker for non performance builds
Enable the packet tracker feature for non performance builds
by enabling the macro QCA_PKT_PROTO_TRACE and set the
default packet tracker log level to dump the DHCP, EAPOL
and management packet details. The necessary log level can
be modified using the ini 'gEnableDebugLog' entry either at
compile time or at run time using the IOCTL 'setDbgLvl'.
The logs are dumped using the same IOCTL 'setDbgLvl'.

e.g.,
To enable all the packet trace features
- iwpriv wlan0 setDbgLvl 0x0f
To dump the packet trace
- iwpriv wlan0 setDbgLvl 9999

Change-Id: I4fe82e0091517f0614baedf620976dd37b94a974
CRs-Fixed: 998642
2016-04-25 22:55:29 -07:00
Yuanyuan Liu
5af44367d5 qcacld-3.0: Enable MSM_PLATFORM for Kernel 4.4
Kernel 4.4 is using CONFIG_ARCH_MSMCOBALT instead of CONFIG_ARCH_MSM.
Enable MSM_PLATFORM flag when CONFIG_ARCH_MSMCOBALT is defined.

CRs-Fixed: 998798
Change-Id: I718560c7925376b1dd3b00bd56724ca67eda92b7
2016-04-20 22:24:22 -07:00
Prashanth Bhatta
6a6a555220 qcacld-3.0: hdd: Refactor wlan_startup (phase 5)
In HDD, hdd_wlan_startup which is called by probe is beast of a
function to maintain. Over time it has grown to such an extent
that it is almost 800 lines of code with in a single function.
Divide the beast into logical smaller functions.

Create separate function for Netlink service init and exit.

Change-Id: I3271784f06ad2a365c4b0ce767a2ba6df67f0b4d
CRs-fixed: 996332
2016-04-20 22:23:28 -07:00
Rajeev Kumar
a4d80b5879 qcacld-3.0: Fix IPA backward compatibility
Fix IPA WDI 1.0 update for overwrite of previous commit and use
only QCA_WIFI_3_0 build flag for qcacld-3.0.

Change-Id: I3bff4a4e10102e97aeb57fb0f67d48933e0bae9b
CRs-fixed: 994144
2016-04-20 22:20:52 -07:00
Varun Reddy Yeturu
bbbbe237f9 qcacld-3.0: Enable compile time enable/disable for roaming
Enable compile time featurization support for both LFR2.0
and LFR3.0 using WLAN_FEATURE_HOST_ROAM and
WLAN_FEATURE_ROAM_OFFLOAD respectively

CRs-Fixed: 978905
Change-Id: Ib5976cd0cd5a6e117a1334bfc73a043e36e25f77
2016-04-17 18:10:33 -07:00
Varun Reddy Yeturu
86459d63ca qcacld-3.0: Isolate roaming related scan functionality
Move the scanning related code which is pertinent to roaming
into a separate file so that any future maintenace would be
easy across different projects

CRs-Fixed: 978905
Change-Id: Ia8c81726eb843d0a5aa89affa89d84d77994932e
2016-04-17 18:10:26 -07:00
Varun Reddy Yeturu
883c4f20f9 qcacld-3.0: Move CSR preauth related code to a separate file
Move the preauthentication related code in the CSR module
into a separate file so that it is easy to maintain
across different projects

CRs-Fixed: 978905
Change-Id: I56e8441f08dec180f080c305ba5c6541302f107c
2016-04-17 18:10:20 -07:00
Varun Reddy Yeturu
4204eed710 qcacld-3.0: Isolate roaming timers into a separate file
Move all the roaming related timers into a separate file
for easy maintenance and management across different projects

CRs-Fixed: 978905
Change-Id: I3bdbf13d9f962af36d74837bf50be7c9a93e824e
2016-04-17 18:09:59 -07:00
Varun Reddy Yeturu
b6ef113b4b qcacld-3.0: Move the code related to sending roam frames to a separate file
Move the routines which help in building and sending the roaming
related management frames into a separate file for easy
maintenance across different projects

CRs-Fixed: 978905
Change-Id: If8e5cbdabef7747e58359961c3b13c577eb3b777
2016-04-17 18:09:54 -07:00
Varun Reddy Yeturu
99ff7f0b1a qcacld-3.0: Move Reassociation utils into a separate file
Move all the reassociation related utilities to a separate
file for easy maintenance across different projects

CRs-Fixed: 978905
Change-Id: I86809ac48659dc91222624fec616bab6533d75dd
2016-04-17 18:09:50 -07:00
Varun Reddy Yeturu
c3843188c5 qcacld-3.0: Move Host based roaming MLM code into a separate file
Separate the host based roaming MLM code into a separate file
to maintain it easily across different projects

CRs-Fixed: 978905
Change-Id: I1fad25ffbaa49bb2380c32ca9612ad46e3bca65c
2016-04-17 18:09:46 -07:00
Varun Reddy Yeturu
dbbb9919e9 qcacld-3.0: Isolate the pre-authentication code into a new file
Move all the pre-authentication related code in LIM to
a separate file so that it is feature specific and easy to
maintain across different projects

CRs-Fixed: 978905
Change-Id: I3ca443139b974b25be8121fd6df040d858693708
2016-04-17 18:09:42 -07:00
Houston Hoffman
57d10c2115 qcacld-3.0: Make CONFIG_ICNSS set the bus to SNOC
Currently HIF_PCI and snoc are not supported at the same time.
Bus should be set to snoc when CONFIG_ICNSS is defined.

Change-Id: I900cb70136a9be5406df05d06419e57ca0fa71be
CRs-Fixed: 989686
2016-04-17 18:09:05 -07:00
Srinivas Girigowda
515a9efb36 qcacld-3.0: Remove FEATURE_WLAN_ESE_UPLOAD compile macro
At present and going forward ESE and ESE_UPLOAD will be the
de-facto approach supporting ESE. Hence there is no need of two compile macros
FEATURE_WLAN_ESE and FEATURE_WLAN_ESE_UPLOAD.

Instead Remove FEATURE_WLAN_ESE_UPLOAD and Keep only FEATURE_WLAN_ESE.

Change-Id: If1a04e95211a0d639db7b60a57a6d5f215d26f4e
CRs-Fixed: 950762
2016-04-17 18:07:30 -07:00
Chandrasekaran Manishekar
068e25eeb8 qcacld-3.0: Enable FEATURE_WLAN_MCC_TO_SCC_SWITCH flag in the driver
Enable feature flag FEATURE_WLAN_MCC_TO_SCC_SWITCH in the Kbuild to
make use of the MCC to SCC switch feature. The resulting errors in
compilation are fixed along with some enhancement in the debug logs
in this feature path

Change-Id: I0ddb2f371c28ade6d8fc9ea12ba104a99394827f
CRs-Fixed: 986079
2016-04-17 17:54:28 -07:00
Sandeep Puligilla
2111d3c9b6 qcacld-3.0: SAP DFS-3 channel selection suppport for 80+80MHz/160MHz
Add support for setting channel width for CSA and modify the
SAP DFS channel width fallback algoritham to support DFS for
80+80Mhz and 160Mhz bandwidth. Also, compile out channel matrix
restriction from channel selection process after radar
indication is received for newer platforms and only compile
for older platforms

Change-Id: I771fc162b18aa1e485c513046a265b2d94612972
CRs-Fixed: 964262
2016-04-17 17:05:13 -07:00
Kiran Kumar Lokere
9a733a7fcc qcacld-3.0: Remove WLAN_FEATURE_11AC feature flag
Remove WLAN_FEATURE_11AC feature flag

Change-Id: I8c521502a44f2e8a0647843cd7a972497e900c17
CRs-Fixed: 980682
2016-04-13 21:51:25 -07:00
Yue Ma
b8f2bb50a4 qcacld-3.0: Enable some features depending on ICNSS platform driver
Currently some features depending on platform driver are only enabled
when CNSS driver is enabled. Enable these features as well when ICNSS
driver is enabled.

Change-Id: I9c5296e888f81fcd40101f87d289f60f40f299e7
CRs-fixed: 979523
2016-04-13 21:51:25 -07:00
Amar Singhal
e4f28eedfd qcacld-3.0: Re-arrange regulatory code.
Re-arrange core regulatory code between HDD and CDS
layers. Move the OS dependent code to HDD.

Change-Id: I8ac26a48d0e8d613b2f6c23fd764e5cf94365c39
CRs-Fixed: 856727
2016-04-13 21:51:25 -07:00
Deepak Dhamdhere
4fc968d17f qcacld-3.0: Remove WLAN_FEATURE_VOWIFI_11R option from WMA
Conditional compilation option WLAN_FEATURE_VOWIFI_11R is always
defined in cld3.0 and underlying code is permanent in the driver.
Hence, remove #ifdef WLAN_FEATURE_VOWIFI_11R check from WMA source
code.
Remove -DWLAN_FEATURE_VOWIFI_11R compilation flag from Kbuild.

CRs-Fixed: 960105
Change-Id: Idbcea2faf9aa31ef62920ef322d6de61378198a6
2016-04-13 21:51:23 -07:00
Deepak Dhamdhere
641bf32b43 qcacld-3.0: Remove WLAN_FEATURE_VOWIFI conditional compilation
Remove #ifdef WLAN_FEATURE_VOWIFI from host driver source code.
It has alwasys been defined in Kbuild and underlying features
will be permanent in cld3.0. Those features are 11r radio
resource measurement, beacon report, link report, neighbor
report and power constraint.

Please note that WLAN_FEATURE_VOWIFI_11R is used for different
purpose and it is not removed in this change.

CRs-Fixed: 958729
Change-Id: Icd80e9cce08c4662e86ccda94491c1fc22c5756d
2016-04-13 21:51:22 -07:00
Dhanashri Atre
12a0839cd6 qcacld-3.0: Data path changes to use converged APIs (Part 1)
Change the data path and external modules to use the new
converged common data path APIs.

Change-Id: Ifb48178efd012b6ad9ea6f6d5230d0a809922b1c
CRs-Fixed: 994638
2016-04-01 15:46:10 -07:00
Govind Singh
0fea23a7a9 qcacld-3.0: Fix Kbuild changes for common wmi layer
Fix Kbuild changes to compile converged wmi layer.

Change-Id: I2ada3e63d798402b326a291ffbe8b6da2afa3f14
CRs-Fixed: 976998
2016-03-28 03:48:28 -07:00
Govind Singh
9fcc1610b4 qcacld-3.0: Add Kbuild changes for common wmi layer
Add kbuild changes to compile converged wmi layer.

CRs-Fixed: 976998
Change-Id: If3372e89b5cc1922c499cf553759281dfeaacaf2
2016-03-28 03:48:16 -07:00
Houston Hoffman
b61b9b1dcb qcacld-3.0: Add dummy.o to kbuild
Add a file to contain dummy functions for hif.

Change-Id: Ief06d0913eac0a38d6c188460925c6a7ca989f85
CRs-Fixed: 986480
2016-03-24 11:58:49 -07:00
Houston Hoffman
9a547dc0bc qcacld-3.0: Skip bmi and ramdump at runtime
Need to support SNOC and PCI dynamically.
Core BSP code is responsible for SNOC firmware
loading and crash dumps.

Change-Id: Ia16076809f2b74be6f32ad5015b79b1fe2c13ca3
CRs-Fixed: 986480
2016-03-24 11:58:36 -07:00
Houston Hoffman
1edffd327b qcacld-3.0: Support simultaneous mutlibus in kbuild
Make the kbuild support multiple bus types at the same time.

Change-Id: I3ac6ea75b9495681ce0b3fc65ed4999f19cf5a6d
CRs-Fixed: 986480
2016-03-24 11:58:31 -07:00
Prashanth Bhatta
7e58dd3820 qcacld-3.0: Kbuild: Build with qca-wifi-host-cmn
With common code is separated into qca-wifi-host-cmn project, add
Kbuild instructions to build along with qca-wifi-host-cmn project.

Change-Id: Ie28d348ed6874e5b2ee0d1fb8d9451513db9771a
CRs-fixed: 978124
2016-03-24 11:58:28 -07:00
Deepak Dhamdhere
26bda45b30 qcacld-3.0: Remove WLAN_FEATURE_VOWIFI_11R_DEBUG option
Conditional compilation option of #ifdef WLAN_FEATURE_VOWIFI_11R_DEBUG
is used to enable certain roaming logs. It has always been defined,
thus these logs are enabled by default.
Remove it from all the code to always enable those logs.

CRs-Fixed: 936683
Change-Id: I23bba225ce69311d416e6d847c398840919c43aa
2016-02-08 15:50:46 -08:00
Deepak Dhamdhere
f9714216c5 qcacld-3.0: Remove some LFR compilation flags from Kbuild
The condition #ifdef WLAN_FEATURE_LFR is used to include some of
the roaming code. It has been defined for all the recent driver
builds. Roaming code underneath is permanent part of the driver.
Similarly code under WLAN_FEATURE_NEIGHBOR_ROAMING is permanent
part of the driver.
Remove FEATURE_WLAN_LFR and WLAN_FEATURE_NEIGHBOR_ROAMING compiler
flags from Kbuild script.
All the instances of above flags are presumed to be removed
from the driver source code prior to this change.
Remove WLAN_FEATURE_NEIGHBOR_ROAMING_DEBUG compiler flag from
Kbuild and csr_neighbor_roam.c and permanently enable roaming
debug logs.

CRs-Fixed: 936683
Change-Id: Iec251c2a4439ab3d492d9700d242aad401a0dbe0
2016-02-08 15:50:46 -08:00
Dhanashri Atre
48c2ae6f89 qcacld-3.0: Fix fw statistics parsing on the host
For iHelium, the flag AR900B is defined in the firmware however
it is not defined on the host. This is causing a mismatch in the
statistics structure between the host and the firmware.
Temporarily enable this flag on the host. Eventually, this flag will
be replaced by a iHelium specific flag on both the host and the firmware

CRs-Fixed: 964909

Change-Id: I1a13db22448a099ea51602108eb5626e878e2c2e
2016-02-08 15:50:44 -08:00
Amar Singhal
fda6edaffa qcacld-3.0: Remove FEATURE_STATICALLY_ADD_11P_CHANNELS
FEATURE_STATICALLY_ADD_11P_CHANNELS was a temporary solution for
builds that were not defining DSRC channels in db.txt. That
restriction no more holds true. Also correct the list of DSRC
channels in function cds_is_dsrc_channel.

Change-Id: I1146ec9702a8eec801b635a276e981962dd42817
CRs-Fixed: 856727
2016-02-08 15:50:42 -08:00
Rajeev Kumar
9c4809ee10 qcacld-3.0: Enable 11 AC TX compact feature for adrastea
Enable 11 AC TX compact feature for adrastea core to achieve
better TX throughput numbers

Change-Id: I4e66328e01a348ccf0e5519a62181e2aeeaa40fe
CRs-Fixed: 962336
2016-02-08 15:50:39 -08:00
Manikandan Mohan
fba8e0dc26 qcacld-3.0: Add IPA UC WDI 1.0 backward compatibility
Update qcacld-3.0 for IPA UC WDI 1.0 backward compatibility for
Rome WIFI device.

Change-Id: I33084efd6dd3434d1f6baec49de43fab75c63e7f
CRs-fixed: 952114
2016-02-08 15:29:31 -08:00
Ravi Joshi
61c3c7a927 qcacld-3.0: Interfacing files for LFR Subnet Detection support
Add interfacing files and configuration options to enable
LFR subnet detection feature support.

Change-Id: I46756dfb2dd8071fd2bb762038414709e6212c1c
CRs-fixed: 876335
2015-12-28 22:35:54 -08:00
Rajeev Kumar
321a19ac35 qcacld-3.0: Enable athdiag debug support for SNOC devices
- Athdiag debug support is enabled for PCIe devices but disabled
  for integrated SNOC devices like iHelium.
- Enable athdiag debug feature support for SNOC devices as well.

Change-Id: I73ce74286bf59147e45868e424de4ee1bc858ca0
CRs-Fixed: 948890
2015-12-28 22:20:26 -08:00
Nirav Shah
6ea4ca5f0d qcacld-3.0: Remove per vdev tx descriptor pool
Remove per vdev tx descriptor pool feature as
it is applicable only for High Latency.

CRs-Fixed: 916724
Change-Id: I22ab3dd187518790694356bdde8475b194845bf5
2015-12-28 14:20:46 -08:00
Nirav Shah
9d7f2e8b79 qcacld-3.0: Enable enahnced flow control
a) Enabled flow control
b) Add small helper functions to avoid duplication of
   code.
c) Fix thermal mitigation unpause issue with flow control.

CRs-Fixed: 916716
Change-Id: Ic02b66d1c23768a1c71dc08ed50dcedd02b647ce
2015-12-28 14:20:46 -08:00
Rajeev Kumar
e0fd9dda71 qcacld-3.0: Enable full rx reorder offload for adrastea
- In current qcacld-3.0 driver full rx reorder offload is dependent
  on HIF_PCI feature flag.
- HIF_PCI feature flag is compiled out for SNOC devices like adrastea.
- Because of RX reorder dependency on HIF_PCI host data path is broken
  on adrastea.
- Enable rx reorder offload for SNOC devices(adrastea).

Change-Id: I445afa57fb5fc45363ca644a35ae15e4af5bf94a
CRs-Fixed: 939890
2015-11-25 17:26:48 -08:00
Sanjay Devnani
cdab59ec76 qcacld-3.0: enable srri/drri on ddr
The SRRI/DRRI can be read from DDR instead of doing an
actual hardware read. This mechanism is compiled out by
default.

Change-Id: I8fc6c8817b5958f3d00b47ccd3dba36b354097e8
CRs-Fixed: 932344
2015-11-23 13:09:08 -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
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