Commit Graph

1010 Commits

Author SHA1 Message Date
Jinwei Chen
7fef8c3b3c qcacld-3.0: Add HW cookie conversion support
Add HW cookie conversion support for wcn7850 soc.

Change-Id: I2adedb13bcaeebb1715b391f790b639d422e08f6
CRs-Fixed: 2929512
2021-06-21 17:10:05 -07:00
Liangwei Dong
3ad4f9d78b qcacld-3.0: Handle DFS channel radar history get vendor command
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
2021-06-21 11:12:53 -07:00
Manjunathappa Prakash
3e93ea0127 qcacld-3.0: Enable handling of buf_addr_type desc in dp_rx_err
Enable compile macro to handle buf_type decriptor in dp_rx_err_process.

Change-Id: Ibdec18b9b749f18b1e9d704974f4cbaabbc4e6a7
CRs-Fixed: 2957094
2021-06-09 23:37:54 -07:00
Sandeep Puligilla
07cbc9627e qcacld-3.0: Fix typo to compile MLO manager files
Fix typo to compile MLO manager files

Change-Id: I56c7945617a89e83b181d881e369980084979ef0
CRs-Fixed: 2962992
2021-06-09 03:15:00 -07:00
Manjunathappa Prakash
5eaac03dc9 qcacld-3.0: Add Kbuild support for RX BE/Li files
Add support in Kbuild file to compile RX files for BE/Li targets.

CRs-Fixed: 2891099
Change-Id: I4cf3a2139a41d10f08f9839ce9156cb7484c62e9
2021-06-04 10:43:31 -07:00
Mohit Khanna
9398ceada7 qcacld-3.0: Kbuild changes for target specific DP TX files
Add Kbuild support to compile DP TX files in DP/li and DP/be
directories

CRs-Fixed: 2891099
Change-Id: Ie97cad037b29069b2cdc25555d1c75817079bd93
2021-06-04 10:43:31 -07:00
Rakesh Pillai
e86da7276c qcacld-3.0: Changes to enable BE/WCN7850 flags
Changes to enable compilation for beryllium target(chip WCN7850).

CRs-Fixed: 2888534
Change-Id: I7b3d252fc8550883a2d24b6beb2b78f482f5004b
2021-06-04 10:43:23 -07:00
Sandeep Puligilla
0b5da86b67 qcacld-3.0: Add MLO manager to build system
Add MLO manager files to build system.

Change-Id: I911a4ddbd93e100cb95c71a3e8cd6a5609c97e0b
CRs-Fixed: 2958473
2021-06-03 03:44:16 -07:00
sheenam monga
c1e87af47a qcacld-3.0: Add fature flag to get usable channels
Add feature flag for the feature to get usable channels.

Change-Id: I6dd2360284c395747b55f806caab2a5a44089866
CRs-Fixed: 2947180
2021-05-31 05:35:49 -07:00
Huashan Qu
1557129851 qcacld-3.0: Add host roam preauth handling code for connection manager
Add host roam preauth handling code for connection manager.

Change-Id: Id97d716a6c47ba08b2e8ef5e3ed675c5dcf88ed8
CRs-Fixed: 2954515
2021-05-28 01:46:52 -07:00
sandhu
7ab9c3057e qcacld-3.0: Add flags for HTT HTC tx based completion on lithium
Added flag for HTT HTC tx based completion. currently
packet are freed using htt htc misc list.

Change-Id: I2e7e4d59cadf30f4bb14eaefc045240d1ebc1aaa
CRs-Fixed: 2922547
2021-05-17 18:55:54 -07:00
Manikanta Pubbisetty
5af2169e8f qcacld-3.0: config changes to enable deferred reo qdesc free
Config changes to enable deferred freeing of REO Queue
descriptors feature on WCN6750.

Change-Id: Id7524a8f7de8943b11530e70a842c138cc80bb71
CRs-Fixed: 2940347
2021-05-17 03:10:16 -07:00
Karthik Kantamneni
d16c504bf9 qcacld-3.0: Increase QDF nbuf history for Lithium targets
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
2021-05-12 20:57:44 -07:00
Yeshwanth Sriram Guntuka
2294dad9ba qcacld-3.0: Enable config flag to disable EAPOL intrabss fwd
Enable config flag to disable EAPOL intrabss fwd for Lithium

Change-Id: I23959e38b5cbd845d369bebd6913150eca4551bf
CRs-Fixed: 2876353
2021-05-12 18:42:14 -07:00
Karthik Kantamneni
5f7a749e92 qcacld-3.0: Enable TX HW descriptor history support
Enable TX HW descriptor history support for Lithium targets

