Gráfico de commits

17481 Commits

Autor SHA1 Mensagem Data
Sham Muthayyan
1e28e45ce7 qcacmn: Add WMI health monitor events
Add WMI health monitor events to send the health
monitor data to application.

Change-Id: I792b733822b03518dc964f38fe4a158132b0ac49
CRs-Fixed: 3266229
2022-08-21 00:37:39 -07:00
Srinivas Pitla
0f6b60eed6 qcacmn: Fix ML peer state update for PMF stations
In current code, deauth is skipped for PMF clients
but ML peer state is updated for PMF clients also

This fix skips ML Peer state update for PMF clients

Change-Id: I41c870a5ff4bb658f378b65c729947fad324e807
CRs-Fixed: 3261671
2022-08-19 16:15:29 -07:00
Tallapragada Kalyan
1b1b3adbea qcacmn: fast TX API and registration
This is a new FAST TX API which avoids various checks.
This API will be called when SFE tags a pkt as fast_forwarded
and vap's fast_tx flag is set.

avoid additional re-checks in the wifi TX function

CRs-Fixed: 3218650
Change-Id: Iba17ede59652a1ff2af553f57de21dc58946298e
2022-08-19 16:15:21 -07:00
Sajini R
f6060a9296 qcacmn: Define target type macro for IPQ53xx
Define target type macro for IPQ53xx

CRs-Fixed: 3268698
Change-Id: I45ad100afb7378b02ee71b11f6db91bd4b92f9a4
2022-08-19 06:40:49 -07:00
Amir Patel
1885bbbc5e qcacmn: Fix pointer typecast issue
Fix pointer typecast issue in monitor

Change-Id: I45579fce49a7e2afacfc5462f208c01280c677d8
CRs-Fixed: 3257285
2022-08-18 23:08:25 -07:00
Venkateswara Swamy Bandaru
d43b4a9f17 qcacmn: Fix for 3 link mlo connection issue
Update CSA IE in per sta probe in already filled
partner link info.

Change-Id: I681813234f9dfbf0dc80009d2137765b6b5d3b62
CRs-Fixed: 3268027
2022-08-18 23:08:19 -07:00
Amrit
cbc05e67fe qcacmn: Allocate memory according to num_users in rx path
Allocating memory according to number of users in rx path

Change-Id: I02ced1772ed04e67dfba5beb87737fcd874fd6da
CRs-Fixed: 3264995
2022-08-18 02:11:59 -07:00
Karthik Kantamneni
322be7253c qcacmn: Implement static inline API's for net dev stats handling
Currently net dev stats are handled using QDF MACROS which is not
ideal approach. So implement OS agnostic inline API's for
handling net dev stats.

Change-Id: Ib8ee368d6575ba6628df473fda057c254fc5bab4
CRs-Fixed: 3189332
2022-08-18 00:49:16 -07:00
Yu Wang
67011a392c qcacmn: add support for CoAP
Add support for Constrained Application Protocol.

Change-Id: I425206a990778cf946a4805192eff4d54562a945
CRs-Fixed: 3254128
2022-08-17 23:14:34 -07:00
Vignesh U
6efe5cf271 qcacmn: Redefine the regulatory constant INVALID_CHANNEL
Currently the INVALID_CHANNEL assumes the value 0xBAD. When a channel list
array is indexed, there is an array out of bound error when the channel
list array is indexed using INVALID_CHANNEL or when the index is greater
than equal to NUM_CHANNELS. So a check for an invalid channel enum is
likely to be, (ch_enum == INVALID_CHANNEL) && (ch_enum  >= NUM_CHANNEL).

Redefine INVALID_CHANNEL enum constant with NUM_CHANNELS constant so that,
the validity checks for channel enum is compressed as,
(ch_enum >= INVALID_CHANNEL).

Change-Id: I5be588fe6011ac85031325f56eff208f2aa7a1e5
CRs-Fixed: 3238386
2022-08-17 19:58:12 -07:00
Yu Wang
3f49761156 qcacmn: add module ID for CoAP
Add a new module ID QDF_MODULE_ID_COAP for
CoAP(Constrained Application Protocol).

