Incremented an counter when wifi FW drops the packet in DS mode
with reason as FW2WBM_TX_STATUS_DROP and we can dump it
via 260 output
Change-Id: Ieb52b0af6dca66732f34cc7f1cfba5c467e9507f
CRs-Fixed: 3383509
If TX data is TCP ACK, configure TX flow index 3 in
SW2TCL data cmd ring descriptor.
Change-Id: Ibd08b13ba8f0481aa11cd9c3dc54a49cd73674fb
CRs-Fixed: 3368303
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
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
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
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
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
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
Add ring id info in TX HW descriptor event history,
this helps to map history event to corresponding HW TX
ring in multi TX queue enabled case.
Change-Id: I82dcece76b1342f4086d489ba489da7c20ea6cad
CRs-Fixed: 3294177
bank id is newly added in TX descriptor for BE chipsets. As such,
with IPA Offload enabled, IPA needs the bank id information to do
offload WLAN TX.
From WLAN perspective, bank id is designed to be used on a per-vdev
role basis. E.g. STA vdev and SAP vdev have separate and different
bank profiles.
However from IPA perspective, bank id needs to be on a per TX ring
basis, because IPA GSI FW is not able to identify STA or SAP vdev
role on a per-packet basis.
Hence initialize last HOST owned bank id profile for IPA usage.
Change-Id: I0cf71b638f5999905069aff0551d8ebeb5477e17
CRs-Fixed: 3289558
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
Use WLAN_CONFIG_TX_DELAY to enable HW Tx delay for both
SAWF and non-SAWF stats.
Change-Id: I6db7d386c0e3654f53398dcba1db7c5568544b0c
CRs-Fixed: 3262425
- Add support to compute HW Tx completion delay on WKK
- Define arch op to calculate delay
Change-Id: I82567cc781e90fe01dc5a0edfffacd4cde73f652
CRs-Fixed: 3220911
1. Remove prints in per packet path
2. Add prefecth for skb shinfo
3. Avoid qdf_get_cpu() in DP tx
Change-Id: I86d196cc7865a2d5b3a5a6098f6f7d84397a60d0
CRs-Fixed: 3227568
Fetch the SAWF service_id and queue_id from per packet
metadata and populate on transmit descriptor.
Change-Id: Iba652c271b5b701e8af875805e59f0f224ace691
CRs-Fixed: 3194921
When TX completion is released from FW, dp_tx_notify_completion()
will not be invoked, then TX DCHP ACK will miss
hdd_softap_notify_tx_compl_cbk() which then
WMI_PEER_CRIT_PROTO_HINT_ENABLED with value 0 will not send to FW.
(1) move dp_tx_notify_completion() from dp_tx_comp_process_desc_list()
to dp_tx_comp_process_tx_status(), so that both TX completion release
source FW or TQM case will call it.
(2) clear TX notify flag for intra-bss forwarding BC/MC to avoid
unnecessary TX completion notify.
(3) Set ts.status for release source FW case otherwise it will be value
0 always.
Change-Id: I2bf9900a3d16ba162a83b061f0b96e7d2f79423a
CRs-Fixed: 3178423
This feature can be enabled runtime using sysfs interface.
Support is added to dump and clear the histogram stats.
The lower delay regions has to be more granular to indicate any
medium related issues for time sensitive XR applications.
Change-Id: I0a44a54d12d92ce016de349810cb2bedebaf9a58
CRs-Fixed: 2981006
Search flag addrX and addrY will be enabled for STA + TDLS case,
but currently TX bank profile is not updated which then STA still
use default TX bank profile - index based lookup search, TX might
fail.
Update bank profile with addrX and addrY search enabled.
Change-Id: I6af12d3707b59c5d4b4bba1fc5ec05a22bfcd984
CRs-Fixed: 3148759
Add support to change the tx_desc value to 65536. Some changes
to make the function argument as u32 type us made
Change-Id: I7cbde1b7ed4ab4e278c25c1ecfa94b7f673197f2
CRs-Fixed: 3130833
Currently HW TX queue HP value is updated for every TSO segment enqueue,
as a part of optimization update HP only for the last segment.
Change-Id: Ibe349a1e6f55932bf780e1f755f13841078a493f
CRs-Fixed: 3138142
Support TX completion and RX delay tracing by Ftrace for KIWI,
Add generic IP protocol packt tracing like ICMP packet.
Change-Id: Ie0c4b1764ce953fd2ed41fc5eea8aa28c8d427d9
CRs-Fixed: 3126080
Initialize txrx_ref_handle for whunt bypass,
Which is complaining use of uninitialized txrx_ref_handle,
as it is not able to detect that txrx_ref_handle is
populated from another API.
Change-Id: I0f69cf4c8442a5655559622a5825d7af35b9ae5e
CRs-Fixed: 3127788
Move the stats parameters from the dp_peer which are used
in per packet path to txrx_peer
Change-Id: Ieb68b6950740791b37bbd2bfdc4815c3d7bc4834
CRs-Fixed: 3095637
Tx descriptor is not being freed and put back in tx desc
pool for a long time. As a result, system is not going
into suspended state.
To find this descriptor, during dp_bus_suspend and
dp_runtime_suspend, parse through the descriptor pool to
check for any descriptors not freed for a long and trigger
self recovery when found.
Change-Id: Id97c5c8537c9bec922f4e254b5bf094505ee61ff
CRs-Fixed: 3109868
The following issues are fixed with this change-
1. Sojourn stats were printing incorrect values
2. RSSI values were junk numbers
Change-Id: Ibed73cf370a309bf9db5baad37a0e8261c58463b
Multicast support for MLO
1. Following functions are newly added.
dp_rx_igmp_handler()
dp_tx_mlo_mcast_handler_be()
dp_rx_mlo_mcast_handler_be()
dp_mlo_get_mcast_primary_vdev()
Change-Id: If215f843369e6e2621ef302b924e524c86f0d30b
In the case of MCC due to low power mode atomic operation in
accessing the bank is resulting the crash.
Fix crash by using spinlock for WIN and mutex for MCC.
Change-Id: I5bb49cbed32e41ad88bfaeb24496adb180e37551
In the case of RAW mode, VAP parameters encap type, dscp_to_tid map id
and cipher are not updating in bank register.
Added a API to update vdev param.
Change-Id: I702bee563e7451f403fa32292bf20680cd66e213
CRs-Fixed: 3078687