Change-Id: I84c079cb28f0e320de5378291a21263b8417372f
CRs-Fixed: 2934910
2021-05-10 09:02:51 -07:00
Gururaj Pandurangi
8d62ca99ce qcacld-3.0: Avoid obj mgr logging on console for MCC
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
2021-05-07 22:53:43 -07:00
Vevek Venkatesan
99c942c15d qcacld-3.0: enable Tx descriptor history in Tx and comp rings
Enable the history support to log Tx descriptors programmed
in Tx and completion HW rings.

Change-Id: I5ce308354714da78baa05500bc73e1a9ec91b958
CRs-Fixed: 2935363
2021-05-06 13:49:36 -07:00
Alan Chen
cb5605b006 qcacld-3.0: Increase periodicity of LOG_DEL_OBJ_TIMEOUT_VALUE_MSEC
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
2021-04-24 11:38:17 -07:00
Amruta Kulkarni
fb99dd2375 qcacld-3.0: Remove target specific compilation
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
2021-04-23 12:54:32 -07:00
Karthik Kantamneni
78bc206db0 qcacld-3.0: Enable REO queue descriptor history
Enable REO queue descriptor history for Lithium based targets

Change-Id: I452726ceb056e880096f72572e562a2d4db7e3b3
CRs-Fixed: 2929956
2021-04-23 04:35:48 -07:00
Yeshwanth Sriram Guntuka
81d513134f qcacld-3.0: Enable TX_AGGREGATION_SIZE_ENABLE for HST
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
2021-04-22 19:43:09 -07:00
Jia Ding
30a01d3b69 qcacld-3.0: Add IPA_WDI3_TX_TWO_PIPES macro
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
2021-04-22 15:25:17 -07:00
bings
b9aa44c349 qcacld-3.0: make CONFIG_CNSS_UTILS as wlan driver build option
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
2021-04-19 13:32:12 -07:00
Bapiraju Alla
83da7ae1f1 qcacld-3.0: Increase latency detection timer timeout and threshold
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
2021-04-19 09:35:57 -07:00
Arun Kumar Khandavalli
061fe45f3c qcacld-3.0: update the eht capabilities received from firmware
Update the wma structures with the eht capabilities received
from the firmware.

Change-Id: If571ab857e1f71b972655d9d48902b28e3974b1e
CRs-Fixed: 2911863
2021-04-19 00:52:34 -07:00
bings
9c55e8a7d9 qcacld-3.0: Add APIs to update 11be target capabilities
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
2021-04-15 22:52:14 -07:00
Mohit Khanna
73a1e0a529 qcacld-3.0: Record pkt history in fisa path
Record per packet history in FISA aggregation path.

Change-Id: I737481343f6c8d19deb57d39adb64f3a10f7d6f7
CRs-Fixed: 2911868
2021-04-14 22:11:36 -07:00
Jeff Johnson
8ccb229505 qcacld-3.0: Kbuild: Update WLAN_CFG_OVERRIDE handling
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
2021-04-13 14:50:40 -07:00
Jeff Johnson
1098e249a8 qcacld-3.0: Enabled nested composites on supported GKI kernels
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
2021-04-13 01:30:58 -07:00
Abhishek Singh
aad0c30f20 qcacld-3.0: Update comments for temp change to enable connection mgr
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
2021-04-13 01:30:33 -07:00
Amruta Kulkarni
810927615f qcacld-3.0: Enable CM feature
Enable connection manager feature flag on mainline.

Change-Id: Ice2d0ac61c770066510e666c1791500f1ce8f8ba
CRs-Fixed: 2913164
2021-04-09 07:33:23 -07:00
sheenam monga
2deb2fb93e qcacld-3.0: Add feature flag to support IGMP offload
Add Feature flag WLAN_FEATURE_IGMP_OFFLOAD to support
IGMP offload feature.

Change-Id: I3a58e66a4e323e03c6d32c02ac1b401f23eb9d3c
CRs-Fixed: 2916022
2021-04-07 21:52:00 -07:00
Nisha Menon
4df6282e58 qcacld-3.0: Enable feature to dump reo queue info in DDR
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
2021-04-07 01:21:48 -07:00
Paul Zhang
41ab8a6492 qcacld-3.0: Kbuild: Refine add-wlan-objs
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
2021-04-05 06:53:30 -07:00
Yeshwanth Sriram Guntuka
43a40f83b0 qcacld-3.0: Set system suspend/resume state in hif ctx
Set system state in hif ctx to suspend or resume on
system suspend and resume respectively.