Change-Id: I4420f741984dfa81677717a6bbb337a0f0b3051b
CRs-Fixed: 3254124
2022-08-17 19:58:05 -07:00
Jeevan Kukkalli
b207f0b859 qcacmn: Add space for PPDU id TLV in headroom
Aad additional space for PPDU id TLV in headroom
while forming monitor mpdu.

Change-Id: Ie033ee6dd196838aa63cc456794b55fd9b780531
CRs-Fixed: 3237248
2022-08-17 15:35:35 -07:00
[B
1a321fabfd qcacmn: Error Handling in Event Based Mechanism
Error Handling in Event Based Mechanism to reduce
delay by removing sleep while getting response
from firmware.

Change-Id: I9ee8e03b0d0ebdaae150417fb0fb0531e5bf4a86
CRs-Fixed: 3268808
2022-08-17 15:35:28 -07:00
Ripan Deuri
28f25ca052 qcacmn: Support HW Tx delay stat
Use WLAN_CONFIG_TX_DELAY to enable HW Tx delay for both
SAWF and non-SAWF stats.

Change-Id: I6db7d386c0e3654f53398dcba1db7c5568544b0c
CRs-Fixed: 3262425
2022-08-17 04:58:14 -07:00
Rakesh Pillai
b98780527f qcacmn: Handle monitor tlvs to avoid extra logging
Currently there are few TLVs which are received in
the monitor status ring, but are not parsed for any
data. Since these TLVs are unhandled, it causes
excessive logging per monitor status ring entry.

To avoid such excessive logging, handle the currently
unhandled TLVs which are always received as part of
other TLVs in monitor status ring.

Change-Id: Idbe5a25e926a088adacaf5dfb892aff5885f8576
CRs-Fixed: 3266650
2022-08-16 15:18:32 -07:00
Chaithanya Garrepalli
baa9ecbd3c qcacmn: update peer state assert for MLO peer
Update the peer state check for MLO peer as per
MLO state transistion

Change-Id: Ia57ab5fd95f90226f505cba6363a343e5e0b44e1
CRs-Fixed: 3266005
2022-08-16 10:47:17 -07:00
nakul kachhwaha
f9883deaec qcacmn: Add dp support for traffic end indication
Based on traffic end indication marked packet coming
from network stack, send indication packet to fw via
exception path to terminate ongoing SP.

Change-Id: Ia2be60d485be4b05665cf6b1684af9258417ffb1
CRs-Fixed: 3207392
2022-08-16 07:40:41 -07:00
nakul kachhwaha
ef9ad9d2d2 qcacmn: Add qdf APIs to set/get IPv4/6 TOS and TC field
Add QDF APIs to set/get IPv4/6 TOS and TC field.

Change-Id: Ie048b74bacea33e9b1c57c5561064673247ee14c
CRs-Fixed: 3207377
2022-08-16 07:40:35 -07:00
Tallapragada Kalyan
bddee57d00 qcacmn: Access peer, vdev only if peer_id changes
Access peer, vdev only if peer_id in current pkt is
different from previous pkt.

CRs-Fixed: 3257844
Change-Id: If10356a01030511c7473112f67f3434d328d4586
2022-08-16 07:40:29 -07:00
Nandha Kishore Easwaran
9b81f6a195 qcacmn: Enable Subtype and PPDU filtering
Enable subtype filtering for all types of frames. Check the subtype
for all types of frames and drop the frames which are not requested.

Also enable PPDU level filtering by dropping the MPDUs after the first
MPDUs.

Change-Id: I94496ec278724a7023a79b50c2cd7a77b2707e74
CRs-Fixed: 3247309
2022-08-16 06:01:12 -07:00
Jinwei Chen
7b61b2f9d5 qcacmn: Support NO_RX_PKT_HDR_TLV for KIWI
Support NO_RX_PKT_HDR_TLV for KIWI

Change-Id: I489a1dd6ffa7b2fe2a12735459490b8da5f79f5b
CRs-Fixed: 3262204
2022-08-16 06:01:05 -07:00
Nandha Kishore Easwaran
0585386f57 qcacmn: Fix mpdu logging option in htt command
Fix the mpdu logging option in htt command so that msdu/mpdu
logging is correctly written into the register.

Change-Id: I98b8a1a78cc0cfae37e91e9e3e489ac54139ff75
CRs-Fixed: 3265015
2022-08-16 06:00:58 -07:00
Yu Tian
226e9258ba qcacmn: Add force break quota for REO error ring process
In some conditions REO error ring may have RX flood, but
there is no force break scheme for that ring process. This
leads to starvation of RX refill buffer ring and then FW
crashes due to no refill buffer. Change is aimed to force
break of ring processing and refill buffers in small batch
count.

Change-Id: I3c543ebb16bd1709e782be759c9063a356a96562
CRs-Fixed: 3262685
2022-08-14 21:58:06 -07:00
Xiaoning Ma
8b1a96a35a qcacmn: Add fixed FDD mode to qca_btc_chain_mode QCA vendor attribute
Previously when chains of BT and WLAN 2.4 GHz are separated,
hybrid mode will be used for BTC. Now adding fixed FDD mode
to fulfill different BTC scenarios.

Change-Id: I8f415ae65160977df478c9bd908e9429d69103c3
CRs-Fixed: 3247146
2022-08-13 15:59:54 -07:00
Pavankumar Nandeshwar
d9709af89a qcacmn: Add API to clean up tx desc pool
Add an API to clean up tx dec pool in case of
umac reset.

Change-Id: I99fe11bcd07471f5aafefbeae10a9d4683cc5c5c
CRs-Fixed: 3266252
2022-08-13 02:59:35 -07:00
Tallapragada Kalyan
d5a9b008f4 qcacmn: initialize num_pending variable
initialize num_pending variable to avoid compilation issues

CRs-Fixed: 3266470
Change-Id: I877adca30d2f91d011c18a8a2ffc3e4c083f91ad
2022-08-12 22:47:05 -07:00
Jinwei Chen
2e15ede864 qcacmn: fix rx de-frag issue for aes_ccmp security
In function dp_rx_defrag_ccmp_decap(), it will remove the 8 bytes
ccmp header for each fragment, but later at the end of dp_rx_defrag(),
8 bytes ccmp header will be removed again, then actual 8 bytes packet
data will be lost, de-frag failed.

Do not remove ccmp header in dp_rx_defrag_ccmp_decap() as it is not
necessary.

Change-Id: Ibf7beca38e9979a3203d4de702716c8e24e435fe
CRs-Fixed: 3263872
2022-08-12 22:46:58 -07:00
Shreedhar Parande
4854e732d7 qcacmn: Get UL-MUMIMO support from Target
Read UL-MUMIMO from target cap flag

CRs-Fixed: 3255924
Change-Id: I02d7644b3dc43c757d8363d8de0f66c856c041ce
2022-08-12 20:58:39 -07:00
aloksing
89d0469b44 qcacmn: Fix RCU issue due to infinite loop
Loop is continuing as chain index is getting assigned to zero inside loop.
Adding check for chain index to avoid infinite looping.

Change-Id: Ifff67c00b15d12195e5a3bf554de1529511c400f
CRs-Fixed: 3261913
2022-08-12 18:55:56 -07:00
Ashish Kumar Dhanotiya
ae8d97dcac qcacmn: Send feature set info to fw in wmi init command
Based on new requirement, driver needs to send feature set
information to fw as part of wmi init command.
With this change, fill the feature set info in feature set bitmap
and send this to fw with wmi init command.

Change-Id: Ic405c7e8e5ddd1399deacfaab240e979468c53c2
CRs-Fixed: 3262862
2022-08-12 18:55:50 -07:00
Ashish Kumar Dhanotiya
99694b6f53 qcacmn: Add support to get feature set info
Based on the new requirement, add support to get requested
feature set info from different feature components.

Change-Id: I75c5a3062312b1124d21d1ae429a7c5a18d9f2d0
CRs-Fixed: 3262867
2022-08-12 18:55:42 -07:00
Sai Rupesh Chevuru
086f192c0a qcacmn: Forward the igmp packet for intra bss processing
Forward the igmp packet for intra bss processing

Change-Id: Ie4838a00542e49e8d76503297332b99cf3e67563
CRs-Fixed: 3261921
2022-08-12 16:46:59 -07:00
Amir Patel
4720a30038 qcacmn: Optimize branch predictions in monitor path
Optimize branch predictions in monitor path

CRs-Fixed: 3265307
Change-Id: I7536a2fb94b350a678c123d7e0cfcd187816c96d
2022-08-12 13:49:05 -07:00
Sheenam Monga
b4064fc72a qcacmn: Add conditional compilation for 6 GHz BAND
Add 6 GHz function under CONFIG_BAND_6GHZ flag to avoid
multiple definitions and function defined but not used
issues.

Change-Id: I873300b3165df2f13b3c99d5e11e388dadde1fab
CRs-Fixed: 3265134
2022-08-12 08:27:10 -07:00
Ashish Kumar Dhanotiya
09c76ef447 qcacmn: Parse file name info as well from oem data event
Based on new requirement parse file name info as well from
oem data event.

Change-Id: Ifd4d086402821cd42e267f48879dc31a74017fa1
CRs-Fixed: 3262696
2022-08-12 04:28:32 -07:00
Debasis Das
73c7a4f2a3 qcacmn: Add support to calculate percentile delay-stats
Add support to calculate percentile of delay-bound
for for Tx-delay stats.

Change-Id: If386e0d1c5091f260aa4281adbd3debde4bf8446
CRs-Fixed: 3243170
2022-08-12 04:28:25 -07:00
Venkateswara Naralasetty
4fc084d9c6 qcacmn: change pool id validation for mon status ring process
Pool id validation should not be against MAX_PDEV_CNT because pool id
1 is valid in case of monitor status ring process. Hence, added a new
API dp_get_rx_mon_status_desc_from_cookie() which validate the pool id
against NUM_RXDMA_RINGS_PER_PDEV to get rx_desc from rx_desc_status pool.

Change-Id: I20baf8c667c1983eff08a204afe3736708d844d1
CRs-Fixed: 3262544
2022-08-12 04:28:18 -07:00
Basamma Yakkanahalli
8a1a784ac8 qcacmn: Add vdev feature flag for 20TU probe resp
6 GHz SAP needs to send either a probe response or fils
discovery at configured interval.  These in band
discovery frames can be disabled when lower band vdevs
are collocated with 6 GHz vdevs.

FILS disabled when lower band vdevs were up.
After vdev up send if WLAN_VDEV_FEXT_FILS_DISC_6G_SAP
is not set, host sending FILS command to enable 20TU.

Either driver or user not enabled 20TU probe response,
Host did not send the 20TU PRB RESP TMPL before sending
20TU PRB RESP enable command resulted Target assert.

Fixed this issue by adding 20TU vdev feature flag
and add appropriate check before sending command
to enable 20TU probe response.

Change-Id: Icb0ea5ef40b1fe2dd2dc6b97dc079ab7780e8cfc
CRs-Fixed: 3244471
2022-08-12 02:36:06 -07:00
Himanshu Batra
42809a7e56 qcacmn: Add fix to avoid out of bound access in monitor peer stats
Add fix to avoid out of bound access in monitor peer stats

Change-Id: I361a931803471d073a8120ee0d930ee3f042e0fc
CRs-Fixed: 3264994
2022-08-12 02:35:59 -07:00
jinbaoliu
7e761c2015 qcacmn: Driver provides rx rates info instead of FW
Driver is able to get rates info per MSDU, which can
exclude special frames like ARP, DHCP, etc. This change
is to refill the rates info parsing by rateflags from FW,
including legacy rate, MCS, NSS, BW, preamble, GI, etc.

Change-Id: I043c3ba5c2a06019f3e9bd1765e6b8430174cf6b
CRs-Fixed: 3263832
2022-08-12 02:35:52 -07:00
jinbaoliu
d1a40c701e qcacmn: Driver provides rx rates info instead of FW
Driver is able to get rates info per MSDU, which can
exclude special frames like ARP, DHCP, etc. This change
is to refill the rates info parsing by rateflags from FW,
including legacy rate, MCS, NSS, BW, preamble, GI, etc.

Change-Id: I129d5f0dc48758d1a92ac0c3622c1761cdae8286
CRs-Fixed: 3255467
2022-08-12 02:35:46 -07:00
Abhishek Singh
716388fe19 qcacmn: Add vdev info in cm_id to avoid same id across vdevs
In per vdev cm_id, same ids may get used across vdev's,
leading to confusion.

So add vdev id info in cm_id to avoid same cm_id across
vdev's.

How to read new id
Command_type   vdev_id    req_id
   0c            01        0001  = 0x0c010001
=> connect on vdev 1 req_id 1

   0d            00        0002  = 0x0d000002
=> disconnect on vdev 0 req_id 2

Change-Id: If526ea31a3d792a31c44ad607e1878691120dd7c
CRs-Fixed: 3263910
2022-08-12 00:39:57 -07:00
Ashish Kumar Dhanotiya
e1e2b8e42f qcacmn: Add support for feature set event capability
Add support for feature set event capability.

Change-Id: I6bfaaf5845722cde47602b6eb8d2bf205151cffd
CRs-Fixed: 3262642
2022-08-11 15:23:37 -07:00
Pavankumar Nandeshwar
bdb7f89395 qcacmn: Umac changes for umac prereset handling
Handle Umac prereset event from firmware.

Change-Id: I651eb9e6359399fe5689e4209e4685955d653973
CRs-Fixed: 3174560
2022-08-11 15:23:28 -07:00
Pavankumar Nandeshwar
1607e73a26 qcacmn: HIF changes for umac prereset handling
Handle Umac prereset event from firmware.

Change-Id: I88a25ae8eb403af40f044de4500ce42729da1e49
CRs-Fixed: 3174560
2022-08-11 15:23:20 -07:00
Pavankumar Nandeshwar
a839cac207 qcacmn: Datapath changes for umac prereset handling
Handle Umac prereset event from firmware.

Change-Id: I1d3d295468e97ebce5e7310055abc508e16e99b0
CRs-Fixed: 3174560
2022-08-11 15:23:13 -07:00
Yu Tian
ed3ba3ca44 qcacmn: Replenish more RX buffers when refill ring runs low
When nbuf allocation failure happens, there is no retry scheme.
So RX buffers in refill ring may shrink and not got enlarged.
This change is aimed to replenish more RX buffers when watermark
is less than critical low threshold.

Change-Id: I201b9e252ba08ba1bff47e0b5ec819a45f1b1ddf
CRs-Fixed: 3245915
2022-08-11 12:43:23 -07:00
Tallapragada Kalyan
f7a1c7e0c7 qcacmn: Add HW, SW and nbuf prefetch support in Berryllium
Add HW, SW and nbuf prefetch support in Berryllium, this will
ensure we have prefetched the HW desc, SW desc and nbuf by
the time we are in the 3rd iteration of the dp_rx_be_process
first loop.

CRs-Fixed: 3218647
Change-Id: I27d371c5d1c9a37d61e4fc00d5eb03609fad589c
2022-08-11 09:47:27 -07:00
jinbaoliu
7c19bfc5eb qcacmn: Fix CSI Stats being not collecting in MLMR Mode
Features that rely on monitor status rings do not work when
num_rxdma_status_rings_per_pdev is assign to 1. This change
will fix this issue by removing this assignment statement.

Change-Id: Ic7b8b84be6fa9c34c15a86cb6ec5174cc512ddd9
CRs-Fixed: 3258392
2022-08-11 09:47:19 -07:00
Deeksha Gupta
dd35ee28a5 qcacmn: Reset cm_id before release active command
Currently, Active command id is reset during memory release,
but a new command will become active before memory release
of serialization command, and if it try to check the active
cm_id (using cm_get_active_req_type) it will be valid, which
is incorrect.

Fix is, reset the cm id for active command before calling
release active command.

Change-Id: I6f4844c61349a00af5967f9c757844473244d737
CRs-Fixed: 3263863
2022-08-11 06:55:09 -07:00