Commit Graph

885 Commits

Author SHA1 Message Date
Huashan Qu
f386197c9f qcacld-3.0: Enable RSO ROAM_OFFLOAD_V1 path for all configs
Enable roam scan offload ROAM_OFFLOAD_V1 path for all configs.

Change-Id: Id3386c2f391f98fb67734fdd17919782d0240f18
CRs-Fixed: 2798357
2021-03-04 09:23:11 -08:00
Rajasekaran Kalidoss
34d700eacc 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-02-21 18:32:19 -08:00
Rajasekaran Kalidoss
ebcefb3044 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-02-21 18:31:59 -08:00
Pragaspathi Thilagaraj
689810ef6a 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-02-19 17:31:39 -08:00
Jeff Johnson
9dc998fb56 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-02-18 21:17:45 -08:00
Jeff Johnson
d2f6c5f0ef qcacld-3.0: Kbuild: Cleanup UMAC_INTERFACE_MGR_OBJS logic
Currently UMAC_INTERFACE_MGR_OBJS are added to OBJS when
CONFIG_INTERFACE_MGR is enabled.  An upcoming change requires that
assignments to OBJS be unconditional, so relocate the condition to
wrap the assignment of UMAC_INTERFACE_MGR_OBJS.

Change-Id: Ibfac21851b6a27a532cbe28a9be86909ea093e5d
CRs-Fixed: 2874549
2021-02-18 21:17:40 -08:00
Jeff Johnson
a8587dd253 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-18 21:17:34 -08:00
Jeff Johnson
c8e704f39d 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-18 21:17:29 -08:00
Jeff Johnson
4ceac79889 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-18 21:17:24 -08:00
Jeff Johnson
be6e2c034a 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-18 21:17:18 -08:00
Jeff Johnson
2dfb4b04e4 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-18 21:17:13 -08:00
Jeff Johnson
fb9f8cc8a1 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-18 21:17:08 -08:00
Jeff Johnson
5dd00f4439 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-18 21:17:02 -08:00
Jeff Johnson
fd3f0a48f1 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-18 21:16:57 -08:00
Jeff Johnson
cc6ff433b3 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-18 21:16:52 -08:00
Jeff Johnson
f5978a55c7 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-18 21:16:47 -08:00
Jeff Johnson
5bf0a3641d 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-18 21:16:42 -08:00
Jeff Johnson
3c7c22225c 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-18 21:16:37 -08:00
Jeff Johnson
364b207481 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-18 21:16:31 -08:00
Jeff Johnson
2b0f119d7d 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-18 21:16:26 -08:00
Jeff Johnson
23839c7a47 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-18 21:16:20 -08:00
Jeff Johnson
9f66d73785 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-18 21:16:15 -08:00
Jeff Johnson
adc355047c 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-18 21:16:09 -08:00
Jeff Johnson
58744b93a3 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-18 21:16:04 -08:00
Jeff Johnson
c84d00b667 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-18 21:15:59 -08:00
Jeff Johnson
8d228e2915 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-18 21:15:53 -08:00
Jeff Johnson
7842d0ea1e 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-18 21:15:48 -08:00
Jeff Johnson
addb7e7a6f 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-18 21:15:41 -08:00
Vevek Venkatesan
626134274d 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-17 00:12:16 -08:00
Vulupala Shashank Reddy
9641d7366a 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-16 00:30:05 -08:00
Aditya Kodukula
9a50111208 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-12 12:47:08 -08:00
Rajeev Kumar
4ed9bb97d5 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-02-12 12:47:04 -08:00
Vevek Venkatesan
dd76fbe75d 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-03 20:21:05 -08:00
Manikanta Pubbisetty
7d2fdac225 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-25 12:06:13 -08:00
Jinwei Chen
12afdcda9f qcacld-3.0: enable macro for monitor mode rssi conversion
enable DP_MON_RSSI_IN_DBM macro for monitor mode rssi
conversion.

CRs-Fixed: 2848120
Change-Id: Idd54f8658611a766ade17700b38904c90d1d4241
2021-01-08 15:13:51 -08:00
Yeshwanth Sriram Guntuka
94fd18736f qcacld-3.0: Enable PCI link status sanity for Lithium
Enable PCI link status sanity for Lithium.

Change-Id: I767a467a4b70435037f5ccce9e740f95f8b6112a
CRs-Fixed: 2821831
2021-01-08 08:58:00 -08:00
Pragaspathi Thilagaraj
18865d3253 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-16 19:08:37 -08:00
Gururaj Pandurangi
a266ccd8f0 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-12-09 06:31:52 -08:00
Rakesh Pillai
e7e35075ab qcacld-3.0: Mark packets to be sent to FW in control block
Classify the ICMP request packet and mark it to be
sent to the firmware in the packet control block.