Change-Id: If1904a4fe5c861deed1b35071be10cb8cc8d6407
CRs-Fixed: 2899520
2021-03-31 01:03:47 -07:00
Kuichu Ni
a3fcc82440 qcacld-3.0: Add compilation flag of CONFIG_AR6320_SUPPORT
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
2021-03-29 03:41:32 -07:00
Jeff Johnson
216957b430 qcacld-3.0: Decouple state control file from module name
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
2021-03-26 21:30:02 -07:00
Subrat Dash
5f7fb344cc qcacld-3.0: Kbuild: Add dp_txrx_wds.o to DP_OBJS
Add following build config options to enable WDS support.
* CONFIG_FEATURE_WDS
* CONFIG_FEATURE_MEC
* CONFIG_FEATURE_MCL_REPEATER

CRs-Fixed: 2894217
Change-Id: I3a97063be6317cbd4d65e0292deaef4116dbd433
2021-03-19 06:49:49 -07:00
Gururaj Pandurangi
9996bc7175 qcacld-3.0: Remove feature flag WLAN_FEATURE_11W for pmf
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
2021-03-18 00:39:42 -07:00
Jingxiang Ge
333dc4602d qcacld-3.0: Add detection for tasklet delay
This is to enable feature for detection CE tasklet
scheduling delay and credit response delay issue.

Change-Id: I659aa23eabaa28bfb11051bf15e0343c94061b86
CRs-Fixed: 2874867
2021-03-16 00:45:13 -07:00
sheenam monga
72c7917fa9 qcacld-3.0: Add support for big data stats
Add support of big data stats in the cpstats
component.

Change-Id: I3642035d9f25237c80b529da78c51bb1ccf0035a
CRs-Fixed: 2868949
2021-03-11 09:48:12 -08:00
Jeff Johnson
e5d65fc87b qcacld-3.0: Use symbolic link to reference qca-wifi-host-cmn
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
2021-03-10 05:23:06 -08:00
Alan Chen
073531fc1e qcacld-3.0: Update default values of INI items
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
2021-03-09 21:06:45 -08:00
Amruta Kulkarni
999081053f qcacld-3.0: Add new files for CM roaming
New files added for handling FW based roaming
in connection manager.

Change-Id: Ibb5b74475699719cb901bf067f5d498ad16e0a60
CRs-Fixed: 2864490
2021-03-02 14:22:26 -08:00
Jeff Johnson
b1dc01e081 qcacld-3.0: Kbuild: Add support for nested composites
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
2021-03-01 18:53:57 -08:00
Nisha Menon
8958f63a28 qcacld-3.0: Enable device force wake recipe in driver
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
2021-02-24 19:35:04 -08:00
Vevek Venkatesan
d478e8a285 qcacld-3.0: enable HAL_DELAYED_REG_WRITE_V2 and LOCK_LESS_ACCESS
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
2021-02-12 05:02:58 -08:00
Aditya Kodukula
f91c461da5 qcacld-3.0: Add flags to the BUILD_TAG
Pass a new flag to the Kbuild and add a compile flag
to enable the BUILD_TAG information.

Change-Id: Ic9bc331b64e7cbf627f5f99758f4d556328cda10
CRs-Fixed: 2865654
2021-02-10 18:20:38 -08:00
Jeff Johnson
fc4dedb7b9 qcacld-3.0: Kbuild: Relocate qdf_lro.o rule
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
2021-02-09 13:02:15 -08:00
Jeff Johnson
33a1bb0eb7 qcacld-3.0: Kbuild: Relocate Direct Buffer RX definitions
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
2021-02-09 13:02:12 -08:00
Jeff Johnson
0f585d216f qcacld-3.0: Kbuild: Cleanup HTT_OBJS logic
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
2021-02-09 13:02:08 -08:00
Jeff Johnson
34130a958f qcacld-3.0: Kbuild: Cleanup HAL_OBJS logic
Currently HAL_OBJS are added to OBJS when CONFIG_LITHIUM is enabled.
An upcoming change requires that assignments to OBJS be
unconditional. Fortunately the assignment of .o files to HAL_OBJS is
already conditional upon CONFIG_LITHIUM so remove the condition from
the assignment to OBJS.

Change-Id: I0dd7ca874561ff6c6cd8ccfdae1775f6dcb9bf12
CRs-Fixed: 2868007
2021-02-09 13:02:04 -08:00
Jeff Johnson
88b2a47d79 qcacld-3.0: Kbuild: Cleanup FWLOG_OBJS logic
Currently FWLOG_OBJS are added to OBJS when
CONFIG_FEATURE_FW_LOG_PARSING is enabled.  An upcoming change requires
that assignments to OBJS be unconditional, so relocate the condition
to wrap the assignment of FWLOG_OBJS.

