Commit Graph

1273 Commits

Author SHA1 Message Date
Ashish Kumar Dhanotiya
d9dd8cc039 qcacld-3.0: Create wifi features sysfs file
Based on new requirement, create wifi features sysfs file.

Change-Id: I4ff20e515f87ffc43f9f315582340922106e990f
CRs-Fixed: 3262797
2022-08-12 13:48:27 -07:00
Ashish
04f31c81d4 qcacld-3.0: Enable FEATURE_SET feature
Enable feature set feature flag to report required feature
set information.

Change-Id: Ib0a83f9ef9fadea5fd1188464b6b9ad44cb3dfc6
CRs-Fixed: 3262636
2022-08-12 00:39:37 -07:00
Jinwei Chen
e9a3221c8f qcacld-3.0: enable DP packet statistics per lmac
enable DP packet statistics per lmac

Change-Id: I00f4145834b90f88d876a09a00b7728e106435e9
CRs-Fixed: 3251814
2022-07-30 11:11:59 -07:00
Roopavathi Lingampalli
865eaba7f4 qcacld-3.0: Implement DP component for SWLM feature
Implement SWLM feature support in DP componentization
model.

Change-Id: I4cd03c768fe9d9bd66d484a8c5e2f2613e55f4e6
CRs-Fixed: 3243889
2022-07-27 13:25:56 -07:00
Ananya Gupta
33d6134296 qcacld-3.0: Disable feature to deliver all OOR frames to stack
Disable DP_RX_DELIVER_ALL_OOR_FRAMES feature
This reverts commit I3ad59fc3b3fc8e70b2f05a7cfa23e2646c1e03a4.

Change-Id: I786b03daebbf412e75015b5eabe561dfa36614c8
CRs-Fixed: 3235707
2022-07-19 03:33:35 -07:00
Amit Mehta
aed549d3a9 qcacld-3.0: build script changes for DP component
build script changes to include DP component files

Changes were backed out because of association issue
introduced by MLO adapter to DP interface mapping issue
and to avoid any further regression.
Re-introduce changes after preforming complete sanity
to vet out any regression which might be introduced
by these changes.

Change-Id: I8c185e7496a8c7315b7bdd2c0bd98bb60a047f86
CRs-Fixed: 3198619
2022-07-18 03:21:56 -07:00
Amit Mehta
08d727ece3 qcacld-3.0: Code cleanup from HDD module
Cleanup HDD code which is refactored to
DP component.

Changes were backed out because of association issue
introduced by MLO adapter to DP interface mapping issue
and to avoid any further regression.
Re-introduce changes after preforming complete sanity
to vet out any regression which might be introduced
by these changes.

Change-Id: If5f1cf432b5c02848202debee7de696b2f20be9a
CRs-Fixed: 3198619
2022-07-18 03:21:19 -07:00
Aditya Kodukula
2d9a20e46f qcacld-3.0: Add infra to support DBAM feature
Add infra to support Dedicated Bluetooth Antenna Mode (DBAM)
feature. It is used to switch between dedicated antenna for
BT and shared antenna for WLAN and BT.

Change-Id: I20b08a2fd446da4e3c17813aa64e368750286114
CRs-Fixed: 3239896
2022-07-17 23:12:16 -07:00
jinbliu
95d8c151df qcacld-3.0: Skip special frame rate info update
To avoid unmeaningful rate fluctuation, when report
rx linkspeed to upper layer, exclude special frames:
arp/ssdp/dhcp/eapol/ipv6 NA/NS/DHCPV6 in low rate.

Change-Id: Ie8989dde506c654525099f9d154abe93162a0bac
CRs-Fixed: 3199636
2022-07-15 13:34:52 -07:00
Tiger Yu
3c7cbe4fd7 qcacld-3.0: Add VCPU_TIMESTOLEN for Hypervisor system
Per feedback from some hypervisor system vendor, a virtual CPU can
have some stolen time imposed by the physical CPU scheduling, this
can result in some tasks' handling taking longer time than expected,
even when spin lock is held by code running on the vCPU.

With the stolen time existing, wlan driver's timeout for spinlock
holding must be different on hypervisor systems as compared to metal
platforms.

Change-Id: I607895f8afc9ad745a7a68939202a66560f31637
CRs-Fixed: 3242535
2022-07-15 05:01:16 -07:00
Pragaspathi Thilagaraj
832fee1036 qcacld-3.0: Refine PASN peer delete all & pasn auth status path
Refine PASN peer delete all path, to post message to
scheduler thread to process the peer delete all
message for PASN peers. Handle response timeout in WMA.
Resume vdev deletion after removing pasn peers

Add vendor command support to parse below vendor commands:
QCA_NL80211_VENDOR_SUBCMD_PASN
QCA_NL80211_VENDOR_SUBCMD_SECURE_RANGING_CONTEXT

Send install key command to firmware to install the
PTK upon receiving
QCA_NL80211_VENDOR_SUBCMD_SECURE_RANGING_CONTEXT
vendor command. If LTF keyseed is also received,
send the LTF keyseed to firmware.

Sent PASN auth status to firmware upon receiving
QCA_NL80211_VENDOR_SUBCMD_PASN command.

Change-Id: Idc9c69f7288b0774cc6d9bdcfed13ba3684bbc72
CRs-Fixed: 3231205
2022-07-14 04:12:30 -07:00
Jayachandran Sreekumaran
e728680f11 qcacld-3.0: Add spatial reuse feature support
Add SAP mode support for non-srg spatial reuse.

Change-Id: Ic575eefd0d36b6750d826c9bccbd53f07ae9ea75
CRs-Fixed: 3213404
2022-07-11 23:12:40 -07:00
Rakesh Pillai
f81930044e qcacld-3.0: Enable SRNG usage high watermark feature
Enable the tracking of SRNG usage high watermark
feature for KIWI target.

Change-Id: I66c32f8c8f147aea0331c81d7b2c91ac88572fea
CRs-Fixed: 3235422
2022-07-11 10:23:58 -07:00
Pragaspathi Thilagaraj
e33def8324 qcacld-3.0: Add support to create ranging peer
Add support to send ranging peer create command from WMA

Change-Id: I67966983b157efaecaad7209b679483f010e84a5
CRs-Fixed: 3150075
2022-07-07 17:46:28 -07:00
Pragaspathi Thilagaraj
129b265449 qcacld-3.0: Add support for PASN cfg80211 ops
Add support for PASN cfg80211 ops:
1. set_ltf_keyseed
2. pasn_auth

Change-Id: Icfda1664a9d5e9a14c54066c4c2344fec368bec6
CRs-Fixed: 3159890
2022-07-06 23:07:08 -07:00
Dundi Raviteja
a258f3cd42 qcacld-3.0: Clean up code under PRE_CAC_COMP flag
pre cac componentization is done, so clean up
code under PRE_CAC_COMP flag.

Change-Id: I6465bce9fc883797f42358aaeb8dabf70e449cde
CRs-Fixed: 3232820
2022-07-04 11:52:02 -07:00
Rakesh Pillai
b87648dd65 qcacld-3.0: Enable Monitor status buffer tracking history
Enable monitor status buffer tracking history.
Also enable the allocation of memory for the monitor
status buffer tracking history via prealloc.

Change-Id: Iafec8e68c85b3f2d9b0bf0523a19b7a32869e20a
CRs-Fixed: 3229689
2022-07-02 11:28:04 -07:00
VIJAY RAJ
ee9e38f2b0 qcacld-3.0: Send Connectivity diag event through netlink
Connectivity logs are sent through the vendor event to the
supplicant.

Modify the connectivity log flow through the diag event to
the supplicant in order to maintain single logging infrastructure.

Change-Id: Id5429349e00c16c23b76894744fef404b2266e9e
CRs-Fixed: 3218152
2022-06-29 15:46:26 -07:00
Huashan Qu
a49743aa13 qcacld-3.0: Add new macro for automotive platform regdomain
Regdomain revision 39 version add a specific AUTO regdomain table for
automotive platform, so add new macro and enable the macro for
automotive platform to choose AUTO regdomain table usage.

Change-Id: I5fded1a6fa9c9b7c06b6be77e25c56f2a660922e
CRs-Fixed: 3210729
2022-06-29 11:24:13 -07:00
Rakesh Pillai
e4efc48048 qcacld-3.0: Disable sanity of sw_cookie in RX error for KIWI
Disable the sanity of sw_cookie in RX error path for
KIWI target.

Change-Id: I6d0e5c4c643007bfec2232d2f7c200842508ec44
CRs-Fixed: 3228794
2022-06-26 03:25:32 -07:00
abhinav kumar
4a19256692 qcacld-3.0: Add vendor handoff service bit caps support
Add vendor handoff service bit capability support
WLAN_SOC_VENDOR_HANDOFF_CONTROL to check whether the FW
supports vendor handoff feature or not.