Add an INI which indicates the time interval for
marking the ICMP requests to be sent to FW.
For the INI value:
-1, indicates to mark all ICMP requests to be sent to FW.
0, indicates that none of the ICMP requests will be sent to FW.
> 0, indicates the time interval for marking ICMP requests
     to be sent to FW.

Change-Id: Ia9c41765cef64a4f5fd19019df595c9e7fd657e9
CRs-Fixed: 2826444
2020-11-25 17:36:37 -08:00
Bapiraju Alla
9effb48c05 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-24 12:37:31 -08:00
Bapiraju Alla
807d167810 qcacld-3.0: Process FW diag events in a separate worker thread
Currently, FW diag logs, management frames and stats responses are
processed in worker context. Because of this, there is a possible
out of memory scenario when there are huge number of diag events
waiting in work queue.

To address this, process diag events in a separate worker thread and
set the limit for the number of diag events that can be queued in
work queue.

Change-Id: Ib9f7b8042479e8b2f4d67c9a4250932b018f29a4
CRs-Fixed: 2821534
2020-11-20 02:52:08 -08:00
Rakesh Pillai
464a2892ec qcacld-3.0: Enable support to send ICMP pkt to FW
Enable the support to send ICMP pkt to FW at a
regular interval.

Change-Id: I0b8828b31550973590dd222cc1fbaee52daaf88a
CRs-Fixed: 2813173
2020-11-10 14:23:00 -08:00
Srinivas Dasari
20fa7d67af qcacld-3.0: Add 6ghz scan files for compilation
New files are created for 6ghz scan functionality. Add the same
for compilation.

Change-Id: I3f715db50fb5020afea74297794d07ddc5b39913
CRs-Fixed: 2806415
2020-11-06 10:00:41 -08:00
Kai Liu
7c45c7d1fb qcacld-3.0: Enhance hang info feature
Use separate hang reason for case that lack of credit after suspend.
Meanwhile add hang buf offset check to avoid overflow.

Change-Id: Ic794d02672cd663598da66b9e75924c41b5ef0e8
CRs-Fixed: 2801343
2020-11-02 17:38:34 -08:00
Abhishek Singh
a2705649c9 qcacld-3.0: Remove inactive connection manager code
Remove inactive connection manager code.

Change-Id: I0a3ae1e67916bd0215d8f783b37688450f410681
CRs-Fixed: 2807911
2020-10-29 05:29:21 -07:00
Nisha Menon
d2cf0aa501 qcacld-3.0: Add feature to enable generic shadow reg write
Add feature GENERIC_SHADOW_REGISTER_ACCESS_ENABLE to enable
shadow reg write for generic shadow registers.
This is enabled only for HSP.

Change-Id: I90302aa050baa9128313dbaf0c4ab57e426289b3
CRs-Fixed: 2794917
2020-10-19 19:35:14 -07:00
Yeshwanth Sriram Guntuka
09eebb82df qcacld-3.0: Enable packet drop on non-monitoring MAC
Enable the feature flag to drop packets on non
monitoring RXDMA2SW ring.

Change-Id: I49cb276827f4a06791183ee3fe8c88ba84df085d
CRs-Fixed: 2799988
2020-10-19 19:35:11 -07:00
Abhinav Kumar
93b889498a qcacld-3.0: Trigger MSCS action frame
Add logic to send MSCS action frame to AP based on
voice tx packet.

Change-Id: I272addfcb60e459043426950d00ba5957b594505
CRs-Fixed: 2791796
2020-10-09 23:57:31 -07:00
Abhishek Ambure
1d44c2f944 qcacld-3.0: Add support to send wfa test config to FW
User sends wfa test configs to host using vendor command
QCA_NL80211_VENDOR_SUBCMD_WIFI_TEST_CONFIGURATION. Host parses the
vendor command and sends wfa test configs to FW using WMI command
i.e. WMI_WFA_CONFIG_CMDID

Change-Id: I5aa0bc8b0a0064828b48368e47d53a5ad5e7ff2f
CRs-Fixed: 2772013
2020-10-08 22:58:43 -07:00
Visweswara Tanuku
0833f12ad0 qcacld-3.0: Defines to set twt ap pdev count
Provide defines in Kbuild to set twt_ap_pdev_count in target

Change-Id: Ife77feaf3fe9c39b19ee55ddbfff5c99509726df
CRs-Fixed: 2788374
2020-10-08 17:41:25 -07:00