Change-Id: I6b09d9dfa2553943d3bb4370dc1977106a14a7d5
CRs-Fixed: 2868006
2021-02-09 10:44:21 -08:00
Jeff Johnson
682bab0982 qcacld-3.0: Kbuild: Cleanup EPPING_OBJS logic
Currently EPPING_OBJS are added to OBJS when CONFIG_FEATURE_EPPING is
enabled.  An upcoming change requires that assignments to OBJS be
unconditional, so relocate the condition to wrap the assignment of
EPPING_OBJS.

Change-Id: I69f9b1b707c9475a393f89f2297e90e4ee8d1e5e
CRs-Fixed: 2868005
2021-02-09 10:44:16 -08:00
Jeff Johnson
b437ed67e4 qcacld-3.0: Kbuild: Cleanup DFS_OBJS logic
Currently DFS_OBJS are added to OBJS when
CONFIG_WLAN_DFS_MASTER_ENABLE is enabled.  An upcoming change requires
that assignments to OBJS be unconditional, so relocate the condition
to wrap the assignment of DFS_OBJS.

Change-Id: I0c04087feb76c7fbbaa4231f1c36a83624e54482
CRs-Fixed: 2868004
2021-02-09 07:46:24 -08:00
Jeff Johnson
6b35401675 qcacld-3.0: Kbuild: Cleanup FWOL_OBJS logic
Currently FWOL_OBJS are added to OBJS when CONFIG_WLAN_FW_OFFLOAD is
enabled.  An upcoming change requires that assignments to OBJS be
unconditional, so relocate the condition to wrap the assignment of
FWOL_OBJS.

Change-Id: I103628406108b0ca1d8290f61e379c796a63bce5
CRs-Fixed: 2868003
2021-02-09 05:37:03 -08:00
Jeff Johnson
2b0c93ff71 qcacld-3.0: Kbuild: Cleanup OCB_OBJS logic
Currently OCB_OBJS are added to OBJS when CONFIG_WLAN_FEATURE_DSRC is
enabled.  An upcoming change requires that assignments to OBJS be
unconditional. Fortunately the assignment of .o files to OCB_OBJS is
already conditional upon CONFIG_WLAN_FEATURE_DSRC so remove the
condition from the assignment to OBJS.

Change-Id: I011aa37270b8024d2f558bdb18aac2a02e3c1026
CRs-Fixed: 2868002
2021-02-09 05:36:59 -08:00
Jeff Johnson
7a8e172b6a qcacld-3.0: Kbuild: Cleanup IPA_OBJS logic
Currently IPA_OBJS are added to OBJS when CONFIG_IPA_OFFLOAD is
enabled.  An upcoming change requires that assignments to OBJS be
unconditional. Fortunately the assignment of .o files to IPA_OBJS is
already conditional upon CONFIG_IPA_OFFLOAD so remove the condition
from the assignment to OBJS.

Change-Id: I16217146d44b790298e47516c28e1ce6445ffed6
CRs-Fixed: 2868001
2021-02-09 05:36:54 -08:00
Jeff Johnson
6d2317be05 qcacld-3.0: Kbuild: Cleanup PKTLOG_OBJS logic
Currently PKTLOG_OBJS are added to OBJS when CONFIG_REMOVE_PKT_LOG is
not enabled.  An upcoming change requires that assignments to OBJS be
unconditional, so relocate the condition to wrap the assignment of
PKTLOG_OBJS.

Change-Id: I34b9bea3186e5bda12e7ce0d8a1327383170b6c1
CRs-Fixed: 2868000
2021-02-09 05:36:50 -08:00
Jeff Johnson
59ea3a0289 qcacld-3.0: Kbuild: Cleanup HOST_DIAG_LOG_OBJS logic
Currently HOST_DIAG_LOG_OBJS are added to OBJS when BUILD_DIAG_VERSION
is enabled.  An upcoming change requires that assignments to OBJS be
unconditional, so relocate the condition to wrap the assignment of
HOST_DIAG_LOG_OBJS.

Change-Id: Icdf6898b848f682d9617537394651f533ba81553
CRs-Fixed: 2867999
2021-02-09 03:29:38 -08:00
Jeff Johnson
e142b34639 qcacld-3.0: Kbuild: Cleanup DISA_OBJS logic
Currently DISA_OBJS are added to OBJS when CONFIG_WLAN_FEATURE_DISA is
enabled. An upcoming change requires that assignments to OBJS be
unconditional. Fortunately the assignment of .o files to DISA_OBJS is
already conditional upon CONFIG_WLAN_FEATURE_DISA so remove the
condition from the assignment to OBJS.

