Revīziju grafs

215 Revīzijas

Autors SHA1 Ziņojums Datums
Pavankumar Nandeshwar
8e622cfba5 qcacmn: Handle dp peer setup for non MLO in BE case
Handler dp peer setup for non MLO case in BE specific
handler. This API currently deals with direct switch feature.

Change-Id: I6e26687e5e7e92108dfa0da782970f758fd1965e
CRs-Fixed: 3381234
2023-01-19 09:31:41 -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
Rakesh Pillai
d7593bcef6 qcacmn: Add debug logs in MLD peer create/delete
Add debug logs in the MLD peer create/delete path
to help debug any issues with MLD peer leak.

Change-Id: I63126d9b86f3179a88809836371fc765d340b6d8
CRs-Fixed: 3379148
2023-01-15 03:55:44 -08:00
Pavankumar Nandeshwar
9e61c69fea qcacmn: Enable intra bss fwd offload on vdev by default
Enable intra bss fwd offload on vdev by default
by sending wmi command to firmware.

Change-Id: I5fcc828f8360c93a7adbcf8f1f2cb7cc58593a49
CRs-Fixed: 3362569
2023-01-13 18:40:19 -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
6774796947 qcacmn: Add soc count for multi-chip mlo
Add soc count for multi-chip mlo

CRs-Fixed: 3370858
Change-Id: I128a378cdf29f03eb4356cd8049aea47e0af7c18
2023-01-04 22:02:10 -08:00
Tallapragada Kalyan
328ea67a32 qcacmn: enable FSE with MLO support
from Beryllium onwards a single Flow Search Table
will be used across multiple radios. to ensure this
a single FST attach is called for the first SOC's
pdev and FST detach is called only during last pdev
of last SOC. the same FST instance is saved in all
pdevs of all the SOCs

CRs-Fixed: 3366409
Change-Id: I42fbdc6f09fb902021877e100a2831a1a24bc975
2023-01-04 18:30:46 -08:00
Amit Mehta
877eaf11ea qcacmn: Fix HTT HAL Tx status mapping
Currently HTT_TX_FW2WBM_TX_STATUS_DROP and HTT_TX_FW2WBM_TX_STATUS_TTL
are mapped to HAL_TX_TQM_RR_REM_CMD_REM which results in the wrong Tx
status print in case HTT_TX_FW2WBM_TX_STATUS_TTL where No ack is received.

So to fix the status log issue map HTT_TX_FW2WBM_TX_STATUS_DROP to
HAL_TX_TQM_RR_REM_CMD_REM and HTT_TX_FW2WBM_TX_STATUS_TTL to
HAL_TX_TQM_RR_REM_CMD_TX to log correct Tx Fail Status.

Change-Id: If125313f6b831ce5ca0f7eec9e8e3f1a03229f16
CRs-Fixed: 3362679
2023-01-02 10:53:33 -08:00
Pavankumar Nandeshwar
4e0ae9b556 qcacmn: Set search idx and cache mapping for ppeds
Set search idx and cache mapping for ppeds in
sta mode

Change-Id: I1f892d329878e093d19324a178566b87715e1736
CRs-Fixed: 3367824
2022-12-29 05:19:41 -08:00
jinbaoliu
5a1cd48520 qcacmn: Fix TX stastics failed to take TSO segment into account
Currently, we record TX musdu number and packet length, which falls into
three categories: from stack, from host and successfully transmitted. In
TSO mode, the msdu from stack will be divided into several fragments and
each of the fragment will be transmitted as an individual msdu. This change
will take TSO into account when it comes to the 3 forms of TX statstics.

Change-Id: Ie11cb7541b4e109609bf3104739a5e19f51dcc13
CRs-Fixed: 3361412
2022-12-28 06:15:15 -08:00
Sreeramya Soratkal
d148f093d2 qcacmn: Handle allocation of descriptors to special packets
Special frames like EAPOL should not be dropped as it would cause
failure in connection. To prevent the dropping of higher priority
special frames, reserve a set of descriptors from the tx descriptor
pool.

Check the regular soc or pdev limit for the allocating tx descriptors
for the regular packets and use the reserved set of descriptors
only for the special packets.

CRs-Fixed: 3331359
Change-Id: I15532fb5e325ba6ad997090008bda8c52707a05b
2022-12-27 17:07:26 -08:00
KARTHIK KUMAR T
a2625b18ab qcacmn: Get ast_idx from dp peer structure
Get the ast_idx from dp peer structure to
set search index in HW tx descriptor