Change-Id: Ifdf541761716df9ca5b764c05714a8b501642354
CRs-Fixed: 3224573
2022-06-23 08:50:44 -07:00
Vinod Kumar Myadam
a24510696e qcacld-3.0: Add flag CONNECTIVITY_PKTLOG
Add new flag CONNECTIVITY_PKTLOG to make independent of
FEATURE_PKTLOG and REMOVE_PKT_LOG for packet logging.

This is because 32 tx/rx pkt logging is connection related
and this feature is independent of pkt log feature. Here
driver will send first 32 tx/rx pkts consisting of mgmt
and data pkts to userspace which can be used for debugging

Change-Id: If987ac8b6cb10b464a4ec2ace1c55215c0aa3614
CRs-Fixed: 3222970
2022-06-23 07:03:31 -07:00
Dundi Raviteja
433730002e qcacld-3.0: Enable precac component
Enable pre cac component.

Change-Id: If013d802d8e921acd227544efb13a7929130814a
CRs-Fixed: 3216744
2022-06-10 13:19:07 -07:00
Yu Ouyang
6b2b1cfb27 Revert "qcacld-3.0: Add the Full Power Down feature support"
This reverts commit I293647175c151da0fd6628345f98ea65c83b1bb3.

New solution idle shutdown in suspend prepare is better.

Change-Id: I69a0e7401c811e4a9656fcc8e3dd069f4317cc35
CRs-Fixed: 3213236
2022-06-09 19:37:09 -07:00
Madhvapathi Sriram
acb7e8644b qcacld-3.0: Command to configure peer tx queue flush
This enables configuration from user if and when the stale
packets from peer TID queues can be flushed.

Change-Id: Ic7427cdb8b70eeefea1b99d1f9be505a9cae76e6
CRs-Fixed: 3130419
2022-06-09 19:36:38 -07:00
Jeff Johnson
be9f081b3f qcacld-3.0: Set upper bound for nested composite image support
The Android Common Kernel (ACK) accepted change [1] to 5.10.20 which
enables support for nested composite objects in the Kbuild
system. This was introduced to fix the "Argument list too long" error
that can occur when there are too many filenames passed by the build
system to the "ar" command.

The expectation at that time was that this patch would be maintained
for all future ACK kernels. However the ACK maintenance team has
decided not to maintain this patch beyond the 5.10 kernel, so update
the logic that determines if an ACK kernel has support for the
feature.

Subsequent changes will need to be made to address the "Argument list
too long" error when using an ACK that does not have this support.

[1] 21c713f8e8

Change-Id: Ief9a74a24d58796a90e19bd86fa269e64bcf4c73
CRs-Fixed: 3139401
2022-06-09 05:37:44 -07:00
Aditya Kodukula
e92560b70c qcacld-3.0: Add support to enable WLAN HW
As part of protected dynamic interface control feature,
if the user space disables WiFi, then the platform driver
disables the WLAN HW as well. Until the user enables WiFi,
the WLAN HW stays disabled.

So, add support to enable the WLAN HW, when the WiFi is
enabled by user space.

Change-Id: If6b90ae57c4471f4c613ead8310fd0a7ada818f3
CRs-Fixed: 3215335
2022-06-08 19:07:24 -07:00
Manikandan Mohan
d4498674f3 qcacld-3.0: Add config file for Mango WLAN device
Add config file for Mango WLAN device and enable emulation flag for
Mango WLAN device.

In addition, use static symbolic link '.mango -> .' for multi-ko support.

Change-Id: I0cebf11407e5625fd6475723496b9cda72cf5165
CRs-Fixed: 3210120
2022-06-07 08:18:32 -07:00
Rakesh Pillai
1f7aaef741 qcacld-3.0: Enable Shadow config v3 for beryllium chipsets
Enable feature flag for shadow config v3 for all
the beryllium chipsets.

Change-Id: I8fb7facb51f017fa880109e12face1f31366797b
CRs-Fixed: 3167764
2022-05-19 01:56:59 -07:00
Dundi Raviteja
b59f96fb33 qcacld-3.0: Add osif callbacks for pre cac
Add osif callbacks for pre cac component.

Change-Id: Ic49f61c413e4630bba8fd2e5ff3e69560fb52b52
CRs-Fixed: 3174540
2022-05-17 22:57:53 -07:00
Dundi Raviteja
e63bf7f295 qcacld-3.0: Add pre cac component
Add support for pre cac component.

Change-Id: I883febac103fc462fcd09f1534fda78c23b96466
CRs-Fixed: 3174505
2022-05-17 22:57:46 -07:00
Dundi Raviteja
d3bb29db4c qcacld-3.0: Move pre cac hdd code to new file
Move pre cac code related to hdd into a new file
wlan_hdd_pre_cac.c

Change-Id: Ia6b2e92a1bea03d7efe12a7dad27e345dc5ef53d
CRs-Fixed: 3174488
2022-05-17 13:50:08 -07:00
Karthik Kantamneni
dd3ab5f8dd Revert "qcacld-3.0: build script changes for DP component"
This reverts commit I1e99466cff805f22411f9bfa5a1842d0ffda265f.

Change-Id: Iaf5766d372558eb28085610191f1d66b340fbd8a
CRs-Fixed: 3196571
2022-05-16 18:58:18 -07:00
Karthik Kantamneni
ff74017c8d Revert "qcacld-3.0: Code cleanup from HDD module"
This reverts commit I66d52b1af7ae52dfde330c7a1b5046f77ab5fe70.

Change-Id: I11e52f785ef0e1d6ba8481f7e98d7ca9e45f249c
CRs-Fixed: 3196571
2022-05-16 18:57:53 -07:00
Surabhi Vishnoi
9c959bdc3a qcacld-3.0: Update auth_status and mac addr of roamed peer to dp
This change updates the auth_status and mac address of
roamed peer received in roam_sync_indication from FW to dp.

Change-Id: I27744017c87a956927108c5b3b0f9220d7e42965
CRs-Fixed: 3185110
2022-05-13 07:16:23 -07:00
Wade Song
2502638cbf qcacld-3.0: Code condensing for sme
When build kiwi_v2 driver, it reports below error
"make[3]: /bin/sh: Argument list too long". It's because when ar
process kiwi_v2.o, current driver generates too many characters which
over bash's limitation, so create sme.c file to includes all sme layer
common files to save some room.

Change-Id: Ib15fcb29efd6d06d48d305dcfac44de258dba259
CRs-Fixed: 3194081
2022-05-11 13:21:10 -07:00
Amit Mehta
4bb6f92ab3 qcacld-3.0: Code cleanup from HDD module
Cleanup HDD code which is refactored to
DP component.

Change-Id: I66d52b1af7ae52dfde330c7a1b5046f77ab5fe70
CRs-Fixed: 3169985
2022-05-11 13:20:54 -07:00
Amit Mehta
939457884c qcacld-3.0: build script changes for DP component
build script changes to include DP component files

Change-Id: I1e99466cff805f22411f9bfa5a1842d0ffda265f
CRs-Fixed: 3164969
2022-05-11 13:20:35 -07:00
Mohit Khanna
281ac750ad qcacld-3.0: Enable min rates for special frames
Enable feature flag -DQCA_SUPPORT_TX_MIN_RATES_FOR_SPECIAL_FRAMES
for KIWI_v2 chips.

Change-Id: Iaf609fb9a389dc8f4d7eed5313f76333620ede7e
CRs-Fixed: 3155097
2022-05-06 06:14:27 -07:00
Aditya Kodukula
c4ca02df28 qcacld-3.0: Add infra to disable/enable wifi
As part of protected dynamic interface control feature, add
infra to disable/enable wifi, when invoked from user space.

Change-Id: I3f6c2abcef1ef89cbd0a735820de9b54d37bfa29
CRs-Fixed: 3166467
2022-04-26 14:59:18 -07:00
Utkarsh Bhatnagar
658e6789d3 qcacld-3.0: Cleanup MPC_UT_FRAMEWORK Config
Cleanup MPC_UT_FRAMEWORK Config

Change-Id: Ifd05bdae81070c948e63d753bd671e7b41c0228c
CRs-Fixed: 3179082
2022-04-25 10:15:28 -07:00
Utkarsh Bhatnagar
7c666d30a8 qcacld-3.0: Cleanup MPC Unit Test Framework
Cleanup MPC Unit Test Framework.

Change-Id: I76aa0ad227069b68b9efedbbc7e87573e9a004c0
CRs-Fixed: 3178591
2022-04-25 10:15:22 -07:00
abhinav kumar
f95d76a857 qcacld-3.0: Add multi-client service bit caps and INI support
Add multi-client latency level service bit capability support,
WLAN_SOC_WLM_MULTI_CLIENT_LL_SUPPORT, to check whether the FW
supports multi-client latency level event or not.

