Applications in the userspace can sleep on the RTM events from
the driver. One such application waiting of RTM_NEW_LINK indication
does interface up as soon as it recieves the indication, so the
kernel takes rtnl_lock to call the dev_open on the interface.
Load/unload of the driver and dev_open of the interfaces are
synchronized with hdd_init_deinit_lock. So the __hdd_open is waiting
on the hdd_init_deinit_lock which is currently held by the driver
loading context. After registering the interfaces driver goes to
register the netdev notifier which is blocked on the rtnl_lock
currently held by the dev_open resulting in deadlock.
To mitigate the issue register the netdev notifier before the
interfaces are registered.
Change-Id: Ibb0c187a43ad87fa535ff583316af430e1ddf04f
CRs-Fixed: 2078720
sdx/mdm:
no-perf: Enable log to cnss_diag by default, have rich debug log.
Avoid system crash when turn on much log in printk
QXDM can be used too
perf: Disable log to cnss_diag by default for better performance
change-Id: I3b8011b327c78625abe56e9b51167d6ca2e3757f
CRs-Fixed: 2101171
WLAN_NL80211_TESTMODE need to be controlled by CONFIG_NL80211_TESTMODE,
or compiler will throw error, like - API cfg80211_testmode_* not defined.
CRs-Fixed: 2103007
Change-Id: I84536b8527656d8d0d4a0a7961ca8a83e8dd733c
Add changes to add support of sending and parsing
authentication packets based on 80211ai specifications.
Change-Id: I684dbc89945ba3aef3186c872e5e1f7564d7e44c
CRs-Fixed: 2028113
Remove QCA_WIFI_NAPIER_EMULATION flag for
Mohave bringup and cleanup the
necessary code under the emulation flag.
Change-Id: I43fcadc7b5e8743b762526157a5a41c5caecebf1
CRs-Fixed: 2096674
qcacld-2.0 to qcacld-3.0 propagation
Allow device switch to a different channel if the current channel is
congested, using the 11h channel switch announcement.
Change-Id: I1766785017e43f17cc800039b383ee5dabcd6ea5
CRs-Fixed: 2082632
Enable power offload unit test framework for napier emualtion and
SoD builds such that FW low power paging requirement can be profiled.
Change-Id: I961cf7ebfbc529fd1243040aed5d124987ccaed0
CRs-Fixed: 2096444
Add macro protection for HIF CE, it shouldn't include the ce head file
when the module is usb or sdio.
Change-Id: I426d10fdb4fd7e479f0bc683d857feab8d4d80d8
CRs-Fixed: 2090621
Currently Green AP is controlled by CONFIG_MOBILE_ROUTER and other
feature flags. Instead, enable Green AP by default in Kbuild.
Change-Id: I2570076f1dd2663f57630aa9808fbcb33b9b0dd2
CRs-Fixed: 2081715
htt.h FW interface file has missing interface for
WLAN_WDI_IPA_GET_SHARING_STATS_REQ and WLAN_WDI_IPA_SET_QUOTA_ReQ.
Disable IPA until we have them coming from FW file
Change-Id: I0fdec26c6a6b9d5e0f97cb31f344cd6f446b2e53
CRs-Fixed: 2084537
Since wifi chip do not supprot LFR3.0 on SDX20, disable LFR3.0
feature in Kbuild, and fix a compilation error.
CRs-Fixed: 2009403
Change-Id: I16eb3bd68d5564801be9cbcf9db1386cb0e3953b
Add configuration for legacy channel enumeration. This is needed
to conditionally support new dynamic channel enumeration.
Change-Id: Id8ca6a0a0f28de84a4cc0933b466a8b99714aefd
CRs-Fixed: 2048784
MEMDUMP is disabled in Kbuild, Hence the driver memory dump
command is failing.
Enable WLAN_MEMDUMP in Kbuild
CRs-Fixed: 1117348
Change-Id: Ic468a78305a5df409cf95096dfea38cb27aa7c7c
QCA_WIFI_3_0_EMU flag is introduced for IHelium emulation
platform, where wait/error timeouts are kept for larger values.
Remove this flag for production target.
Increase tx completion drain delay to 1sec from 500ms to avoid
unwanted suspend abort.
Change-Id: Ie0633b3a2bbc9e2237039311af7417952961aada
CRs-Fixed: 2047750
Adds support for flow control on convergence branch.
We will have global pool and each vdev coming up will have the
descriptors allocated from global pool. Tx queue is paused and unpaused
internally in host based on the stop and start thresholds.
Changes are added under compilation flag QCA_LL_TX_FLOW_CONTROL_V2.
Change-Id: I0ccb80b0099f39efad52ccd7d47f2709fdee2a93
CRs-Fixed: 2040457
Adding timestamp in version string is causing long compile times
for wlan project. Add option to avoid timestamp so that developers
can avoid long compile times.
Change-Id: Iaa5fd4f432549844ae319451cb43929a2d4b68ea
CRs-Fixed: 2064805
As part of the support for the FIPS certification feature add the
HDD infrastructure.
Change-Id: I76a545c42b10a662db04b5994de100c713a46c59
CRs-Fixed: 2065002
As part of the support for the FIPS certification feature add the
WMA infrastructure.
Change-Id: I7e113cee8ba9a08c2efd1141bef84e43d530cdcb
CRs-Fixed: 2065002
In order to get FIPS certification the driver will need to support a
userspace API and accompanying logic to exercise the FIPS WMI
interface exposed by firmware. Since this logic need not be enabled on
production devices, expose a configuration knob so that it can be
enabled or disabled on demand.
Change-Id: I979be0175ea89e9147b07b222f54a7c3fc23dbd9
CRs-Fixed: 2065002
To map target time to host time, implement a timer
to capture TSF and host time periodically.
The timer will be started when connection state of
sta/p2p_gc being changed from not associated to
associated; and stopped when from associated to
not associated.
Change-Id: I697080b95f01f173beddc038ab9ad89ee394354b
CRs-Fixed: 2057693
Currently, the CONFIG_FEATURE_PKTLOG is not enabled for
statically loaded driver.
The reason for that is enabling of this macro is conditionally
done under KERNEL_BUILD=0.
This commit enables the macro conditionally for
all values of KERNEL_BUILD
Change-Id: I6adc090545589df1a6a91ecc12246daeedec2ebd
CRs-Fixed: 2058745
Add support to read link layer stats via debugfs. This change set
will issue get_req and store the received stats response is debugfs
entry.
Change-Id: If3af9f0a37283583ff011e35c7275a329a6e175d
CRs-Fixed: 2018087
If tx frame is ICMP packet, disable bmps for N seconds to avoid
latency of waking up from bmps.
Change-Id: I91f7748bfca81524637e0e4cc39ace5abf53f7dc
CRs-Fixed: 2044602
The HIF portion of Unit-Test suspend has been refactored. Update HDD to
use the updated Unit-Test Suspend APIs.
Change-Id: Id10f6f5811e836844980b929f2747b1238bcf95d
CRs-Fixed: 2055332
As part of driver init, the version string gets printed. To help in
debugging, also print a timestamp from when the driver was compiled.
Change-Id: Icf064af6a0d84434d239b54603092bf2276df596
CRs-Fixed: 2059303
Add FEATURE_TSO flag in Kbuild to enable the
TSO feature for Lithium based chipsets
Change-Id: Ie26b2b9a191828b3ce833000a7abbb09dd492713
CRs-Fixed: 2042950
1. Add an extra parameter pdev id to
qdf_trace signatures to avoid compilation break.
2. This variable allows to collect records per pdev
for Lithium based chipsets.
3. Set this variable to a default value QDF_TRACE_DEFAULT_PDEV_ID
for older chipsets.
Change-Id: I2f4c2e3525ac0d1d53f1af3db7e43acadf6ab835
CRs-Fixed: 2049412
Currently, the CONFIG_WLAN_POWER_DEBUGFS and CONFIG_WLAN_DEBUGFS
are not enabled for statically loaded driver.
This results in missing subsystem power stats.
The reason for that is the enabling of this macro is conditionally
done under KERNEL_BUILD=0.
This commit enables the macro to be also
conditionally done under all values of KERNEL_BUILD
Change-Id: I2824fdbb438b37ee58a95a6ea889be5e7691bef5
CRs-Fixed: 2033114
Add a 'gHwFilterMode' ini item to control the DTIM mode hardware
filter. This ini item supersedes 'g_enable_non_arp_bc_hw_filter.'
# disable feature (default)
gHwFilterMode=0
# drop all broadcast frames, except ARP
gHwFilterMode=1
# drop all multicast frames, except ICMPv6
gHwFilterMode=2
# drop all broadcast and multicast frames, except ARP and ICMPv6
gHwFilterMode=3
Change-Id: I6bc8ac7585ffd0a62ab1c57558a798df9b63f2ce
CRs-Fixed: 2040420
Record ol rx indication events in a global ol rx indication record
buffer to have history of msdus received, no. of buffers replenished,
etc. in rx indication messages.
Change-Id: I96cf27a209c81208c6f6566b5e57116b2cf233e8
CRs-Fixed: 2012485
Add PMO changes to configure and clear default packet filters
over suspend and resume.
Change-Id: I0089811ae626ff1a79c845acc997f00429ed88ed
CRs-Fixed: 2034398
We want to enable 64-bit DMA support only on a select platforms. If the
flag CONFIG_FORCE_ALLOC_FROM_DMA_ZONE is set on a platform, it indicates
that the platform supports 32-bit DMA only. We can use this flag to
enable ENABLE_DEBUG_ADDRESS_MARKING flag in the WLAN driver. This flag
ENABLE_DEBUG_ADDRESS_MARKING, when enabled, allows WLAN driver
to process DMA addresses > 32 bits.
Disable ENABLE_DEBUG_ADDRESS_MARKING when
CONFIG_FORCE_ALLOC_FROM_DMA_ZONE is set for a platform.
Change-Id: I48afcc240d21fe9486c2bdf0f572b8b8d3e3cd71
CRs-Fixed: 2052030
1. Remove unused variable of type ol_txrx_stats_req
passed through cdp_txrx_stats api to avoid
compilation break.
2. Add dp_stats file to the Kbuild. This file is
used to collect HTT Statistics for Lithium based
chipsets.
Change-Id: I0252c996d47cc866291d25f35eb9bb9e19073a8b
CRs-Fixed: 2050798
Power_management_offlaods is really a long directory name hence rename it
to pmo such that it aligns with existing naming convention. Add Kbuild
changes to support 'pmo' component compilation.
Change-Id: If0b260ee0e2d10e5a506d7c5e96e47d2f0611ead
CRs-Fixed: 2045420
Regulatory parsing code is present in file reg_db_parser.c.
Add this file to regulatory component.
Change-Id: I7fcf9db8b80fdfbef30409575cc1a63d684dded2
CRs-Fixed: 2012415
Limit the detection of non posted rx buffers from FW only to
64 bit DMA address system. For systems, where IPA has 32 bit
DMA address limitation, this debug feature should be disabled.
CRs-Fixed: 2010583
Change-Id: I9a26d0a423acedb068d99f39929029182f7c6fa1
Enable CONFIG_HALT_KMEMLEAK in Kbuild such that panic
can be trigerred on memory leak and issues are debugged
on priority.
Change-Id: Iadc0604f842c7b2d63da65054840499b23990a36
CRs-Fixed: 2030989
Add structure changes for querying WDI-stats, register the callback
functions for IPA to query WDI stats and sets the quota limit
Change-Id: I05d9d50fad735fa0a57c4de23c81461f6e12b648
CRs-Fixed: 1095710
Currently the feature flag is enabled at a wrong place since CDEFINES
will be reset later. Move it to the correct place in order to compile
the feature by default. To enable this feature, the corresponding ini
configs need to be set properly.
Change-Id: I22e3c3ac7c81c12700bfa6bb78cc84c20e3e331f
CRs-fixed: 2023358
Remove legacy policy manager code as part of policy manager moving to host
common.
Change-Id: I6cb9fe12bee3702556c9b52e7ccb7c69c762d8de
CRs-Fixed: 2009818
Change Kbuild to compile in new WIFI_POS component and
route all WIFI_POS OEM request to new component.
Change-Id: Ib0980348d6e50e27de0b5ad859ac378bf983b665
CRs-Fixed: 2003488
Add new dot11mode and update the utility functions to derive
the dot11mode based on the userspace config, INI config and
FW capability.
Change-Id: I5780120ef7bc2b78fd596e937fe14a2c8ad88348
CRs-Fixed: 1073481
Change it since WLAN_P2P_ENABLE easily confused with existed macro
WLAN_FEATURE_P2P. This is the change in Kbuild.
Change-Id: I571cb4c6e8e2b2d185811e1103a8990eb9d4b01d
CRs-Fixed: 2021997
Add support in HDD to update 11ax - High Efficiency(HE) Capabilities
received as part of the target configuration.
Add support for new WNI_CFG global config parameters to be
used for implementing 11AX standard.
Change-Id: I3f0d3af2369157c657ac59676a434dc794f84b19
CRs-Fixed: 1073481
Add support in WMA to receive and store HE capabilities coming
from extended service ready event.
Add support to receive HE capabilities, convert into OTA type of
internal host structure and pass it to the uppper layer as target
config. Add utility funciton for the conversion as well.
Change-Id: If0ceeb3db74be6cf6893b8e74c710863bab8b41b
CRs-Fixed: 1073481
Add WLAN_POLICY_MGR_ENABLE in build file to conditionally enable
Policy Manager code in host common
Change-Id: I879b6a223bed5d77d20a878667308aeb1071e609
CRs-Fixed: 2009818
Currently user space communication functions[cnss diag, PTT socket app]
in host driver uses netlink user sockets which is a security concern from
Linux Android SE policies.
Add support for to use netlink family cld80211 which uses generic
netlink sockets.
Change-Id: I4ea49ac6d7c9381212c93567fdc40f90e04dfba4
CRs-Fixed: 1112784
QCA_CONFIG_SMP should only depend on CONFIG_SMP
Remove other incorrect dependencies.
Change-Id: I6eeba9e98bd7b3cfcce8457f0385da155c6a6e71
CRs-Fixed: 2017603
qcacld-2.0 to qcacld-3.0 propagation
Some WLAN driver feature enabling macros are missing on sdxhedgehog
platform, enabling them in Kbuild file to make sure the driver's
behaviors are the same as on mdm9x50
Change-Id: I018e98dea60c7c73ad119394a1016ef592c6552a
CRs-Fixed: 2014423
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