Change-Id: Icc7e70d8bb739348403663a1fe647849c57d277a
CRs-Fixed: 3346449
2022-12-27 14:27:45 -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
Pavankumar Nandeshwar
5c2acdff8d qcacmn: Avoid dereferencing link_peer when be_peer is NULL
Avoid dereferencing link_peer when be_peer is NULL
in ds peer setup.

Change-Id: Ia637fa5a2b059aeee857287030d885d0d53d2189
CRs-Fixed: 3365548
2022-12-26 17:47:43 -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
Tallapragada Kalyan
80e1cfff99 qcacmn: add new fields to flow rule HAL API to support PPE
waikiki supports sending a packet from REO2PPE if a flow
rule matches. these changes are added to take advantage of
this HW feature when ever we are adding a flow rule

CRs-Fixed: 3359141
Change-Id: I8fedfcc759bc0427d71d3bb615e61ba38577c5c0
2022-12-21 15:56:57 -08:00
Surya Prakash Raajen
49ca504dbd qcacmn: Maintain dp_mlo_ctxt per each MLO group
As per current design, dp_mlo_ctxt is allocated during the
initialization of module while the MLO grouping information is
understood after WMI_READY_EVENT. The same is deinitialized while
unregistering the module.
To ensure dp_mlo_ctxt exists per MLO group, bring the dp_handle
a layer below in the hierarchy into the mlo_setup_info and allocate
dp_mlo_ctxt after the WMI_READY_EVENT is received from all the SOCs
for a given group. Deallocate it after the WMI_MLO_TEARDOWN_COMPLETE
event is received.

CRs-Fixed: 3355405
Change-Id: Ic3102a34a8d44877827e2ff1f7da2e414b2b463f
2022-12-21 06:33:27 -08:00
Sreeramya Soratkal
27f8943f9c qcacmn: Update the MLO ops to include attach and detach
To handle dp_mlo_ctxt assignments from the UMAC module,
moving the callers for attach and detach to the list of
MLO operations for multi chip.

CRs-Fixed: 3355400
Change-Id: Id743ec1086cf1b3ba0a3ec42212dc21c5a9ccc6b
2022-12-21 06:33:18 -08:00
Pavankumar Nandeshwar
c811b9d544 qcacmn: PPE-DS feature naming convention update
1. Change the names of parameters and functions related
   to direct switch feature from ppe to ppeds
2. Remove the unused ppe_release_ring

Change-Id: I5a95b1273e338f354903af98158578ac65758a8a
CRs-Fixed: 3345097
2022-12-18 01:11:58 -08:00
Pavankumar Nandeshwar
3548804a60 qcacmn: Add a cdp api to stop the ppe ds
Add a cdp api to stop the ppe direct switch
from control path

Change-Id: Id1c5d5c0e2b80d6fa0fa7b907fac133f815f9627
CRs-Fixed: 3356472
2022-12-18 01:11:49 -08:00
Sai Rupesh Chevuru
cff09264f4 qcacmn: Process the pending rx buffers during soc teardown
Process the pending rx buffers during MLO soc teardown sequence.

Change-Id: Ifbcbf7e2779a8ef740f77b3e9edfc02ca5355269
CRs-Fixed: 3332802
2022-12-16 10:40:09 -08:00
Nitin Shetty
8271e2c71e qcacmn: set service code bypass for PPEDS
Program service code bypass to avoid
L2 new mac address learning exception
when fdb learning is disabled

Change-Id: I588a885aac1755cdf2ded5176b25d5ae9f533091
CRs-Fixed: 3354407
2022-12-13 07:46:21 -08:00
Nanda Krishnan
66fd581109 qcacmn: Printing Tx Desc in use count for DS mode
Requirement:
As part of serviceability for DS, display the number
of Tx descriptors currently in use by DS module
via “cfg80211tool athXX txrx_stats 260” like non-DS.

Snippet of log/code of Non-DS:
DP_PRINT_STATS("Tx Descriptors In Use = %u",
                       soc->stats.tx.desc_in_use);