Add INI "wlm_multi_client_ll feature" to enable/disable multi
client latency level feature from the host side.
 * @min: 0
 * @max: 1
 * @default: 0

If firmware sends multi-client latency level service
bit capability to host and host enables multi-client latency
level feature via INI, the host waits for an event
WMI_VDEV_LATENCY_LEVEL_EVENTID as a response to a request
command WMI_WLM_CONFIG_CMDID.

Change-Id: I5cbea89e67caabac5db70b7f0a91c18bdd512e9b
CRs-Fixed: 3180928
2022-04-25 05:38:05 -07:00
Srikanth Marepalli
e2e3e0326e qcacld-3.0: Use WLAN_WEAR_CHIPSET to modify INI path
On Wear HL based target with keystone kernel, it generates
WLAN driver with name "qca_cld3_wlan.ko" based on macro
definition WLAN_WEAR_CHIPSET. But the driver was not loading
because of the old INI path and /dev path.
This commit modifies the INI path and /dev path based on
macro defined i.e. WLAN_WEAR_CHIPSET.

Change-Id: I6d457a3bb708de3175c40b0f2b3ba0ebde915838
CRs-Fixed: 3168115
2022-04-21 07:24:32 -07:00
Dundi Raviteja
990e73237e qcacld-3.0: Featurize pre cac code
Featurize pre cac code under PRE_CAC_SUPPORT macro.

Change-Id: I4379e667d4e0ddd3c4d91b5d624fc2325f87022e
CRs-Fixed: 3172393
2022-04-14 03:54:42 -07:00
Bing Sun
2b7fe880eb qcacld-3.0: Add CONFIG_QCACLD_FEATURE_SON dependency configs
Enable configs which are needed by SON, if SON is enabled.

Change-Id: Ib781804a03472aa8c4ab7cdef0a5a4e6e89dcc7e
CRs-Fixed: 3062225
2022-04-11 02:44:22 -07:00
Qun Zhang
3f80fae5f0 qcacld-3.0: Refine roam event processing for LFR2/LFR3
Currently wmi_roam_event_id event handler only register under feature
WLAN_FEATURE_ROAM_OFFLOAD, but it's needed for LFR2 roaming too. So
refine roam event processing for LFR2/LFR3.

Change-Id: Ic07fd8a543142fc1e151f484979ab99ff55ce802
CRs-Fixed: 3161973
2022-04-09 01:22:20 -07:00
Liangwei Dong
36accba316 qcacld-3.0: Add files for MCC Quota event feature
Add files of MCC Quota event functions when WLAN_FEATURE_MCC_QUOTA
feature is enabled.

Change-Id: If8ab364223f7f3236230fc0fbbc953f184c02528
CRs-Fixed: 3101880
2022-04-06 21:26:46 -07:00
Surya Prakash Sivaraj
edc56c445f qcacld-3.0: Remove the old SAP/CSR flow
Remove the old SAP-CSR flow for start bss, stop bss and
channel change req processing which is disabled currently
under the SAP_CP_CLEANUP macro.

Cleanup the redundant checks in the deauth, disassoc
response processing in CSR.

Change-Id: I5a360fc267688b51ca645551108b65646a3c8c1a
CRs-Fixed: 3164259
2022-04-03 17:55:50 -07:00
Surya Prakash Sivaraj
4ebb87035a qcacld-3.0: Enable SAP_CP_CLEANUP flag
Activate the new SAP flow for start bss,
stop bss and channel change request.

Change-Id: If6971438af803bd0e9d2b9f3bd162b7096f1fb88
CRs-Fixed: 3157399
2022-03-25 17:04:27 -07:00
Rakesh Pillai
d6e6f8a861 qcacld-3.0: Disable TX credit cmd and status rings for Kiwi
Kiwi target does not use the TX credit cmd ring and the
TX status ring.
Hence disable these srngs for Kiwi target.

Change-Id: I2473aad5b16316e3033c7d7ee9f81ee518dd2097
CRs-Fixed: 3157132
2022-03-25 01:36:20 -07:00
Yeshwanth Sriram Guntuka
e64efc518f qcacld-3.0: Add new sysfs entry to enable tx_delay
Add new sysfs entry to enable or disable capture of
datapath tx delay stats per vdev.

Enable HW_TX_DELAY_STATS config flag for Lithium targets
to support capture of tx delay stats at runtime.

Change-Id: I838961daf27e08c4b6e693852c62f9f894f499a5
CRs-Fixed: 2981004
2022-03-24 06:46:50 -07:00
Subrat Dash
19e3d0b415 qcacld-3.0: Add support for WDS repeater feature
Enable source port learning for SAP to add AST entry for the
remote stations with next hop. The SAP should use 4-address
frame format for the remote destinations.

Add support to handle data packets for WDS destination.

Change-Id: I6002e6dd9c9bb2c7b2e4f85bf06156dbb7feebee
CRs-Fixed: 2997812
2022-03-24 01:44:27 -07:00
Pragaspathi Thilagaraj
d19ee8c7dc qcacld-3.0: Kbuild changes for new wifi pos files
Add Kbuild changes for the below new wifi pos files:
target_if_wifi_pos_tx_ops.c
target_if_wifi_pos_rx_ops.c

Change-Id: Icf64ace3fdcd359d7248cdbe1a009faeedcd5f8d
CRs-Fixed: 3139942
2022-03-23 19:42:06 -07:00
Pragaspathi Thilagaraj
a5de781f47 qcacld-3.0: Advertise 11az security related wiphy ext flags
Call the Wifi Pos API to advertise 11az security
related wiphy ext flags. Add Kbuild changes for new
file to advertise Wiphy Feature flag.

Change-Id: Id8c9c51770c3153c9c8a140f965249d1b0d1a844
CRs-Fixed: 3150582
2022-03-23 19:42:00 -07:00
Ananya Gupta
d38c336051 qcacld-3.0: Enable feature to deliver all OOR frames to stack
Enable feature DP_RX_DELIVER_ALL_OOR_FRAMES for lithium DP
which will allow all OOR frames to stack.

Change-Id: I3ad59fc3b3fc8e70b2f05a7cfa23e2646c1e03a4
CRs-Fixed: 3152334
2022-03-21 19:05:50 -07:00
chunquan
abefa5a8b4 qcacld-3.0: Rename folder of blacklist_mgr
Rename folder of blacklist_mgr.

Change-Id: I426d1150d91a8fc97fc483836c954b742e8c8211
CRs-Fixed: 3102372
2022-03-15 20:43:56 -07:00
Prakash Manjunathappa
61641f0ec8 qcacld-3.0: Make 1:1 mapping of REO to rx_thread
Remove CONFIG_WLAN_FEATURE_REDUCE_RX_THREADS compile flag.
Keep num rx_thread dependent on rx REO rings, 1 rx_thread for
each rx REO ring. It is controlled via INI dp_reo_rings_map.

Change-Id: I701e5cec79a8968b540c9437fe297ca1db8cd5d3
CRs-Fixed: 3048265
2022-03-14 22:31:00 -07:00
chunquan
03c551de67 qcacld-3.0: Rename files with blacklist/whitelist
Rename files with blacklist/whitelist to denylist/whitelist.
Rename files with blm to dlm.

Change-Id: Ief7ce0a797f74460c9708f8d2dd440412af5b7eb
CRs-Fixed: 3099864
2022-03-14 08:50:05 -07:00
Madhvapathi Sriram
79e13b55ab qcacld-3.0: User MCC quota setting
Set the MCC quota for a given interface.

Change-Id: I313cdf1673f8fc5f50a049d429c0d88fd213e66f
CRs-Fixed: 3106146
2022-03-14 00:43:35 -07:00
Kai Liu
c8bc7b1b08 qcacld-3.0: Use simple lim.c to include lim layer common files
When build kiwi_v2 driver, it reports below error
"make[3]: /bin/sh: Argument list too long". It's because when ar
process kiwi_v2.o, current driver generates too many characters which
over bash's limitation, so create lim.c file to includes all lim layer
common files to save some room.

Change-Id: Ic4a1a71ebc9e42fde5e1a11b5342a7f17a9e0d91
CRs-Fixed: 3138823
2022-03-09 04:07:16 -08:00
Jia Ding
ab1f6b5682 qcacld-3.0: Mark first packet after wow wakeup
Add feature flag to support marking first packet after wow wakeup
and enable it for QCA6490.

Change-Id: Icbda6dabe61a113a8aaa87f7a8fd1d95555226a1
CRs-Fixed: 3137627
2022-03-08 15:09:58 -08:00
Kai Liu
4ca1fafe71 qcacld-3.0: Provide chip version to platform driver
Add chip version info in driver structure, platform driver
can use this info to decide whether accept this registration or not.