Change-Id: I2130b8efe12e5366b40856704d62d000a4e474f4
CRs-Fixed: 2867998
2021-02-09 03:29:33 -08:00
Jeff Johnson
2f8fb00a4b qcacld-3.0: Kbuild: Cleanup ACTION_OUI_OBJS logic
Currently ACTION_OUI_OBJS are added to OBJS when
CONFIG_WLAN_FEATURE_ACTION_OUI is enabled. An upcoming change requires
that assignments to OBJS be unconditional. Fortunately the assignment
of .o files to ACTION_OUI_OBJS is already conditional upon
CONFIG_WLAN_FEATURE_ACTION_OUI so remove the condition from the
assignment to OBJS.

Change-Id: Icf1c4f061286e3ae88344b380deff4bf135143e1
CRs-Fixed: 2867997
2021-02-09 03:29:28 -08:00
Jeff Johnson
09a625b17d qcacld-3.0: Kbuild: Cleanup PKT_CAPTURE_OBJS logic
Currently PKT_CAPTURE_OBJS are added to OBJS when
CONFIG_WLAN_FEATURE_PKT_CAPTURE is enabled. An upcoming change
requires that assignments to OBJS be unconditional. Fortunately the
assignment of .o files to PKT_CAPTURE_OBJS is already conditional upon
CONFIG_WLAN_FEATURE_PKT_CAPTURE so remove the condition from the
assignment to OBJS.

Change-Id: If9083c5ba382e1ae1a638b77e12437a707b69073
CRs-Fixed: 2867996
2021-02-09 01:11:54 -08:00
Jeff Johnson
73ce737cb2 qcacld-3.0: Kbuild: Cleanup FTM_TIME_SYNC_OBJS logic
Currently FTM_TIME_SYNC_OBJS are added to OBJS when
CONFIG_FEATURE_WLAN_TIME_SYNC_FTM is enabled. An upcoming change
requires that assignments to OBJS be unconditional.  Fortunately the
assignment of .o files to FTM_TIME_SYNC_OBJS is already conditional
upon CONFIG_FEATURE_WLAN_TIME_SYNC_FTM so remove the condition from
the assignment to OBJS.

Change-Id: I57fd2c08f6c732018d50a232156e3b29c0fac285
CRs-Fixed: 2867921
2021-02-09 01:11:50 -08:00
Jeff Johnson
0e548d2c4f qcacld-3.0: Kbuild: Cleanup UMAC_GREEN_AP_OBJS logic
Currently UMAC_GREEN_AP_OBJS are added to OBJS when
CONFIG_QCACLD_FEATURE_GREEN_AP is enabled. An upcoming change requires
that assignments to OBJS be unconditional, so relocate the condition
to wrap the assignment of UMAC_GREEN_AP_OBJS.

Change-Id: If3e3a97d39c7f347c2ff91bcd3db86675dcaa664
CRs-Fixed: 2867913
2021-02-09 01:11:46 -08:00
Jeff Johnson
eabfc29ca5 qcacld-3.0: Kbuild: Cleanup UMAC_CRYPTO_OBJS logic
Currently UMAC_CRYPTO_OBJS are added to OBJS when
CONFIG_CRYPTO_COMPONENT is enabled.  An upcoming change requires that
assignments to OBJS be unconditional, so relocate the condition to
wrap the assignment of UMAC_CRYPTO_OBJS.

Change-Id: I28ca48d6876307814ce440a3fe53cb8f8df1d42f
CRs-Fixed: 2867906
2021-02-09 01:11:42 -08:00
Jeff Johnson
56ad171f1c qcacld-3.0: Kbuild: Cleanup DP_OBJS logic
Currently DP_OBJS are added to OBJS when CONFIG_LITHIUM is enabled.
An upcoming change requires that assignments to OBJS be unconditional.
Fortunately most of the assignments to DP_OBJS are already protected
by this feature. Update the logic so that all of the assignments are
protected, and remove the condition from the OBJS assignment.

Change-Id: Icc7d015831d8940bf1d91335be1439a70965801f
CRs-Fixed: 2867900
2021-02-08 22:57:19 -08:00
Jeff Johnson
5e07fdce46 qcacld-3.0: Kbuild: Assign hal_rx_flow.o to HAL_OBJS
Currently hal_rx_flow.o is assigned to DP_OBJS, but since this is a
HAL file, change the assignment to HAL_OBJS.

Change-Id: Ie7c56300d3dd60b52305b5b3c7ace58c6e8cdb57
CRs-Fixed: 2867882
2021-02-08 22:57:15 -08:00
Jeff Johnson
ab72992beb qcacld-3.0: Kbuild: Cleanup TXRX3.0_OBJS logic
Currently TXRX3.0_OBJS are added to the OBJS aggregation only when
CONFIG_WLAN_FEATURE_DP_RX_THREADS is enabled. However only one of the
object files, dp_rx_thread.o, should be controlled by that feature.

