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
wlan_cfg.h header file was not getting included due to error in the
wlan_cfg path.
Change-Id: I97d706f1c35475e4da4be3d181f2d6c215b531cc
CRs-Fixed: 2005582
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
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
-Initialize and free os private structure in pdev object
-Move vendor command definition to common project.
Change-Id: I9b8501d042afe1c967bfbfef81c01c0382a67531
CRs-Fixed: 2002991
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
This reverts the commit for enabling lock stats feature
with CONFIG_SLUB_DEBUG_ON.
Change-Id: I80df6bb1661c851bda4c0a31c87475d1f2751640
CRs-Fixed: 2009630
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
Define and enable the compile time flags for the
UMAC convergence serialization component
Change-Id: Idf4eede72f7316e9f5c14dd61a98ef7045096316
CRs-Fixed: 2000032
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
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
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
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
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
Enable FEATURE_METERING for SDM660 and SDM630 in Kbuild
to get any IPA stats by Wlan driver.
CRs-Fixed: 1115310
Change-Id: I44ad270735c91b9642612307d223da7f5e25fcf0
Turn on debugfs support only if CONFIG_DEBUG_FS is enabled in kernel
configuration.
Change-Id: I0b63bff056123fe29b0880bbe98da7a5c204fae7
CRs-Fixed: 1083744
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
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
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
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
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
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
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
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
Enable converged control path scheduler for cld driver
and disable legacy cds MC thread scheduler.
Change-Id: I11ecc6a5ee930a1039ed3460b3a3d4e5f7b75ac6
CRs-Fixed: 1095867
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
Change to enable per virtual device transmit descriptors
in Kbuild for lithium.
Change-Id: I2824de2daa5bce7b0ab6993fb7f85ea01ac0849d
CRs-Fixed: 1089685
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Kbuild contains several macros in CDEFINES that are no longer used
Removed these macros from Kbuild file
Change-Id: Ib34ada0b2a07b9d428e9b29ad13ce5fe0302d461
CRs-Fixed: 1023225
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
Add new files for supporting NAN data path feature.
Propagation from qcacld-2.0 to qcacld-3.0
CRs-Fixed: 962367
Change-Id: If12d15789659d04559a9d65d6b7016d4cc595fcf
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
Add ini parameter and feature flag for
DPTRACE to enable/disable as per requirement.
Change-Id: I80db65adb7b8e82d5ea75cceac742fd229d7a2b5
CRs-Fixed: 1008087
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
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
Update TSF feature for vendor command QCA_NL80211_VENDOR_SUBCMD_TSF
to support TSF operations.
Change-Id: I89abf14b9b7d8ee8fe1c12f7684c87e4dee9bfb0
CRs-fixed: 997799
Clean up bmi_2 related code. These code are hardware/platform
specific which is no longer supported.
CRs-Fixed: 1001252
Change-Id: I783f4a411044268d24ba660ce9f10dabe0cce8bf
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
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
Enable "tx flow control v2" for SNOC.
Acked-by: Orhan K AKYILDIZ <oka@qca.qualcomm.com>
Change-Id: Ifaca9c97d78e6b09876e3d0a7a9e85d763e67e09
CRs-Fixed: 999422
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
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
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
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
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
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
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
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