Change-Id: I37ba897954147ad75515f88e7ff35417e5de39e4
CRs-Fixed: 3125766
2022-03-07 21:42:30 -08:00
Amit Mehta
22de5a5cf9 qcacld-3.0: Affine refill thread to performance cluster
Currently refill thread is not getting chance to update
refill buffer pool, which is causing the increase in
rx thread time.
To fix issue move refill thread to performace cluster.

Change-Id: I839352ff09da692f801e97f7938a67ab8f09742b
CRs-Fixed: 3138081
2022-03-07 05:06:05 -08:00
Sheenam Monga
752b104fc2 qcacld-3.0: Set new macro for 6G power mode
Set the new macro CONFIG_REG_6G_PWRMODE for all targets. This enables
the new for power mode APIs which will replace the for freq APIs.

Change-Id: Ibb17616fdfc8bd110b3a68b4636c9b3c1bc9ca97
CRs-Fixed: 3136314
2022-02-24 10:42:17 -08:00
chunquan
64fb0c9f8a qcacld-3.0: Disable monitor mode on sdxlemur platform
Disable monitor mode on sdx65, it will save 5MB buf,
and improve iperf performance.

Disable WIFI_MONITOR_SUPPORT for pdev/vdev/peer do
nothing of monitor mode.

Enable MONITOR_MODULARIZED_ENABLE for monitor_soc
attach do nothing.

Disable QCA_MONITOR_PKT_SUPPORT for monitor ring
which are not initialized in dp_queue_mon_ring_stats.

Change-Id: I9865ad38dbbee56abee567fded17f39ee299ac42
CRs-Fixed: 3069269
2022-02-22 04:54:32 -08:00
Rakesh Pillai
31716fb03c qcacld-3.0: Enable parsing of common user info for KIWI
Enable the support to parse the common user info from
the tlv in monitor status ring for KIWI.

Change-Id: Id54817efb65c005578c7cc28286feabde1bea652
CRs-Fixed: 3129126
2022-02-17 06:24:42 -08:00
Srinivas Girigowda
94762ba42a qcacld-3.0: Build configuration changes for kiwi v2 hw files
Changes to build for kiwi v2 hw files.

Change-Id: Ic32408256fb5d96ee580d8e12573c422401bf6cd
CRs-Fixed: 3122914
2022-02-11 19:12:33 -08:00
Srinivas Girigowda
840a791d8c qcacld-3.0: Add build configurations for TWT componentization files
Add build configurations for TWT componentization files.

Change-Id: Ib71b4ee2d32967f27f43720c19c38b4042a1ad89
CRs-Fixed: 3085502
2022-02-11 00:21:12 -08:00
Bing Sun
5db23d13ab qcacld-3.0: Compile target_if_son.o for SON feature
Include target_if_son.c when building driver with SON feature enabled.

Change-Id: I8838bd400f509b48750161dcd72c418cc33d9b3f
CRs-Fixed: 3118833
2022-02-10 08:19:21 -08:00
jinbliu
b15e12678e qcacld-3.0: Delete a repeated MACRO in Kbuild
The duplicated MACRO in Kbuild is:
cppflags-$(CONFIG_HTT_PADDR64) += -DHTT_PADDR64

Change-Id: I0da070efcedf1af58bf0443f3402e6750c36a351
CRs-Fixed: 3111174
2022-02-07 17:56:27 -08:00
Nirav Shah
1caaa01a17 qcacld-3.0: Add support to update tsf timestamp in data packet
Add support to update tsf timestamp on driver entry and
exit in data packet. This helps debug latency issue in
XR usecases.

Change-Id: I49d190a55b7ab3081225b7a226f1bbe4f717a20f
CRs-Fixed: 3090104
2022-02-04 07:10:35 -08:00
VIJAY RAJ
3d11cb41da qcacld-3.0: Add OFDM Scrambler seed ini support
Add "gEnableUpdateScramSeed" ini support to send
WMI_PDEV_PARAM_EN_UPDATE_SCRAM_SEED command to firmware
to enable OFDM scrambler seed.

Change-Id: Ie5c244a7ea418eec0af1f576e8521804ee85a665
CRs-Fixed: 3106348
2022-02-03 09:29:06 -08:00
Divyajyothi Goparaju
df1aa31d4b qcacld-3.0: move wlan_cfg80211_mc_cp_stats.h file from cmn to qcacld
Currently wlan_cfg80211_mc_cp_stats.h file is present at
qca-wifi-host-cmn/cmn/os_if/linux/cp_stats/inc.
With this change, move file to 	qcacld-3.0/os_if/cp_stats/inc
as this file contain MCC specific code.

Change-Id: Ia531094fb15ae86f5afab2b9c3bdde197feaac6c
CRs-Fixed: 3108266
2022-02-01 23:35:31 -08:00
Jinwei Chen
e9e0ad3744 qcacld-3.0: use feature macro to enable PLD lock for window register
Use feature macro WINDOW_REG_PLD_LOCK_ENABLE to enable PLD lock for
window register accessing.

Change-Id: If839494691fa1e3093ddb762f525b934e818b62e
CRs-Fixed: 3116195
2022-01-27 23:00:32 -08:00
Surya Prakash Sivaraj
83e21ad43e qcacld-3.0: Compile mlme_utils files
Compile serialization API files under mlme_utils.

Change-Id: I81f3c4a9496f2c8d7e93c1cc745a6a83e4b4e98d
CRs-Fixed: 3113392
2022-01-27 03:12:29 -08:00
Aditya Kodukula
e205f330d1 qcacld-3.0: Add macro for partial offload regulatory
Add macro WLAN_REG_PARTIAL_OFFLOAD to support
partial offload regulatory.

Change-Id: Ie53851c72645a16b86e877255328e8d7a5675c63
CRs-Fixed: 3114560
2022-01-24 17:00:15 -08:00
Ananya Gupta
6b792f40f0 qcacld-3.0: Enable DP_TX_TRACKING flag
Enable DP_TX_TRACKING flag for lithium

Change-Id: I952dcf44ce6cb282f839d5af13482a4272d62693
CRs-Fixed: 3111510
2022-01-21 11:42:17 -08:00
sheenam monga
8261fe17ac qcacld-3.0: Provide LP/VLP/SP valid freq list for curr country code
Add support to provide valid frequency list for provided power mode

Change-Id: I5855258402604c5ca20b9f0a3eaebe7412b7db4b
CRs-Fixed: 3103671
2022-01-20 10:00:47 -08:00
Namita Nair
c22b7a5e0a qcacld-3.0: Enable multi SW2TCL and Tx completion IRQ affinity for KIWI
The flags, CONFIG_TX_MULTI_TCL for multi SW2TCL and DFEATURE_IRQ_AFFINITY
for Tx completion IRQ affinity, were turned on for KIWI.

Change-Id: I44a7b1c889d7113f078a75c549a632809dbebad0
CRs-Fixed: 3110299
2022-01-19 17:27:00 -08:00
Surabhi Vishnoi
31d8576ebd qcacld-3.0: Add kbuild cpp flag for low power mode feature
Add cpp flag support for CONFIG_ENABLE_LOW_POWER_MODE in Kbuild.
Currently, this config is enabled for wearables only.

Change-Id: I2fb08930290f5c23641e1d76796ab829b31aae04
CRs-Fixed: 3110291
2022-01-18 18:56:10 -08:00
chunquan
51509a327f qcacld-3.0: Replace blacklist/whitelist for denylist/allowlist
Replace blacklist/whitelist with denylist/allowlist for
blacklist manager component. and replace blm with dlm.

Change-Id: I8dec146d8cb3b61dc891b72bea44704b8ab733fe
CRs-Fixed: 3087575
2022-01-14 03:50:03 -08:00
Divyajyothi Goparaju
df5e68bdef qcacld-3.0: Add support to query BMISS stats from fw
Currently there is no support to read bmiss stats from fw.
With this change, add support to read bmiss stats from fw.

Change-Id: I77594d05fbcd295aff4c625ba5f4f33cbc491063
CRs-Fixed: 3097304
2022-01-03 02:19:36 -08:00
Yu Wang
4a0857dacd qcacld-3.0: enable CONFIG_DBR_HOLD_LARGE_MEM for QCA6490
Enable CONFIG_DBR_HOLD_LARGE_MEM for QCA6490, to avoid
large memory allocation failure during idle restart.

Change-Id: I8f504f278bab6f4d974e8cf6b778e6c5ab9ec838
CRs-Fixed: 3101976
2021-12-31 02:14:15 -08:00
sandhu
afc4244d94 qcacld-3.0: Remove IP from code
Remove qualcomm IP from code