Update the logic to conditionally add dp_rx_thread.o to TXRX3.0_OBJS,
to encapsulate all TXRX3.0_OBJS assignments within CONFIG_LITHIUM,
and unconditionally add TXRX3.0_OBJS to OBJS.

Change-Id: I6ceeafeab43a960277a1870daff5566288199ada
CRs-Fixed: 2867843
2021-02-08 22:57:11 -08:00
Jeff Johnson
02b0129806 qcacld-3.0: Kbuild: Refactor ol_txrx_event.o rule
There are currently two different places where ol_txrx_event.o is
added to the final target object list. As part of ongoing Makefile
cleanup consolidate these to a single location.

Change-Id: Id342ae771830f5fd4d65c6c5523c36f1e50bc941
CRs-Fixed: 2867841
2021-02-08 22:57:07 -08:00
Aditya Kodukula
a9f651f6ba qcacld-3.0: Rename the flag QCA_WIFI_NAPIER_EMULATION
To make it generic, rename the flag QCA_WIFI_NAPIER_EMULATION
as QCA_WIFI_EMULATION.

Change-Id: I8e654262a38a7a701a5a34e2bbd5394c8985c65a
CRs-Fixed: 2871313
2021-02-05 12:43:51 -08:00
Vulupala Shashank Reddy
f8d388d249 qcacld-3.0: Add compilation flag of pkt capture mode for lithium
Add compilation flag of packet capture mode for lithium

Change-Id: I0a0cd43d3846761c18224c79068f2ec16179d735
CRs-Fixed: 2845616
2021-02-05 07:00:55 -08:00
Vevek Venkatesan
7ddad6e2cb qcacld-3.0: decouple bw monitor from WDI3_STATS_UPDATE
Decouple BW monitor from WDI3_STATS_UPDATE and add as a
separate feature flag WDI3_STATS_BW_MONITOR.

Change-Id: I77fb5658d995daceaada6a7d64f669da706ead9c
CRs-Fixed: 2868582
2021-02-02 13:08:13 -08:00
Abhishek Ambure
467050ebbd qcacld-3.0: Save hlp info in mlme priv
Host moves hlp info from csr session to mlme priv object. Modules need
hlp info now use hlp info from mlme priv object

Change-Id: Ieffa749635239f72337af685707acccfd666a58a
CRs-Fixed: 2862315
2021-01-27 17:11:25 -08:00
Lihua Liu
eda3d92415 qcacld-3.0: Dump wmi/event record after FW down
On third party platforms. there is no crashdump.
Such logs are helpful for analysis of crash issue.
For debuging purpose, dump wmi cmd/event/credit
record history when PLD_FW_DOWN event is received.

CONFIG_DUMP_LOG_BUF_CNT is used to limit the number
of logs. it's 0 by default on the platforms like LA
where crashdump is available.

Change-Id: I136e39322b32ff43b88765f390a7393432ca7daa
CRs-Fixed: 2857691
2021-01-25 04:22:22 -08:00
Chaoli Zhou
b4d79ad59f qcacld-3.0: Support disabling mac addr update from wlan_mac.bin
As for msm-4.14, it has kernel panic with API
request_firmware if not provide wlan_mac.bin.
So in order to fix search wlan_mac.bin failure
issue, export one feature flag to disable
updating wlan mac address from wlan_mac.bin,
which should be feasible for different target

Change-Id: I6a50288c90229e6edbc10b543aec443828310d68
CRs-Fixed: 2850309
2021-01-21 23:23:47 -08:00
Rajasekaran Kalidoss
744ae542a0 qcacld-3.0: Add support for ctrl path stats infrastructure
Implement support for sending new control path stats
infrastructure via WMI_REQUEST_CTRL_PATH_STATS_CMDID and
WMI_CTRL_PATH_STATS_EVENTID in cp stats component. Also add
support for TWT Get statistics through this new method.

Change-Id: I62b3a525cde797cd5b809ca9e8e6c91d5651c6b4
CRs-Fixed: 2851016
2021-01-21 23:23:43 -08:00
Manikanta Pubbisetty
ccb7f24a64 qcacld-3.0: add history for FST locking
Adding history to track the FST lock/unlock events; this
would come in handy in debugging deadlock issues.

Change-Id: I40f783e72e516330fdf71ac91553bc7c4338b82a
CRs-Fixed: 2854397
2021-01-21 17:04:27 -08:00
Alan Chen
c281068c27 qcacld-3.0: Add feature flag option for QDF_TIMER_MULTIPLER_FRAC
Add feature flag config option for QDF_TIMER_MULTIPLER_FRAC

