コミットグラフ

90 コミット

作成者 SHA1 メッセージ 日付
Kenvish Butani
7fdd918e7f qcacmn: Add Support of Rx MLO Link Stats for ML Peer
Add Support to update Rx per packet path, MLO Link
stats for ML Peer

Change-Id: Ica25993126b4ce49f9e36b7b290d9887e4885155
CRs-Fixed: 3397721
2023-03-08 07:42:17 -08:00
Kenvish Butani
3243b9e4f4 qcacmn: Add Support of Rx Err MLO Link Stats for ML Peer
Add Support to update Rx Error path, MLO Link stats
for ML Peer

Change-Id: Ie5000d0d30a41fa69c86259bae0fd7a8094bddf7
CRs-Fixed: 3397721
2023-03-08 07:42:07 -08:00
jinbao liu
ff32a66fd5 qcacmn: Fix redundant moving the TP in the REO DST RING
In RX process, driver reaps the data in the REO DST RING
by successively move the tail pointer. The problem is
that driver will move the tail pointer twice if something
wrong happens, like sanity check, which will lead to the
miss of an entry next to the abnormal entry. This issue
has existed for a long time due to the code refactoring.

Change-Id: I2c5d402f81090497a4414efbf6e7e79130ba11f5
CRs-Fixed: 3426707
2023-03-08 05:59:29 -08:00
Chaithanya Garrepalli
4eedfd8cf7 qcacmn: For WDS EXT use descriptor fields for 4-addr
For WDS ext use fr_ds and to_ds fields to check for
4-addr instead of reading value from TLV

Change-Id: I261746018de2320367e8650332a5c355edfb1489
CRs-Fixed: 3410639
2023-02-24 07:05:02 -08:00
Sai Rupesh Chevuru
10826afad5 qcacmn: Adding NAWDS support along with WDS-EXT
Adding NAWDS support along with WDS-EXT

Change-Id: I19d277fa575750d3194afc9ec9af3180a8c936ad
CRs-Fixed: 3406151
2023-02-24 07:04:50 -08:00
Sai Rupesh Chevuru
fea98c45ed qcacmn: Set the flow idx valid flag based on flow timeout
Set the flow idx valid flag only when there is no flow timeout.

Change-Id: If73219d894f3f5b7a4fde9105d1bb3fc18648f80
CRs-Fixed: 3399446
2023-02-22 03:34:07 -08:00
Tallapragada Kalyan
44e4444e61 qcacmn: create qdf_nbuf_cb definition for win and mcc
WIN and MCC shared a common definition od qdf_nbuf_cb
considering that there are various fields which are
not common it is decided to have 2 different definitions
for WIN and MCC. in case of WIN he per pkt cycles will
be significantly reduced in RX path.

CRs-Fixed: 3257879
Change-Id: I5d3fa7c91592afb905702f2dca49972be89664e3
2023-02-20 10:39:00 -08:00
Chaithanya Garrepalli
e614273c12 qcacmn: Avoid intrabss when da_peer is same as ta_peer
In case when transmitter peer is same as destination
peer avoid intrabss

Change-Id: Ia6d744a68380e57f73d52b81429c0ffe66481716
CRs-Fixed: 3400126
2023-02-16 04:17:46 -08:00
Jeff Johnson
afe5a28707 qcacmn: Fix dp/wifi3.0/be documentation
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/be, so fix those issues. In addition, there are a
number of instances where public functions have their implementation
documented instead of having their interface documented, so move that
documentation.

Change-Id: I15c8570aa1832ed053fa38f536fa36b2ca0aa56b
CRs-Fixed: 3373157
2023-02-11 02:23:47 -08:00
Chaithanya Garrepalli
28235e65eb qcacmn: Fix intrabss forward issue in split-phy
In case of split phy return the partner vdev from
same SOC for intrabss forward

Change-Id: Id7d2acd80d60e4d5cfb6df821f72a8d885d8fe57
CRs-Fixed: 3398627
2023-02-10 18:10:47 -08:00
Sushant Butta
42be95a6df qcacmn: Word mask TLV support for monitor
Word mask TLV support for QCN9224.

Change-Id: I9e5d6cbb32cc7469dc367f6fc4bca4ce8adc9da8
CRs-Fixed: 3368626
2023-02-08 22:56:03 -08:00
Kenvish Butani
2fbc8c8ab0 qcacmn: Optimize DP Rx Error Handling (Part-1)
1) In WBM2SW Rx Error path, code to reap and
the process the HAL descriptor is split into
BE and LI architecture specific functionality
in dp_be_rx and dp_li_rx files respectively.
2) The function to handle Null Queue desc.
error for WBM and REO Rx Error path is split
into BE and LI architecture specific
functionality in dp_be_rx and dp_li_rx files
respectively.