Change-Id: Icc3f239fbb6874a07272618b1be84d613b8fdc84
CRs-Fixed: 3073862
2021-12-29 04:28:21 -08:00
Tiger Yu
65fcdade4d qcacld-3.0: Enable delayed peer obj freed for qca6174 module
Define the CONFIG_FEATURE_DELAYED_PEER_OBJ_DESTROY to enable delayed
peer obj freed for qca6174 module.

Change-Id: Ia80c3d1abdf0acf9fcc778e6fc77d917cb9f6baf
CRs-Fixed: 3101393
2021-12-28 10:51:39 -08:00
Bapiraju Alla
0de141916d qcacld-3.0: Add support to dynamic MAC address update
Currently, MAC address update is supported only when interface is down.
Because of this framework needs to issue interface down and interface
up to update the MAC address. Interface down and up will lead to VDEV
delete and VDEV create commands to the FW.

To optimize Host-FW interactions during set MAC address, add support
to update the MAC address without bringing the interface to down state.

Change-Id: I76afa8f8c2504e8271bf689392d526f994afff0a
CRs-Fixed: 3063201
2021-12-27 20:58:55 -08:00
Vulupala Shashank Reddy
b5e2542a4d qcacld-3.0: Add support for qos null filters in packet capture
Add support to send qos null frames received from firmware on
STA interface to mon interface based on config value. The config
value get update based on vendor command set by user.

The packet filter check in ucfg_pkt_capture_process_mgmt_tx_data
moved to target_if_mgmt_offload_data_event_handler. So that we
will not allocate any buffer if filter is not set.

Change-Id: I426b340c5a65711ada971062af95ae039d18d0bd
CRs-Fixed: 3076241
2021-12-22 14:06:50 -08:00
chunquan
d73a9a326c qcacld-3.0: Move ipa code to cmn
Move qcacld-3.0/components/ipa to qca-wifi-host-cmn/ipa.
Move qcacld-3.0/components/target_if/ipa to
qca-wifi-host-cmn/target_if/ipa

Change-Id: I07cda872809397be92ed4ad9b10f951a170586e4
CRs-Fixed: 3043943
2021-12-20 22:44:30 -08:00
Srinivas Dasari
804f4647a7 qcacld-3.0: Add MLO mgr include directory in INC list
New files are added in qcacld-3.0 to have cld
specific (e.g. roaming) MLO manager changes. But the inc
directory path is not added to INC list in Kbuild and
it's causing compilation issues while compiling the
source file wlan_mlo_mgr_roam.c

Change-Id: I2801a3a5fd04dac7e35fca3a43017bb1d6fd2b10
CRs-Fixed: 3095730
2021-12-16 21:19:36 -08:00
Rakesh Pillai
4355e8bf0b qcacld-3.0: Enable Monitor mode for WCN7850
Enable monitor mode for WCN7850.
Enable the interrupt based processing in monitor
mode for WCN7850.

Change-Id: I6f8c6951794d0754977fa0d45086a95df25a13e6
CRs-Fixed: 3095456
2021-12-16 11:07:19 -08:00
Yeshwanth Sriram Guntuka
46d86f50df qcacld-3.0: Enable wlan tracepoints config flag for LI/BE
Enable wlan tracepoints config flag for Lithium and
Beryllium.

Change-Id: Idf40e510f084a9b4e2b3d67160c80dba8a49f7e2
CRs-Fixed: 3080798
2021-12-14 21:22:33 -08:00
Amruta Kulkarni
a32e3f1a0c qcacld-3.0: Add new files for mlo roaming
Add new files for mlo roaming and update Kbuild file.

Change-Id: I3e672a5e068648fd836ecccb0edbac084850f11d
CRs-Fixed: 3090925
2021-12-14 14:09:03 -08:00
Yu Wang
10aa99f14f qcacld-3.0: Compile target_if APIs for MLO manager
Update Kbuild to compile target_if APIs for MLO manager.

Change-Id: If7c2ce106aaae98024892b400eca2ad6764b7ec0
CRs-Fixed: 3060585
2021-12-06 23:55:18 -08:00
Bapiraju Alla
63867fd076 qcacld-3.0: Add support to calibration failure events parsing
Currently there is no provision to get the calibration failure
information from the driver. Because of this it is getting difficult
to debug the calibration failure issues.

To simplify the calibration failure issue debugging, add support to
parse calibration failures events in the driver.

Change-Id: I6d831804cca259862fea3e8bb4af33d556138d43
CRs-Fixed: 3078926
2021-12-06 22:33:20 -08:00
Jinwei Chen
d3fc2dc056 qcacld-3.0: Enable TX AST index search for HMT STA
Enable TX AST index search for HMT STA which is more efficient
compared with older source address search.

Change-Id: Ie5ebf4199ada959ebd33351929cf642c21657c51
CRs-Fixed: 3084026
2021-12-01 00:06:46 -08:00
Rakesh Pillai
c613af5c5e qcacld-3.0: Disable timer irq for CE in WCN7850
Kbuild change to
- Disable timer irq for CE in WCN7850
- Disable status ring timer WAR in WCN7850

Change-Id: I59a247bf14450c5e1ec194c505f3a00eb5f3619f
CRs-Fixed: 3075871
2021-11-24 01:14:14 -08:00
sandhu
4938a636b7 qcacld-3.0: Add path of cleaned-up HW header files
Add path of final version (E3.0 R38) of cleaned up HW header files
with comments removed and appropriate copyright added.

Change-Id: I5b65141d68672da6368f71132ad583ed1fc3db53
CRs-Fixed: 3076670
2021-11-23 15:25:04 -08:00
Zhaoyang Liu
f9a17cae5a qcacld-3.0: enable pci low power int reg configuration
Enable PCIe low power interrupt mask register config for QCA6174.

Change-Id: Id05e4eb0c0c6b824ddfb05ea4fe8efd191015d88
CRs-Fixed: 3075919
2021-11-21 22:23:01 -08:00
Yeshwanth Sriram Guntuka
01acacfcfa qcacld-3.0: Enable irq affinity feature config flag for LI
Enable irq affinity feature config flag for Lithium.

Change-Id: I0a97dd85369aae66450e4869b591c7af74a66960
CRs-Fixed: 3073375
2021-11-12 22:52:07 -08:00
Ke Huang
b43015863f qcacld-3.0: Add the Full Power Down feature support
Add the support for the feature of Full Power Down while
in low power mode.
For this feature, it need to power down wlan chip when
suspend, and power up wlan chip when resume, so need to
change to call wlan driver shutdown and then power off the
wlan chip instead of calling wlan driver suspend when do
suspend, and changing to do power on wlan chip, download
wlan firmware, and calling wlan driver reinit instead of
calling wlan driver resume when do resume.

Change-Id: I293647175c151da0fd6628345f98ea65c83b1bb3
CRs-Fixed: 3061366
2021-11-11 03:12:28 -08:00
Will Huang
eb218a1c61 qcacld-3.0: Add vendor attribute to configure ARP/NS offload
In some scenario, it is required to receive every ARP/NS packet even
it is not to solicit address itself. So add this vendor attribute
configuration to enable/disable ARP/NS offload on fly.

On some platform, if target suspend to WoW mode, APF filter will drop
such ARP/NS packet in the front, so prevent runtime suspend happen
if disable ARP/NS offload. System suspend still allow in consideration
of potential power impact.

It only support on STA/P2P-Client mode device, and this configure is
optional, while default behavior is ARP/NS offload enable. It will
restore to default behavior if interface being closed.

Change-Id: Icd49e230024bc1ce51519cd9fafee9bc9f79f382
CRs-Fixed: 3058494
2021-11-10 23:02:37 -08:00
Yeshwanth Sriram Guntuka
f819fd2149 qcacld-3.0: Enable multiple TX ring pairs for qca6490
Enable config flag to use multiple tx and tx completion
ring pairs for qca6490 when IPA is disabled.

Change-Id: Iafa6df504d7be55cbc5a233d6975963f0e118df5
CRs-Fixed: 3059736
2021-11-09 15:34:35 -08:00
Yu Wang
b5bf07d319 qcacld-3.0: Update Kbuild to compile wmi_unified_11be_api APIs
Update Kbuild to compile wmi_unified_11be_api APIs.

Change-Id: I226cfd9b0d42e4d239a2b966da73c61f3998803e
CRs-Fixed: 3054742
2021-11-06 11:51:52 -07:00
Balaji Pothunoori
517caa56e6 qcacld-3.0: add os_if layer for monitor mode configuration
Add os_if layer for monitor mode vendor configuration.

Change-Id: I20488e0e398b1761745b24a70e9888fe487b88ac
CRs-Fixed: 3055069
2021-11-05 16:31:41 -07:00
Yeshwanth Sriram Guntuka
21958305b5 qcacld-3.0: Add support for multiple queues per AC in TX
Add support for multiple queues per access category and
flow steering in TX.