Change-Id: Ie53ec703965311235971340251fe92fcb980a0d5
CRs-Fixed: 2855518
2021-01-19 23:24:17 -08:00
Rajeev Kumar
e6534e9442 qcacld-3.0: Remove date and time from build tag
To improve build time performance remove date and time
embedding from wifi DLKM Kbuild config.

Change-Id: I465699005b0e5eee762f528a8d8f102c1987b18e
CRs-Fixed: 2855334
2021-01-16 01:39:00 -08:00
Pragaspathi Thilagaraj
1a9311161a qcacld-3.0: Create TWT context in peer private object
Create TWT context in peer object to store the TWT session
related parameters. Introduce mlme api to get/set various
twt session parameters for the peer.
Block the below commands till TWT setup is complete.
TWT GET
TWT Pause
TWT resume
TWT terminate

Add new files for TWT specific functionality in MLME component:
components/mlme/core/inc/wlan_mlme_twt_api.h
components/mlme/dispatcher/inc/wlan_mlme_twt_public_struct.h
components/mlme/dispatcher/inc/wlan_mlme_twt_ucfg_api.h
components/mlme/core/src/wlan_mlme_twt_api.c
components/mlme/dispatcher/src/wlan_mlme_twt_ucfg_api.c

Also return error to userspace if back to back TWT setup
command is received before TWT setup response is received from
firmware or already TWT setup is complete for given dialog id

Change-Id: I61e24dd41dc9dcb78fdfe33ef8fa0ecb374a4a72
CRs-Fixed: 2847213
2021-01-15 10:25:32 -08:00
Rajasekaran Kalidoss
05b4328025 qcacld-3.0: Register cp stats legacy ops
Support has been added in common code to register both
common tx ops and MC/WIN specific tx ops. Add support to
register and tx ops for MC specific stats.

Change-Id: I4e5263e4685a707008ec3c5e96f50c707b071fe9
CRs-Fixed: 2851256
2021-01-13 10:17:12 -08:00
Abhishek Singh
07678f7063 qcacld-3.0: Add roaming files in kbuild for connection manager
Add roaming files in kbuild for connection manager.

Change-Id: Id091ed574074a82c0f6f61c477472cdbc80fb317
CRs-Fixed: 2849263
2021-01-11 06:39:14 -08:00
bings
f540f78b07 qcacld-3.0: support one msi interrupt
Add build option WLAN_ONE_MSI_VECTOR to support one MSI vector in Kbuild.

Change-Id: I99d48bd47dde8857a4eb8d84e6a8b16a99f394a7
CRs-Fixed: 2696508
2021-01-07 21:13:34 -08:00
Jinwei Chen
de611d737b qcacld-3.0: enable macro for monitor mode rssi conversion
enable DP_MON_RSSI_IN_DBM macro for monitor mode rssi
conversion.

Change-Id: Idd54f8658611a766ade17700b38904c90d1d4241
CRs-Fixed: 2848120
2021-01-07 16:48:29 -08:00
Yeshwanth Sriram Guntuka
ed863c00a4 qcacld-3.0: Enable IPA set/reset tx doorbell paddr feature for Lithium
Enable set/reset tx doorbell paddr feature for Lithium.

Change-Id: I440372b89e20037e54da6b187f79254af421a718
CRs-Fixed: 2846872
2021-01-06 13:52:24 -08:00
Ashish Kumar Dhanotiya
ee71cc8bd4 qcacld-3.0: Refactor connect complete code
Refactor connect complete code and move common code
for connection manager and legacy path to a common function
to remove the duplication of the code.

Change-Id: I25e39635005efd9ad19174e9f26d009946912cdb
CRs-Fixed: 2842413
2020-12-28 13:06:46 -08:00
sheenam monga
a6c4102ec3 qcacld-3.0: Remove the compilation of dfs_cac.c from MCC
dfs_cac.c is moved to WIN specific project. Remove the
corresponding compilation from qcacld-3.0 project.

Change-Id: I036a12b072e65c75a0dcf2d6270027814af1a128
CRs-Fixed: 2843628
2020-12-24 09:52:17 -08:00
bings
e07551e336 qcacld-3.0: fix prealloc not effective in Kbuild
Kbuild should contain build option CONFIG_WCNSS_MEM_PRE_ALLOC,
so we can enable prealloc feature.

Change-Id: I8e9acc83f7c0b36dad2f12cc88f028cc6a10d9ea
CRs-Fixed: 2706137
2020-12-23 20:55:45 -08:00
Ashish Kumar Dhanotiya
9c0881c7b2 qcacld-3.0: Refactor disconnect complete code
Refactor disconnect complete code and move common code
for connection manager and legacy path to a common function
to remove the duplication of the code.