Change-Id: Ic51a9742f65cee677ed7f3081f49fb3ece5b42f1
CRs-Fixed: 3356179
2023-02-07 07:00:22 -08:00
Nandha Kishore Easwaran
96c2363f18 qcacmn: Change flow_idx_invalid to flow_idx_valid
Change flow idx invalid to flow_idx_valid.
This change is made so that flows for which this field is not present
are identified as invalid flows and not forwarded to PPE.

Change-Id: I92c82bb0ef57012b2b884fe3fd18344b523a3f51
CRs-Fixed: 3390588
2023-02-07 04:55:19 -08:00
Sai Rupesh Chevuru
5e9edf8485 qcacmn: Generate the mcast dummy src mac from the SA
Generate the mcast dummy src mac from the SA
instead of the AP mld mac address.

Change-Id: I146deb8564bd18b33ca87c2bd62121616e149850
CRs-Fixed: 3390036
2023-02-01 05:22:22 -08:00
Nandha Kishore Easwaran
9b6d2e0048 qcacmn: Fix api to set flow_idx_timeout
Fix api to set flow idx timeout by calling the correct
hal function.

Change-Id: Ib9e1987e76eb3e92bde811d51a2ec65b944ada18
CRs-Fixed: 3391487
2023-01-31 08:36:05 -08:00
Chaithanya Garrepalli
ff001a366b qcacmn: Fix VDEV ref leak issue
Fix VDEV ref leak issue in RX IGMP MLO handler

Change-Id: I920231cad434cdd237aedcd0f5c5d695472d1a40
CRs-Fixed: 3380335
2023-01-16 04:34:51 -08:00
Sai Rupesh Chevuru
88dd4c6970 qcacmn: IGMP leave message handling in MLO MCAST
IGMP leave message handling in MLO MCAST scenarios.

Change-Id: Ic0ac16dbe75b4ef2b27e97be3f42c498b503ca06
CRs-Fixed: 3359488
2023-01-06 00:28:12 -08:00
KARTHIK KUMAR T
70e9286f37 qcacmn: mcast_mlo handling in intrabss fwd
mcast mlo handling for the intra bss fwd

Change-Id: I23c1a9759ac3ac59f2f46fdb456c616c77823e8c
CRs-Fixed: 3353501
2023-01-05 18:01:34 -08:00
Tallapragada Kalyan
36ed11fcdd qcacmn: save flow related fields from TLV to SKB CB
flow related fields like flow_idx_invalid and
flow_idx_timeout are needed to send the packet
to PPE_VP hence need to be saved in SKB CB

CRs-Fixed: 3359237
Change-Id: I2166566c53641f6569f69ff316d1bafb67a828d0
2022-12-26 22:50:09 -08:00
Manoj Ekbote
eddc343b43 qcacmn: Intra-BSS MLO changes for WKK v2
Use destination chip and pmac IDs from TLV.
Build flag for HW assist feature is not enabled yet,
so code is not exercised.

Change-Id: Ia9175d6597a7a2780f451d99a9f8ece7a16049e5
CRs-Fixed: 3262344
2022-12-26 11:47:55 -08:00
Sai Rupesh Chevuru
ef34b5b9ab qcacmn: Handling of IGMP packets in MLO Multipass
Due to the CCE rule in QCN9224 IGMP packets will be routed
to err ring. When multipass is enabled, perform multipass processing
before handing over the packet to stack.

Change-Id: I50b747710eb3c49eab60c81bbc61e75e2f8650ed
CRs-Fixed: 3275888
2022-10-20 06:10:52 -07:00
Sai Rupesh Chevuru
12c8b0d0be qcacmn: compact tlv support for QCN9224
Adding compact tlv support for QCN9224, As part of this change
Rx tlv size will reduce from 384 bytes to 128 bytes.

Change-Id: I3f42a781e42b2e696a5b25d9c5f333c8cc83b7fe
CRs-Fixed: 3274152
2022-10-14 23:42:02 -07:00
Sai Rupesh Chevuru
431514912a qcacmn: SG support in RX path
Process the sg frames received in RX path.