Change-Id: I40385ab300fc2f7ef83a0f052b95e32a25accfb0
CRs-Fixed: 3059758
2021-11-05 07:59:31 -07:00
Utkarsh Bhatnagar
40d0e1ae42 qcacld-3.0: Cleanup WMA HWMODE
Cleanup WMA HWMODE and WMA HWMODE List
as the same functionality is already taken
care by policy manager

Change-Id: I5dc1342422e70737111f882013ed3a6351a85336
CRs-Fixed: 3064739
2021-11-05 02:34:33 -07:00
Jinwei Chen
3cd06e5ecf qcacld-3.0: RX packet FW reinjection check for FISA
For beryllium, use sw_exception bit to indentify is it FW
reinjected frame or not, if sw_exception bit is marked, then
skip FISA for these kind of frame.

Change-Id: I6ca74c244c366641a7bcfddff2834550b1e5b472
CRs-Fixed: 3056157
2021-10-28 10:21:10 -07:00
Rakesh Pillai
b716b9746c qcacld-3.0: Enable Reduced peer_id field width feature
Enable the below datapath MLO features in Kbuild
- DP_USE_REDUCED_PEER_ID_FIELD_WIDTH

The above feature reduces the width of peer_id from
peer_metadata, thereby reducing the size of the peer
object array.

Change-Id: I58533c241a40184129786f11a47f3722cf005a61
CRs-Fixed: 3059637
2021-10-27 01:11:21 -07:00
Vevek Venkatesan
0ea8b922c2 qcacld-3.0: remove FEATURE_HAL_DELAYED_REG_WRITE_V2 from Kbuild
Since the code under FEATURE_HAL_DELAYED_REG_WRITE_V2 has been
removed and cleaned up, removing the build flag from Kbuild.

Change-Id: I66072af952877881fb700869ae4774e4f1a388cc
CRs-Fixed: 3056477
2021-10-14 15:04:47 -07:00
Mohit Khanna
35736804a8 qcacld-3.0: Update path for monitor files
Monitor mode code has been restructured into 1.0 and 2.0 directories.
Update Kbuild path to reflect the same.

Change-Id: I59e79decd269a394b21c30e0685015e6ff16e772
CRs-Fixed: 3027215
2021-10-12 02:28:04 -07:00
Aditya Kodukula
37026bc3ff qcacld-3.0: Add Support to offload icmp feature to fw
Add support to offload icmp feature to fw in case of
suspended state to avoid high power consumption.

Change-Id: I3ff19d71eac530c75be57e6b52b975e755ff2a53
CRs-Fixed: 3042452
2021-10-12 00:08:44 -07:00
Srinivas Dasari
fbd5ee5c48 qcacld-3.0: Cleanup ROAM_TARGET_IF_CONVERGENCE usage
wma to target_if convergence code is guarded under the feature
flag ROAM_TARGET_IF_CONVERGENCE and it's is enabled currently.
Remove the flag usage and remove the deprecated code(else part)
also.

Change-Id: I6973d9c366ec6a9c6164dd19f6f4775dd3ebf5f0
CRs-Fixed: 3049942
2021-10-06 00:02:06 -07:00
sandhu
cff5dc24a9 qcacld-3.0: create a sysfs to display stats on console
Add a sysfs to display DP stats on console. Sysfs file
displays requested stats on console and wlan logs.

Change-Id: Ifd56d1bf6f578a4ce3f1d963040e6d3cd138c64a
CRs-Fixed: 3035860
2021-10-05 02:51:12 -07:00
bings
a44cf88b36 qcacld-3.0: Implement legacy commands of easy mesh
Provide below APIs for easy mesh.
API to get the current frequency of the given VDEV.
API to get acs status of the given VDEV.
API to get cac status of the given VDEV.
API to get/set bandwidth of the given VDEV.
API to get band information of the given VDEV.
API to get connected STA count of the given VDEV.
API to get BSSID of the given VDEV.
API to get SSID of the given VDEV.
API to set channel of the given VDEV.
API to get/set cac timeout of the given VDEV.
API to get/set country code of the given VDEV.

Change-Id: Ia0bd201ad8155a66a4a8c5517f6fa43f3f358505
CRs-Fixed: 3027192
2021-09-30 10:51:28 -07:00
Pragaspathi Thilagaraj
7e90b8b5f5 qcacld-3.0: Fix missing attributes in connectivity logging events
Fix few missing attribute in below connectivity events:
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_EAP_RESPONSE
QCA_WLAN_VENDOR_DIAG_EVENT_TYPE_ROAM_SCORE_CURR_AP

Also send the roam candidate info properly to userspace.

Change-Id: Ia9c4f095316adf8f40294f1e119cad648749bb72
CRs-Fixed: 3037650
2021-09-28 21:11:51 -07:00
Bapiraju Alla
49d83e4831 qcacld-3.0: Fix undefined symbols for ifmgr APIs
Fix undefined symbols for ifmgr APIs while compilation

Change-Id: I3563b04f9995e5c91f351f997b391fc22eb9c1b2
CRs-Fixed: 3046487
2021-09-28 17:04:35 -07:00
Huashan Qu
818dcd2f18 qcacld-3.0: Rename QCA_MCL_DFS_SUPPORT to MOBILE_DFS_SUPPORT
Rename QCA_MCL_DFS_SUPPORT to MOBILE_DFS_SUPPORT.

Change-Id: I82fbad81b4a66f2e1cb7780d13248b18d5fb5da2
CRs-Fixed: 3038285
2021-09-23 21:35:04 -07:00
Aditya Kodukula
9115747214 qcacld-3.0: Add feature flag to support ICMP offload
Add Feature flag WLAN_FEATURE_ICMP_OFFLOAD to support
ICMP offload feature.

Change-Id: I7ef593c76eaf4a02651e67bcf53b7a607a58421e
CRs-Fixed: 3042400
2021-09-22 22:00:28 -07:00
Pragaspathi Thilagaraj
2483cde388 qcacld-3.0: Kbuild: Enable nested composites on supported QKI kernels
KERNEL_SUPPORTS_NESTED_COMPOSITES := y is used to enable nested
composite support. The nested composites support is available in
all GKI & QKI kernels beginning with
5.10.20, but unfortunately is not available in any upstream kernel.

When a QKI kernel is used the flag is not set explicitly on the
kernel sources. Current logic sets the flag for GKI kernels only.
So extend the logic to set the flag for QKI kernels also.

Change-Id: I96aa36628aaf66f194c14f8883674da205220117
CRs-Fixed: 3041134
2021-09-21 14:29:35 -07:00
Srinivas Dasari
c3470070d6 qcacld-3.0: Enable ROAM wma to target_if convergence
Enable ROAM_TARGET_IF_CONVERGENCE to enable the
wma to target_if roaming convergence code.
This is a temporary change and shall be reverted by
removing the define ROAM_TARGET_IF_CONVERGENCE usage and
the legacy code(i.e. code present in else part).

Change-Id: I840573b4699f23b7633b8049741a57a0dda975a7
CRs-Fixed: 3039950
2021-09-20 12:12:00 -07:00
Pragaspathi Thilagaraj
612fe2eca2 qcacld-3.0: Add infrastructure for connect/roam logging
Add new files for connect/roam logging. Add changes to
initialize the logging buffer.
Make changes to support enqueue/dequeue log.
Define enums for MAIN_TAG, Sub TAG, category.
Add structure definitions for logging buffer.

Change-Id: I1d283fcf464da90d4f5533214d480ddda156ec27
CRs-Fixed: 3013486
2021-09-17 13:47:47 -07:00
Ashish Kumar Dhanotiya
33ec87f37a qcacld-3.0: Add feature flag for connection roaming ini
Currently driver don't have any feature flag for connection
roaming ini config and it directly tries to read the connection
roaming ini file, on some of the platforms if this ini file is
not present it returns failure message but some of the platforms
results in timeout which results in unexpected behavior.

To address above issue add a feature flag to read connection
roaming ini config.

Change-Id: Ica4159533e46ca5cc2048bf50eab2290bf5ae7d5
CRs-Fixed: 3035148
2021-09-16 10:47:19 -07:00
Aditya Kodukula
ac2783819c qcacld-3.0: Move MDNS offload changes to a new file
Add a new file and move mdns offload changes into it.

Change-Id: I6b42dd7abfbf91952ca2b7e6a89b46df269ff32f
CRs-Fixed: 3032927
2021-09-12 01:12:17 -07:00
Yu Wang
a4791d8279 qcacld-3.0: add build flag for network package timestamping
Network package timestamping is optional for TSF feature,
to make it configurable, add a new build flag
WLAN_FEATURE_TSF_PLUS_SOCK_TS.
This flag will be set only when CONFIG_WLAN_SYNC_TSF_PLUS
is enabled and CONFIG_WLAN_SYNC_TSF_PLUS_DISABLE_SOCK_TS
is not.