Fix:
Introduced a new ops (dp_tx_ppe_ds_inuse_desc)
to display the current Tx desc in use.
dp_ppe_ds_inuse_desc API will be registered
to dp_tx_ppe_ds_inuse_desc in initialization
and it will be invoked from dp_print_soc_tx_stats API
to display the in_use desc via 260 command

Change-Id: I18971fc5d4cb5eb5437b012e3b89db7c9c2446b4
CRs-Fixed: 3352686
2022-12-13 05:48:11 -08:00
Kenvish Butani
069ca18f58 qcacmn: MLO Mcast Support for ML-Reconfig
1.Add check in Tx completion path to handle
mcast packets from all ML partner vdevs
2.Handle cases where a ML mcast vdev can be
deleted and started as NON-ML vdev and
viceversa by adding reset ML mcast conf.
3.Optimized Register configurations for Mcast
at Init/Delete and Start/Stop AP

Change-Id: Iab8a5a081e2e0377509574d362754d32c5b83df2
CRs-Fixed: 3350350
2022-12-07 23:45:21 -08:00
Jinwei Chen
1bf08f3566 qcacmn: Add TX completion ring desc sanity check
Suspect HW update WBM2SW ring HP, but the ring entry contents are
not updated accordingly which then host will fetch one stale ring entry,
this makes other TX packet are freed unexpectedlly.

Add change to detect this situation earlier, if HW cookie conversion is
done, then invalidate 2nd dword for upper 32bits of VA, so next time when
reap this ring entry contents to know if this desc is updated by
HW or not. if HW cookie conversion is not done, then compare the PA in
buff_addr_info with PA in current TX desc to check.

Change-Id: I351eb4f860216fc618ff28736d4832fcec45dcc5
CRs-Fixed: 3345935
2022-12-07 09:47:10 -08:00
Ripan Deuri
86a74c11bf qcacmn: Set SAWF Tx metadata based on the queue
Set SAWF Tx metadata based on the host queue id.

Change-Id: I8d759b239fff32da5d84d89468431b54aab63f3c
CRs-Fixed: 3349695
2022-12-05 13:03:56 -08:00
Pavankumar Nandeshwar
1f137636fa qcacmn: Handle mlo case for ppe ds peer setup
Handle mlo case for ppe ds peer setup by
making sure the src_info is always extracted from
primary vdev.

Change-Id: Ie4b0d8f475966e8c4264cea5cf32f0dc95e76c4a
CRs-Fixed: 3346074
2022-12-05 11:12:18 -08:00
Pavankumar Nandeshwar
e5534b1953 qcacmn: Register ppe2tcl and reo2ppe ring interrupts
Enable and register PPE2TCL and REO2PPE ring interrupts
for direct switch
Set interrupt timer threshold for ppe2tcl ring as 30 us.

Change-Id: Ida1ff6c3c2000f16f07960f7eae0d10edc337dc0
CRs-Fixed: 3341790
2022-12-02 21:56:01 -08:00
Kenvish Butani
620ad50e89 qcacmn: MLO Multicast Support for ML Reconfig
Add support for GET MLO Multicast API to check
if the vdev is primary multicast vdev.
Enhanced SET MLO Multicast API to reset primary
multicast flag for all partner vdevs.

Change-Id: Ic88949ce922bb1d0fd34349058d254de0d1f563c
CRs-Fixed: 3322523
2022-12-02 12:29:31 -08:00
Neha Bisht
5d0b7ea33f qcacmn: Create a list of skbs to be freed at once
Create a list of skbs to be freed at once in dp tx completion path

Change-Id: I42129b4306206f7224ceabc87d07e2a87b8fcab6
CRs-Fixed: 3274945
2022-11-25 12:35:45 -08:00
Pavankumar Nandeshwar
a2ddd8956b qcacmn: Retain ds ring indices across wifi restart
Retain ds ring indices across wifi restart to avoid
edma hang. Fetch the indices from ds module and set
the corresponding ds ring indices.

Change-Id: Ia299a7006166aef096c7d2c1f65f6bef65415a37
CRs-Fixed: 3332152
2022-11-25 00:08:26 -08:00
Pavankumar Nandeshwar
ab2bd061c2 qcacmn: Enable wbm2sw_release ring for ppe2tcl ring
Enable wbm2sw_release ring for ppe2tcl ring to
handle tx completions