Change-Id: Ia2d83c75c46f804599ca8fda4668c43ee508d59e
CRs-Fixed: 3303055
2022-10-14 08:31:27 -07:00
Sai Rupesh Chevuru
6aef607629 qcacmn: htt support for compact tlv feature
Adding htt support for compact tlv feature

Change-Id: If45b5b32c4cef482cb6c54b5f2919b56384a8a93
CRs-Fixed: 3293927
2022-10-09 20:42:33 -07:00
Jeff Johnson
ebfbc0d927 qcacmn: dp: Fix misspellings
Fix misspellings in dp/...

Change-Id: I6ef7a19ee03104ae38a8a77e229b90aa80329592
CRs-Fixed: 3304682
2022-10-07 22:42:22 -07:00
Amit Mehta
c3ea01cd1b qcacmn: Add a tid check for RX to avoid of OOB access
Tid in RX frame header may be larger than MAX TID allowed
value, this will lead a out of boundary array access and
lead to kernel crash at last. Change is aimed to do a TID
check and discard such frame when necessary.

Change-Id: I11f312668a5a42d690c058550f22b0f36f952104
CRs-Fixed: 3264581
2022-09-30 04:26:27 -07:00
Sai Rupesh Chevuru
0991ec65e2 qcacmn: Handling of scatter gather frames
Update the last msdu flag properly in nbuf cb
to handle SG frames.

Change-Id: I2fe0904bdf0d447d57354c207588519816085f63
CRs-Fixed: 3284984
2022-09-14 08:10:55 -07:00
Chaithanya Garrepalli
daed8f2cc5 qcacmn: Changes for Rx fast flag
Change to avoid processing of extended features
based of Fast RX flag

Also add changes to enable or disable this flag
based on feature settings

Change-Id: I8064780a271f8bdcf396bb9e2e2c14998f195535
CRs-Fixed: 3268842
2022-09-08 12:24:27 -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
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
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
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
Nirav Shah
a87c585e12 qcacmn: Extend add timestamp logic for Beryllium
Extend add timestamp logic for Beryllium

Change-Id: I69604b83ce5fe7f112316148213d73fefc88ba9b
CRs-Fixed: 3245806
2022-08-02 01:14:53 -07:00
Jinwei Chen
64d7493b30 qcacmn: add RX statistics per lmac for MLO connection
Add RX statistics per lmac for MLO connection.

Change-Id: I72b942732cc362c1613fae637bc5e1154f9e2ec2
CRs-Fixed: 3251609
2022-07-29 22:57:35 -07:00
Amit Mehta
7e799fcbae qcacmn: Fix Rx packet logging issue
Currently while sending nbuf to rx fate logs
we are not removing rx tlv before sending nbuf
to logger which is causing issue of incorrect
packet type issue.

To Fix issue make changes to make sure that
rx tlv is removed and nbuf length is set

Change-Id: Ib56c8e009398b3410c43be910feb4048bfb06b54
CRs-Fixed: 3241828
2022-07-24 23:07:50 -07:00
Jinwei Chen
9b323ded29 qcacmn: Support RX T-put simulation for KIWI
Duplicate X times of RX packet before delivering to stack, if OTA
RX T-put is 100 Mbps and try to simulate 200 Mbps RX T-put,
duplicate extra 1 time RX packets, this is aimed to test
driver/stack RX capability.

Change-Id: Iaf4db05d0ec0e0cda5fac19fa63b9d3133270847
CRs-Fixed: 3132743
2022-07-24 01:02:01 -07:00
Rakesh Pillai
9ba8236444 qcacmn: Add support to track high watermark for SRNGs
Add support to track the high watermark for the number
of entries which are used at any given instant. This helps
in identifying if the ring size is sufficient or is being
full for certain use-cases.

Change-Id: Id3ffa52c653696699fbcfbb556a815d5f7908863
CRs-Fixed: 3235115
2022-07-11 03:59:38 -07:00
Amit Mehta
6b576c65bb qcacmn: Add packet logging support for initial 32 packets
Add packet logging support by registering
Rx and Tx callback functions for packet logging of
initial 32 Tx and Rx packets.

Change-Id: I91b59b7c5f65f505e3ee730c497347be28955128
CRs-Fixed: 3224881
2022-06-23 07:03:56 -07:00
Abishek Ganapathy
87190fa5f8 qcacmn: Fix multicast traffic failure in QWRAP repeater
In the case of qwrap repeater, send the original packet on the
interface where it received and send the packet with dummy src
on the mcast primary interface