Change-Id: I413e85fadf93264cd41c2739b6d870aa08d60efb
CRs-Fixed: 3027378
2021-09-10 15:36:13 -07:00
Karthik Kantamneni
d49f188236 qcacld-3.0: Enable WLAN_SKIP_BAR_UPDATE support for lithium targets
Enable WLAN_SKIP_BAR_UPDATE support for lithium targets

Change-Id: Ic7ac34a6845b54005181f58081b389b2e79b29a8
CRs-Fixed: 3031396
2021-09-08 00:19:21 -07:00
Chaoli Zhou
c87f453be0 qcacld-3.0: Export CFG_TGT_DEFAULT_BMISS_OFFLOAD_MAX_VDEV
In order to support four STA default interfaces
to be created and up after driver loaded, it
requires setting bmiss_offload_max_vdev=4 to
Hastings fw. So export this variable to be
configurable and can be modified if in need.

Change-Id: I25db5dd72de7d45c6be682891abba711edaf20dd
CRs-Fixed: 3030148
2021-09-06 20:51:27 -07:00
Bapiraju Alla
07eeda1420 qcacld-3.0: Increase the mac vdev support for 80211be
Currently max vdevs are defined as 6 in osif. Increase it to 9
in case of 11be.

Change-Id: If64306cfc55690d7523ee910074064051a1b1d78
CRs-Fixed: 3027377
2021-09-01 17:13:16 -07:00
Chaoli Zhou
a41677c73f qcacld-3.0: Add CFR support for Hastings
Add CFR build flag and support CFR vendor command for Hastings.

Change-Id: I296d08b532e35c09669091ec7896fd8ab3636d31
CRs-Fixed: 2865391
2021-08-31 01:15:20 -07:00
Surabhi Vishnoi
6ac5a1226e qcacld-3.0: Add support for CFR in adrastea target in Kbuild
Add support for CFR feature for adrastea target. A new feature
flag CONFIG_WLAN_CFR_ADRASTEA is introduced for this purpose.
Also adrastea do not support enhanced CFR so when only
WLAN_CFR_ENABLE and WLAN_CFR_ADRASTEA are enabled, some
compilation issues are seen as CONFIG_WLAN_ENH_CFR_ENABLE is
not set.

Fix these compilation issues as well as introduce a new feature
flag to add support for CFR in adrastea.

Change-Id: I52bc235c4d271004698163897c15721023410017
CRs-Fixed: 2705119
2021-08-31 01:15:13 -07:00
Yue Ma
39066dbed1 qcacld-3.0: Add CONFIG_CNSS_OUT_OF_TREE flag
Use CONFIG_CNSS_OUT_OF_TREE to control if CNSS family drivers are
built from in-kernel-tree source or out-of-kernel-tree source since
the exposed header files will be in different paths. This is also
for backward compatibility.

Change-Id: Icc1253f65a596c8579424f056dcd0fcb5e73a4a1
CRs-fixed: 3022566
2021-08-27 15:12:20 -07:00
Yue Ma
2e49f1156d qcacld-3.0: Handle flags defined as modules properly
The current way in the driver to handle CONFIG_CNSS_UTILS=m and
CONFIG_WCNSS_MEM_PRE_ALLOC=m will not work if the flags are not
coming from kernel Kconfig directly (e.g. CNSS utils and prealloc
module sources are built out of kernel tree) since "cppflags-
$(CONFIG_FLAG) += -DCONFIG_FLAG" will not take effect if CONFIG_FLAG=m.
Fix it in a proper way which is same as handling CONFIG_CNSS_GENL.

Change-Id: Iab4bf34bd1ae89f947bc5f7080e18569810f5f58
CRs-fixed: 3022560
2021-08-27 15:12:16 -07:00
Utkarsh Bhatnagar
ac66479f44 qcacld-3.0: Add support to get thermal throttle stats
Add support for sending WMI_REQUEST_THERMAL_STATS_CMDID
to request for the thermal stats via vendor cmd:
QCA_WLAN_VENDOR_ATTR_THERMAL_CMD_TYPE_GET_THERMAL_STATS
This vendor cmd can either be used to clear the thermal
stats or to request for the thermal stats.
Added ini gThermalStatsTempOffset, which can
configure thermal temperature offset value for capturing
thermal stats in  thermal range such as Thermal STATS
starts capturing from temperature threshold to temperature
threshold + offset.
If this ini is set to 0, then the events are disabled.
Also, add support for the FW event where the requested
thermal stats are sent in FW event
WMI_THERM_THROT_STATS_EVENTID().
The following attributes are sent in the events for every
level:
	STATS_MIN_TEMPERATURE
	STATS_MAX_TEMPERATURE
	STATS_DWELL_TIME
	STATS_TEMP_LEVEL_COUNTER

Change-Id: If8acdeec5bde33be346332ccaf39d78d0151203d
CRs-Fixed: 3016818
2021-08-27 10:23:21 -07:00
Bapiraju Alla
e75b74396d qcacld-3.0: Update Kbuild to compile wmi_unified_11be_tlv APIs
Update Kbuild to compile wmi_unified_11be_tlv APIs

Change-Id: I1188408d94f3d15661bb0b1555969232ab9274ed
CRs-Fixed: 3021154
2021-08-24 23:47:44 -07:00
Yu Tian
25c1a53711 qcacld-3.0: Keep using 4 RX threads for platform with no IPA
For platforms that don't have IPA module, 4 RX rings can be
enabled to map to 4 RX threads. This Change is to implement a
feature flag to separate the number of threads used for
different platforms.

Change-Id: I23744ca6333f29667b0860f386dc9fc45f29abe4
CRs-Fixed: 3018613
2021-08-23 15:43:57 -07:00
Aditya Kodukula
e5d87bf5d6 qcacld-3.0: Support Multicast Domain Name Server Offload
The purpose of the multicast Domain Name System (mDNS) is to resolve
host names to IP addresses within small networks that do not include
a local name server.

It utilizes essentially the same programming interfaces, packet formats
and operating semantics as the unicast DNS, and the advantage is zero
configuration service while no need for central or global server.
Based on mDNS, the DNS-SD (Service Discovery) allows clients to discover
a named list of services by type in a specified domain using standard
DNS queries.

Here, we provide the ability to advertise the available services by
responding to mDNS queries.

Change-Id: Id2a0468d49237c21062cfd1988e34903658cdad9
CRs-Fixed: 3008549
2021-08-20 22:02:01 -07:00
Jianmin Zhu
1d4b529547 qcacld-3.0: Fix Dual AP IPA failed when NAPI enabled
Fix AP+AP IPA offload path failure when NAPI over IPA enabled on mdm
platforms by adding QCA_CONFIG_RPS check.

QCA_CONFIG_RPS is same as CONFIG_RPS, default Y, but depend on CONFIG_SMP
as msm-5.4/net/Kconfig.

For AP+AP mode,
For LA,   CONFIG_SMP on,  then QCA_CONFIG_RPS on,  use IPA exception path.
For mdm,  CONFIG_SMP off, then QCA_CONFIG_RPS off,  use IPA offload path.

For IPA napi enable status check, just use qdf_ipa_get_lan_rx_napi,
don't need MACRO IPA_LAN_RX_NAPI_SUPPORT.

Change-Id: I6b16f2a830d4e7829c9e539896ed2977895d367e
CRs-Fixed: 2992393
2021-08-17 11:01:11 -07:00
sheenam monga
e0c299d567 qcacld-3.0: Add WLAN_FEATURE_P2P_P2P_STA flag for p2p + p2p support
Add feature flag for conditional compilation of feature to enable
p2p+p2p on a device.

Change-Id: I2c95b39c3db6e51213f7625383c365799fff9e31
CRs-Fixed: 2991307
2021-08-16 12:52:55 -07:00
Bapiraju Alla
6a51927f0a qcacld-3.0: Add the 11be mlo related files for compilation
Add the new common files for the 11be mlo files for compilation.

Change-Id: Ia6cbdb83ab67cb0f6174da0cd5072b5a69ce1952
CRs-Fixed: 3009965
2021-08-10 06:14:34 -07:00
Arun Kumar Khandavalli
01dce308f4 qcacld-3.0: Derive MLD mac address
As part of new implementation for 802.11BE MLD(multi link device)
address also need to be generated, derive the address during the
driver probe for max supported MLD's.

Change-Id: I092aac0607a6b7e9e420b1c82a61869cc0b8a2d4
CRs-Fixed: 2993460
2021-08-09 07:51:53 -07:00
Amruta Kulkarni
46d873e37a qcacld-3.0: Generate assoc resp for MLO links
- Generate association response for secondary MLO links
- Update pe session and connect resp with partner link info