Change-Id: I38e81bb46e376e3f059f321454aa4d241e6aadb7
CRs-Fixed: 3309444
2022-11-23 02:15:55 -08:00
Chaithanya Garrepalli
16e9e30d49 qcacmn: Disable DP interrupts in force MLO teardown
In force teardown case disable the interrupts before
going down. As target may be still active, we may
still continue to receive traffic. Disabling
interrupts to nsure we dont process interrupts while
cleaning up partner SOC

Change-Id: I7092d398c039302234206cb72f7453b6dc0cbcb7
CRs-Fixed: 3332961
2022-11-17 00:33:26 -08:00
Manish Verma
50819e81b2 qcacmn: Add per peer PPE routing support
Add the per peer routing support for PPE-DS feature

Change-Id: I71666fc2f29b9497fd4ec9f5d50af1cb05d91fe2
CRs-Fixed: 3306766
2022-11-14 05:42:28 -08:00
Chaithanya Garrepalli
86f7649e19 qcacmn: gracefully handle error packets on partner soc
Ideally in MLO, Rx buffers should be routed to error
rings of the SOC which owns the RX buffer or link desc
incase of any error or fragment

But in case of HW issue if the packets are routed to
partner soc. Handle gracefully instead of assert

Change-Id: Ia56188808dfd034e960e1c1345de8f760e4b05f1
CRs-Fixed: 3327959
2022-11-07 14:58:21 -08:00
Neha Bisht
bd144caad7 qcacmn: Set fast_recycled flag in fast xmit path
Set fast_recycled flag for packets in fast xmit path

Change-Id: I6388beb5d187d000c300898d1d1480e6654836eb
CRs-Fixed: 3306873
2022-11-07 13:11:32 -08:00
syed touqeer pasha
e44617cc32 qcacmn: Extract TID from the SAWF MSDUQ
Extract TID from the SAWF MSDUQ

Change-Id: Iaa3e396644898eef32c4474a85421150e301eff5
CRs-Fixed: 3315716
2022-11-07 13:10:38 -08:00
Chaithanya Garrepalli
7c36d50fba qcacmn: Update replenish soc get for same SOC
In dp_replenish_soc_get() API return current
soc if chip_id of SOC matches

Change-Id: Iab7cc1809ab0e5daeb07dcfbd8f67a1d7ee9b12f
CRs-Fixed: 3297754
2022-10-28 04:59:12 -07:00
Jeff Johnson
7747be1e7b qcacmn: Fix new misspellings of "address"
The following change introduced new misspellings of "address", so fix
them.
- Change-Id Idc9eec559b71ebb2dc39ea1d648a384ea0eb9559
  qcacmn: Fetch the reo qdesc from the peer

Change-Id: I29c71972d46a06c24fef2ed90d2a4226cc2ac654
CRs-Fixed: 3319356
2022-10-27 09:45:22 -07: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
cbce7e71c4 qcacmn: Avoid Wifi load issue for 256M profile
In 256M profile dp_li_rx.c file is not getting compiled.
Initialize dp_rx_chain_msdus_li() only when HOST mode is supported.

Change-Id: I96f71b9ea7869f0ba9fec05424b0a8c6f378f2f4
CRs-Fixed: 3314081
2022-10-19 22:31:00 -07:00
Sai Rupesh Chevuru
63d8ecaa0f qcacmn: Fetch the reo qdesc from the peer
When compact rx tlv feature is enabled fetch the
reo qdesc from the peer instead of rx pkt tlvs.

Change-Id: Idc9eec559b71ebb2dc39ea1d648a384ea0eb9559
CRs-Fixed: 3311270
2022-10-16 21:43:15 -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
Pavankumar Nandeshwar
004224830d qcacmn: Allocate dedicated tx desc pool for ppeds
Allocate dedicated tx desc pool for PPE2TCL ring
tx completion handling.

Change-Id: I3d3220b9b38b6f24d98ce73cb5273ae4dc6e7f37
CRs-Fixed: 3300660
2022-10-13 15:09:49 -07:00
Neelansh Mittal
83990186aa qcacmn: Add PPE Tx/RX changes
Add support for:-
   1. PPE VP entry attach and detach.
   2. Per VAP PRI2TID Support
   3. Dump the PPE VP HW entries.
   4. Add tx completion handling for ppeds descriptors

Change-Id: I2a6d0be5bb556663a39a24d17b703877f3b5ad00
CRs-Fixed: 3276981
2022-10-13 15:09:43 -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