Change-Id: I08f64559ff2a9430b140c962117d4d71ab684b8d
CRs-Fixed: 3214360
2022-06-20 21:30:42 -07:00
Ananya Gupta
8565e7029f qcacmn: Register DP, HTC, HAL modules with Runtime PM module
With restructuring in HIF runtime PM module, modules are
required to register with the HIF runtime PM module. Also,
changes are done in functions of allowing and preventing
runtime PM suspend as part of restructuring.
This change registers DP, HTC and HAL internal modules
with runtime PM module and update HIF runtime PM function
calls with the restructured code of HIF runtime PM module.

Change-Id: I8899a1d3b92a90a05c5eaf4df7609f4008f739f8
CRs-Fixed: 3169372
2022-06-18 23:11:24 -07:00
Manoj Ekbote
b0d3c8ec01 qcacmn: Fix Intra-BSS handling
Don't overwrite the return value yet because there are
other conditions checks that need to return false when
error is detected.

Change-Id: I75a7d61fd665631cfafca7e92cf6a4f346eb0410
CRs-Fixed: 3206749
2022-06-08 11:47:41 -07:00
Sai Rupesh Chevuru
5c0f11603d qcacmn: Check for addr4 valid only in case of first MSDU
In backhaul WDS, Check for addr4 valid only when the
received frame is first msdu.

Change-Id: Ib92ba0fc8b7a651c0c875cdde21f2d5538db2a32
CRs-Fixed: 3214575
2022-06-08 05:09:01 -07:00
Chaithanya Garrepalli
d66a8a55bb qcacmn: Use common REO2SW rings for all SOCs of MLO
Use common REO2SW rings for the packets coming from
all chips of MLO

Change-Id: Icdfd3292d2fbf5e38c1d3b8ff4b30b18009a49f8
CRs-Fixed: 3208378
2022-06-07 19:27:03 -07:00
Pavankumar Nandeshwar
304559ad0c qcacmn: Return correct value for peer isolation case
Return correct boolean values for peer isolation and
bss peer checks in intrabss forwarding.

Change-Id: Ib02645572aafdf4e4c9bc2e40b8b0fc72b90b343
CRs-Fixed: 3206611
2022-05-31 04:03:54 -07:00
Manoj Ekbote
74ede2801b qcacmn: Handle ML destination in Intra-BSS code
When destination peer is an ML peer, get the soc from da_peer.

Change-Id: I93d10a7ab9ce805180397bcf0f3b404c27df528b
CRs-Fixed: 3177339
2022-04-30 03:02:31 -07:00
Sai Rupesh Chevuru
14d0e0cd79 qcacmn: Use unique and random mac address per MLD in IGMP RX
In receive path for IGMP packets modify the source mac to
unique and random address per MLD.

Change-Id: Ifcbf414017b2596656d53d6c921cf7fd63bf0cac
CRs-Fixed: 3176816
2022-04-27 10:28:22 -07:00
Sai Rupesh Chevuru
53ed3db279 qcacmn: Fix for build
Fix build issue when MCAST_MLO defined.

Change-Id: I1a0447e6126f81747f43cc138eaeee528e1c5a6e
CRs-Fixed: 3181198
2022-04-23 06:40:37 -07:00
Sai Rupesh Chevuru
f52e7f0e38 qcacmn: Special cases handling in the case of multicast MLO
In the case of ME6, Backhaul WDS, NAWDS
1. Send the igmp pkt on the same link where it received,
   as these features will use peer based FW metadata.
2. Bypass the reinjection.

Change-Id: Idf0058e182257fbcedd8eb5fc8bcde945e8a91bc
CRs-Fixed: 3171558
2022-04-21 05:57:30 -07:00
Sai Rupesh Chevuru
f179a624a1 qcacmn: HW reinjection support for MLO Multicast
Enabling HW based reinjection for MLO Multicast

Change-Id: Ie9663e0e90ae1ae0a07d229fd6d4c66787d4224a
CRs-Fixed: 3142397
2022-04-19 01:27:09 -07:00
Manoj Ekbote
67fe081325 qcacmn: MLO Intra-BSS changes
When a packet s destined to ML STA from a legacy peer, use
the ML peer id to identify the primary link and redirect the
packet to primary vdev for Intra-BSS.

Change-Id: Id8e6fcc9e2dd638e6d923eef50f55325fa538c49
CRs-Fixed: 3169484
2022-04-08 04:29:07 -07:00