CRs-Fixed: 2842818
Change-Id: I9b204d458075a594514d298077231889e29447ae
2020-12-23 14:18:26 +05:30
Ashish Kumar Dhanotiya
440c4213e4 qcacld-3.0: Move DFS_BANGRADAR from common code to WIN
MCC does not use DFS_BANGRADAR feature so move common code
related to DFS_BANGRADAR to WIN specific code and as part of
this remove dfs_full_offload.c file from MCC compilation.

CRs-Fixed: 2837274
Change-Id: Ie28568a317787a0fb43dd94058f7b3e425bc3929
2020-12-15 09:50:11 -08:00
Pragaspathi Thilagaraj
d0af3d781f qcacld-3.0: Increase the number of TWT peer to 32
Increase the number of TWT peers allowed to 32 from current
default value of 2.

Change-Id: I9c081f602af059c940223ea2f66ea257a7d44f07
CRs-Fixed: 2825861
2020-12-14 09:29:39 -08:00
Tiger Yu
8b3cd3b4b8 qcacld-3.0: Enable athdiag live debug mode in debug version
Enable the athdiag live debug mode when CNSS2_DEBUG or SLUB_DEBUG_ON
enabled to enhance host debug.

Change-Id: I5241d60ff7e4e02acc74db312640aa299e5a356b
CRs-Fixed: 2831288
2020-12-10 15:45:07 -08:00
Yeshwanth Sriram Guntuka
1cbef73e16 qcacld-3.0: Add base code for Bus Bandwidth Manager
Add the init and de-init APIs for Bus Bandwidth
Manager.

Change-Id: I63c9bf0dbcbac458dd6467e5b073a5cb569ce502
CRs-Fixed: 2810496
2020-12-03 07:38:09 -08:00
Chaoli Zhou
982b98c6e3 qcacld-3.0: Add bootup kpi marker for some wlan events
Add the API to record some key wlan events
to "/sys/kernel/debug/bootkpi/kpi_values" from
HDD layer.
Examples:
108 KPI_MARKER 860s389434814ns qca6696 START LOADING
108 KPI_MARKER 860s634063720ns qca6696 DRIVER LOADED
108 KPI_MARKER 869s427276611ns qca6696 wlan0:SAP TRY
TO START
108 KPI_MARKER 869s576171875ns qca6696 wlan0:SAP START
with SUCCESS

Change-Id: I2e40305ee4100248348e9a284df71d1ee340e1e4
CRs-Fixed: 2816054
2020-12-02 20:49:25 -08:00
Rakesh Pillai
0569f1d9de qcacld-3.0: Enable support to mark ICMP request to be sent to FW
Enable the support, in Kbuild, to mark ICMP request to be
sent to FW at a regular interval.

Change-Id: I0b8828b31550973590dd222cc1fbaee52daaf88a
CRs-Fixed: 2813173
2020-11-24 17:43:38 -08:00
Ashish Kumar Dhanotiya
f069ecc1d7 qcacld-3.0: Move connect/disconnect code to new files
Currently connect and disconnect apis for connection manager
are present on the cfg80211 file, move connect and disconnect
related code to new files.

Change-Id: I514bbfdd66ab8ae5410fdbf9796e298c04130873
CRs-Fixed: 2812112
2020-11-24 13:02:12 -08:00
Bapiraju Alla
f98493aa9a qcacld-3.0: Set RX_DIAG_WQ_MAX_SIZE as 1000
Currently RX_DIAG_WQ_MAX_SIZE is set to 0. Which means, there is no
limit to the number of FW diag events that can be queued for processing.
This may result in SKB memory pool is being blocked by FW diag events.

To avoid this, set RX_DIAG_WQ_MAX_SIZE default value as 1000.

Change-Id: I44c69f910a512d8f9a1aed0809c55c6d93737cb2
CRs-Fixed: 2824443
2020-11-23 19:50:43 -08:00
Gururaj Pandurangi
370f376c02 qcacld-3.0: Modify connect start code in if mgr
Modify connect start code in interface manager by
moving disable roam and tdls link teardown notify
APIs from HDD to if mgr. Alongside, move tdls link
teardown notify API from HDD to if mgr in start bss API.
Also, move the tdls link teardown API to TDLS module from
HDD module as TDLS should manage the wait logic.

Change-Id: I09fa31878563a3daaa7c5fde46327475829317b3
CRs-Fixed: 2811807
2020-11-20 13:11:00 -08:00
CNSS_WLAN Service
b19704134d Merge "qcacld-3.0: Process FW diag events in a separate worker thread" into wlan-cld3.driver.lnx.2.0 2020-11-20 07:45:46 -08:00