CRs-Fixed: 2977970
Change-Id: I17a820abef4f4df082c1f219f35599f669142670
2021-08-03 06:54:26 -07:00
sandhu
a3c80b5790 qcacld-3.0: Modularizaton of monitor mode
adding Flags to support FR of Modularization of
monitor mode.

Change-Id: Idd4c963ab3132fb367b69b0fcaf2c8ddbeb2c571
CRs-Fixed: 2998547
2021-07-30 21:50:30 -07:00
Jia Ding
5a32f6baad qcacld-3.0: Add build option for uplink delay feature
Add CONFIG_WLAN_TSF_UPLINK_DELAY option for uplink delay feature
and enable it on WAIPIO.

Change-Id: I91f8433e853efb177bb1d9aea42cdc7f625a0d4e
CRs-Fixed: 2996368
2021-07-23 01:55:02 -07:00
Ananya Gupta
466dc616fe qcacld-3.0: Enable HIF_CPU_CLEAR_AFFINITY flag
Enable CONFIG_HIF_CPU_CLEAR_AFFINITY flag to
change rx_err_ring irq cpu affinity.

Change-Id: I3d2475210ffd5ac6acef7e0418eef26cf92e1302
CRs-Fixed: 2950630
2021-07-22 12:53:01 -07:00
Yeshwanth Sriram Guntuka
3ca620bc89 qcacld-3.0: Enable flag to skip MSI cfg for mon rings
Enable config flag to skip MSI configuration for
monitor status and destination rings in MISSION
mode.

Change-Id: If295a5afc6731bbec1ad7182590e0015f3a911ba
CRs-Fixed: 2992169
2021-07-20 11:08:52 -07:00
Chaoli Zhou
6610d8c5dd qcacld-3.0: Support extended avoid frequency list updating
Add sub vendor command support for extended avoid frequency
list(QCA_NL80211_VENDOR_SUBCMD_AVOID_FREQUENCY_EXT). It will
exclude the channels that application doesn't prefer and
update to regulatory component.

Change-Id: I5164a0b2c4769e9749ef0e8140bded3f530087d4
CRs-Fixed: 2974529
2021-07-19 08:15:39 -07:00
bings
ec8096ea07 qcacld-3.0: mlo sap bss start
mlo sap bss start implementation

Change-Id: I662c0b469dc5e4430ec7a819ec4ba954bccf5a25
CRs-Fixed: 2974664
2021-07-16 03:54:58 -07:00
Utkarsh Bhatnagar
7f9ad91112 qcacld-3.0: Move sme_ft_api to connection manager ucfg api
Move sme_ft_api to connection manager ucfg apis.

Change-Id: If710be0d8a4a9d45d37f588389e40f66c62c7487
CRs-Fixed: 2990112
2021-07-14 07:25:23 -07:00
Ashish Kumar Dhanotiya
55ab069325 qcacld-3.0: Move dump in progress feature to separate file
With this change introduce featurization for dump in progress
and move implementation related to this feature to new files.

Change-Id: I4614aecde57a9c5ffec765f3afaa943c58956132
CRs-Fixed: 2979226
2021-07-12 07:45:34 -07:00
Vevek Venkatesan
516ad4f689 Revert "qcacld-3.0: enable CONFIG_CLEAR_SW2TCL_CONSUMED_DESC support"
This reverts the change to do the memset of SW2TCL desc consumed by
HW to zero.

Change-Id: Ie56207cf483643f6e294df23f5445ca853a75d51
CRs-Fixed: 2984818
2021-07-06 17:33:26 -07:00
Vevek Venkatesan
f2e5ea6182 qcacld-3.0: enable CONFIG_CLEAR_SW2TCL_CONSUMED_DESC support
Enable CONFIG_CLEAR_SW2TCL_CONSUMED_DESC support for moselle
targets.

Change-Id: I1ef8927c2af040cda67dab9347679f64a55493ac
CRs-Fixed: 2983561
2021-07-05 03:20:17 -07:00
Mohit Khanna
f06df4c16a qcacld-3.0: Cleanup HW-based feature flags from Kbuild
Currently we use hardware based feature flags in Kbuild file to
enable/disable certain feature flags. In case hardware changes, then we
would also need to edit Kbuild file to enable feature flags for the next
target. Instead, use CONFIG_<FEATURE_FLAG> from defconfig files to
enable DP feature flags. This will limit the changes for hardware update
to defconfig files only.

Change-Id: Icc8aa6ad51904946f9141a0f41728ed72b1f6d2f
CRs-Fixed: 2964342
2021-06-30 13:47:24 -07:00
Rakesh Pillai
5010352aea qcacld-3.0: Enable Near Full IRQ in Kbuild
Enable the Near Full IRQ feature flag in Kbuild
for WCN7850.

Change-Id: I3c3760133c3fb31233f8abf450dacbd9ba51f09c
CRs-Fixed: 2965085
2021-06-30 13:47:10 -07:00
Ashish Kumar Dhanotiya
89c41b9256 qcacld-3.0: Enable utf for connection manager
Add a logic to enable utf for connection manager.

Change-Id: Id8ac70c6437bb9d77cc374abbbeea17dab6f9e3a
CRs-Fixed: 2975701
2021-06-29 19:14:36 -07:00
Abhishek Singh
febb2d848f qcacld-3.0: Remove connection manager Macro from kbuild
Remove connection manager Macro from kbuild.

Change-Id: Ica3e5b36c7d8d885f02c906db3456227d25cdfc6
CRs-Fixed: 2979612
2021-06-29 15:04:57 -07:00
Wu Gao
9a64793130 qcacld-3.0: Enable wakelock for enhanced CFR capture
There is potential risk when starting CFR and resume happens at same
time. Wake lock is added to CFR component, and this change enables
wake lock for enhanced CFR.

Change-Id: I1ebe8c11fad66b66adcad0b551756abf2c010cde
CRs-Fixed: 2977699
2021-06-28 19:25:49 -07:00
Abhishek Singh
e9531a9d24 qcacld-3.0: Code cleanup for connection manager CSR
Remove unused code related to ndef FEATURE_CM_ENABLE in CSR.

Change-Id: I156b7ee286f666ee5d660312bf5ba2fe364165c4
CRs-Fixed: 2977584
2021-06-27 23:35:22 -07:00
Balaji Pothunoori
3dfe4180a2 Revert "qcacld-3.0: Enable TX_AGGREGATION_SIZE_ENABLE for HST"
This reverts commit Ieca8464991a6a194d6f02b70fe4972aca288b541.

Change-Id: Iacdbafc5e7e07a3a3effc029edb4adf58a619ada
CRs-Fixed: 2963209
2021-06-25 11:56:09 -07:00
Huashan Qu
1d647269cd qcacld-3.0: Enable connection manager LFR2 code path
Enable connection manager LFR2 code path, then all targets which are
using LFR2 will switch to connection manager code path.

Change-Id: I37f831596699d39e635d88ee88faf841f3a36063
CRs-Fixed: 2968850
2021-06-25 09:40:08 -07:00
Rakesh Pillai
e8621c7db8 qcacld-3.0: Enable SHADOW_WRITE_DELAY
When FEATURE_HAL_DELAYED_REG_WRITE enabled, also enabled
SHADOW_WRITE_DELAY to avoid back to back shadow reg write.

Change-Id: I8d48496814e063ebd441db3520e3a5406c5db13e
CRs-Fixed: 2967202
2021-06-24 22:25:02 -07:00
Alan Chen
27aeb4863e qcacld-3.0: Add debug log to print link vote id
Add debug log to print more details about the link vote id when
PCIe link suspend is not allowed.

Change-Id: I5069202436e0da37b8ae22f84e28ac06d35002b5
CRs-Fixed: 2964957
2021-06-24 16:32:02 -07:00
Tiger Yu
33c1df645b qcacld-3.0: Enable the wlan IPA events for P2P GO/CLI mode for qca6390
Enable the wlan IPA events for P2P GO/CLI mode for qca6390 to avoid RX
packets get dropped due to IPA interface context is not created.

Change-Id: I1e2c5e4085874280779d8d8d07efdb1f33e6d90b
CRs-Fixed: 2853271
2021-06-22 13:14:06 -07:00
Yu Wang
6b08ef992a qcacld-3.0: wait till complete for north bound add key request
Set the newly added flag for wlan_cfg80211_crypto_add_key():
set to true if the request is from north bound, false otherwise.
Move processing of install key complete event into
crypto component.

Change-Id: I981e3722966c5b44255b3e29b7df3fbccfa087c8
CRs-Fixed: 2839454
2021-06-21 23:13:59 -07:00
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