Add support for QCA_NL80211_VENDOR_SUBCMD_GET_RADAR_HISTORY vendor
command. This command will return the current NOL list in driver
and the last Radar detection result in previous SAP active state
(includes CAC state).
Change-Id: I719630c39b89c1813ca05c4356dce627d72d82e2
CRs-Fixed: 2966501
Added flag for HTT HTC tx based completion. currently
packet are freed using htt htc misc list.
Change-Id: I2e7e4d59cadf30f4bb14eaefc045240d1ebc1aaa
CRs-Fixed: 2922547
For some of the stability issues triggered by H.W,
by the time host detects it most of the QDF history
is getting overwritten to avoid this increasing QDF
nbuf history. So that there will be less chance of
events getting overwritten.
Change-Id: Ia4bad1a175976af2e56126b56ae8c92a988e4289
CRs-Fixed: 2942868
Avoid obj mgr logging of get ref API print on console
for MCC as it leads to excessive logging and assert.
Change-Id: I75fb9381a7c122f4d7701888da35c7e38836250e
CRs-Fixed: 2941196
Enable the history support to log Tx descriptors programmed
in Tx and completion HW rings.
Change-Id: I5ce308354714da78baa05500bc73e1a9ec91b958
CRs-Fixed: 2935363
obj_mgr_alert() function is currently used in
wlan_objmgr_iterate_log_del_obj_handle() to print and is causing
spinlock to be held too long and timing out. Thus, increase the
periodicity of LOG_DEL_OBJ_TIMEOUT_VALUE_MSEC to 10 seconds.
Change-Id: I48a7b2ce031393493b9d19c9dd365a725c60284e
CRs-Fixed: 2930279
For api's in wlan_hdd_rx_monitor.h, replace target
specific conditional compilation with feature specific
conditional compilation.
CRs-Fixed: 2819131
Change-Id: I2678192ad5dbb1a4515bd04e67ca23f71f92a2d1
Tx MPDU aggregation is not happening in HE80 11ax connection
resulting in low throughput for HST.
Fix is to enable TX_AGGREGATION_SIZE_ENABLE for HST.
Change-Id: Ieca8464991a6a194d6f02b70fe4972aca288b541
CRs-Fixed: 2925514
IPA_WDI3_TX_TWO_PIPES is added to enable two TX pipes
configuration for IPA WDI 3.0 interfaces.
Enable IPA_WDI3_TX_TWO_PIPES on sdxprairie platform.
Change-Id: I34fe0af56b169ebad9d7bb29b38838dd44503736
CRs-Fixed: 2750082
CONFIG_CNSS_UTILS is controlled in the msm kernel config, while it is
not in the customer kernel.
Since it is a wlan feature, make CONFIG_CNSS_UTILS as wlan driver build
option, so that driver can enable this feature dynamically when building
wlan driver.
Change-Id: Ib8232a67da33e4613524c67cead5b90014fd371d
CRs-Fixed: 2922303
Currently latency detection timer timeout and threshold values are
used as 2 and 1.9 seconds respectively. After going through few
issues, 2seconds found to be too aggressive and hence increasing
these values to 4 and 3.9 seconds respectively.
Change-Id: Ie9314b517a7a8e47460effc86e5b3fb939dcbb33
CRs-Fixed: 2921474
Update the wma structures with the eht capabilities received
from the firmware.
Change-Id: If571ab857e1f71b972655d9d48902b28e3974b1e
CRs-Fixed: 2911863
As part of 11be enhancements, firmware will send the 11be hardware
capabilities that are supported by the device. Add new HDD APIs to
store these 11be capabilities in the host driver.
Change-Id: Ib3baa41ea3d8ef2ce49b88e4b48d8bc29556cd66
CRs-Fixed: 2908045
Currently Kbuild handles WLAN_CONFIG_OVERRIDE directives by writing
the overrides into a file and then including the file. This violates
one of the requirements of the Hermetic Build feature which forbids
modifying the source directory. This is also subject to a race
condition where multiple concurrent builds attempt to write to the
file in parallel, and one of the builds ends up consuming the
overrides from both builds.
To avoid these issues update the WLAN_CFG_OVERRIDE handling to no
longer use a file, but to instead just $(eval) the overrides.
Change-Id: Iac159228a82b0a8134e272ce63ed568050e8e6ae
CRs-Fixed: 2917351
KERNEL_SUPPORTS_NESTED_COMPOSITES := y is used to enable nested
composite support. The nested composite support is available in some
MSM kernels, and is available in all GKI kernels beginning with
5.10.20, but unfortunately is not available in any upstream kernel.
When the feature is present in an MSM kernel, the flag is explicitly
set in the kernel sources. When a GKI kernel is used, there isn't a
flag set in the sources. Therefore add logic to set the flag if we are
building with GKI kernel 5.10.20 or greater.
Change-Id: I13cd1a07915e9d187da22259cc61d9481e908e79
CRs-Fixed: 2914541
Update comments for temp change done to enable connection mgr, as
CONFIG_CM_ENABLE will be removed once Connection manager
LFR2 changes are done.
Change-Id: I22bc1f3f9fe5a69206ac496e99a60beb87dc1e36
CRs-Fixed: 2921657
Enable DUMP_REO_QUEUE_INFO_IN_DDR to send cache flush cmd
to REO using cmd: iwpriv wlan0 txrx_stats 34 0
Cache flush cmd will invalidate the h/w cache and ensure
that h/w writes to DDR.
In the cmd callback, the reo status tlvs are processed
and the vaddr of the reo queue desc is used to read the
queue information from DDR and dump it in the host driver logs.
Change-Id: I4521b777d13c490ac687f9ff673182262bc52f62
CRs-Fixed: 2899824
The current implementation of add-wlan-objs does not work correctly
with GNU Make 3.81 which is widely in use. So refine the function in a
manner that works with 3.81 as well as newer versions of Make.
Change-Id: Ic689367cccc16cf6ab23eeeb58665d84c5db3a26
CRs-Fixed: 2903606
Set system state in hif ctx to suspend or resume on
system suspend and resume respectively.
Change-Id: If1904a4fe5c861deed1b35071be10cb8cc8d6407
CRs-Fixed: 2899520
In Kernel 5.4/4.19, CNSS2 will check if the current enumerated
device id matches with the device id in pld_pcie_id_table[]
by calling cnss_wlan_register_driver(). When using ROME, the
enumerated id is 0x3e, but it is not defined in pld_pcie_id_table
if CONFIG_AR6320_SUPPORT is not set. To avoid this issue, add
compilation flag for CONFIG_AR6320_SUPPORT, then set it in your
qcacld build env for ROME chip.
Change-Id: I7b0fee679923402c43487299e31696d847552335
CRs-Fixed: 2906988
wlan_hdd_state_ctrl_param_create() creates a control file that is
used to synchronize the wlan driver with the Wi-Fi HAL in
userspace.
Currently the driver creates the file at the path /dev/<module>.
The WIFI_DRIVER_STATE_CTRL_PARAM configuration item defines the path
that the Wi-Fi HAL uses, and this is /dev/wlan.
So when the driver is built with a module name of "wlan" the file is
created at the expected path. However when the driver is built with a
different name, as is done when TARGET_MULTI_WLAN is enabled, the file
is not created at the expected path.
Therefore change the driver to always create the file at the path
specified in the WIFI_DRIVER_STATE_CTRL_PARAM configuration item.
In addition do not even enable the functionality if the
WIFI_DRIVER_STATE_CTRL_PARAM configuration item is not set
(i.e. on non-Android platforms).
Change-Id: I8a7f0a9b22e3f49d02f896150bd452f80af9c022
CRs-Fixed: 2905381
Remove all of the conditional compilation for pmf since this
feature is mandatory for future scope from protocol point
of view.
Change-Id: Id3a2127e9ecb343ad2a0354dcbc331c22167d7fb
CRs-Fixed: 2852630
This is to enable feature for detection CE tasklet
scheduling delay and credit response delay issue.
Change-Id: I659aa23eabaa28bfb11051bf15e0343c94061b86
CRs-Fixed: 2874867
A recurring issue is that, due to the large number of object files and
the long pathnames to those files, a build of the qca_cld3_wlan.ko may
fail with an E2BIG error. This can occur when a shell command created
by the build system exceeds the max size of a command that the shell
can handle. This usually occurs when linking all of the individual
object files into the final wlan.o.
Object files from the qcacld-3.0 project begin with:
<prefix>/vendor/qcom/opensource/wlan/qcacld-3.0
Object files from the qca-wifi-host-cmn project begin with:
<prefix>/vendor/qcom/opensource/wlan/qcacld-3.0/../qca-wifi-host-cmn
To shorten the qca-wifi-host-cmn paths add the following symbolic link:
qcacld-3.0/cmn => ../qca-wifi-host-cmn
With this in place object files from the qca-wifi-host-cmn project
will begin with:
<prefix>/vendor/qcom/opensource/wlan/qcacld-3.0/cmn
This will save 17 characters per qca-wifi-host-cmn object file.
Change-Id: I104afdc48e5335aa232bac988c4c652144cd4e58
CRs-Fixed: 2893361
Update default values of INI items to most commonly used values
in WCNSS_qcom_cfg.ini file on commercial devices.
Change-Id: Ibf1e22406951855a4e726fb8105913a53d3c33ee
CRs-Fixed: 2874758
As a result of long path names and a large number of source files,
combined with upstream kernel build infrastructure changes, the
qcacld-3.0 build may encounter E2BIG errors when linking the final
wlan.o. To address this problem support for nested composite objects
is being added to the kernel. Update the Kbuild with the logic
required to take advantage of the nested composite support.
Change-Id: Ic6748517a922fc03a43acab2b44133b37e02707a
CRs-Fixed: 2861273
Enable force wake recipe feature DEVICE_FORCE_WAKE_ENABLE
and disable the generic shadow register write feature
GENERIC_SHADOW_REGISTER_ACCESS_ENABLE.
Enable feature HIF_REG_WINDOW_SUPPORT to enable the
windowed register read/write from HIF layer.
Change-Id: Ic19d80b686639eb12a2e0a7c0ebf991740a576e7
CRs-Fixed: 2850592
Enable FEATURE_HAL_DELAYED_REG_WRITE_V2 support for Tx rings
register writes and QCA_OL_DP_SRNG_LOCK_LESS_ACCESS support
for Rx rings register writes, for moselle platforms.
Change-Id: I6b2469d22a37a097fa721269d311c0076c3b89a0
CRs-Fixed: 2873528
Pass a new flag to the Kbuild and add a compile flag
to enable the BUILD_TAG information.
Change-Id: Ic9bc331b64e7cbf627f5f99758f4d556328cda10
CRs-Fixed: 2865654
Currently the qdf_lro.o rule is not located with the other QDF_OBJS
rules, so relocate it so that all of the QDF rules are contiguous.
Change-Id: Ia4d6e133901af900d5f63208e14ac24501ac005e
CRs-Fixed: 2868050
Currently the definitions of the Direct Buffer RX component are
defined in the middle of the WMA component definitions. Relocate these
definitions so that the WMA definitions are contiguous.
Change-Id: I3f83b70a18131a84cb262840103e705862498bc4
CRs-Fixed: 2868049
Currently HTT_OBJS are added to OBJS when CONFIG_LITHIUM is not
enabled. An upcoming change requires that assignments to OBJS be
unconditional, so relocate the condition to wrap the assignment of
HTT_OBJS.
Change-Id: Ifdce8f5ab6b4597156341620ae101ee8be2b4afd
CRs-Fixed: 2868008