Commit Graph

797 Commits

Author SHA1 Message Date
Jeevan Kukkalli
af7c896bdc qcacmn: Add lite mon rx filter setup/reset functions
Add function to setup/reset lite monitor filters
whenever lite monitor mode is enabled/disabled
respectively through cmd line.
Also add function to configure rx header tlv dma length.

Change-Id: Ia5d8bc36e1d033b3e15737bb6b9854f6a7cdd5df
CRs-Fixed: 3143570
2022-04-20 03:12:41 -07:00
Neha Bisht
6064df8467 qcacmn: Update code with peer_extended_stats instead of rdk_stats
With new configuration changes for enable_peer_extended stats, update
code to peer_extended_stats naming for clean codebase.

Change-Id: I97a7ee331042232098382683fefebd05e6b099c3
CRs-Fixed: 3149920
2022-04-20 01:37:59 -07:00
Harsh Kumar Bijlani
484198b257 qcacmn: Add MSDU counters to account for 11BE puncturing BW stats
Add MSDU counters to account for 11BE puncturing BW stats.

Change-Id: I2c1d420b8d8b4533dcbf64f206783c07555cac99
CRs-Fixed: 3171770
2022-04-19 01:27:03 -07:00
aloksing
2c977089aa qcacmn: Get puncture type from puncture pattern
Populate punctured pattern from WIFIPHYRX_COMMON_USER_INFO_E
And get puncture type from puncture pattern.

Change-Id: I3a5ba4c7c478d15cf3c3cfdcfd0573775ae342ca
CRs-Fixed: 3166010
2022-04-13 05:18:17 -07:00
Jeevan Kukkalli
7f9da4ae12 qcacmn: Add lite monitor set/get functions
-Add lite monitor tx/rx filter config set/get fucntions
-Add lite monitor tx/rx peer config set/get functions

Change-Id: I47cc1085c64468b8a0fada871e2f5d3707ca7063
CRs-Fixed: 3078298
2022-04-05 10:11:03 -07:00
Harsh Kumar Bijlani
91fbf6db50 qcacmn: Change data type for byte count to uint64_t in cdp_dev_stats
Change data type for byte count to uint64_t in cdp_dev_stats.

Change-Id: I917df55f3c816351b6689d39c28ea9a01f76deb3
CRs-Fixed: 3166358
2022-04-05 03:42:19 -07:00
Yu Tian
d9d768bb16 qcacmn: Change feature name in Linux doc field
Change typo in linux doc field

Change-Id: I2d8acdd91bfa7e8c2ba04a3fa60b92a302d0e01b
CRs-Fixed: 3159056
2022-03-30 02:40:28 -07:00
Shwetha G K
d7046ba026 qcacmn: Add API to flush peers in recovery case
Add cdp wrapper API to flush the peers in recovery case.

CRs-Fixed: 3153535
Change-Id: I58869bf118f0aea487e63865300ba8e7462651ac
2022-03-26 01:10:50 -07:00
Yeshwanth Sriram Guntuka
df666b7116 qcacmn: Add support to enable tx hw latency stats at run time
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
2022-03-24 06:47:10 -07:00
Harsh Kumar Bijlani
e70d9e3eed qcacmn: Populate rate index in user specific rx ppdu indication
Populate rate index in user specific rx ppdu indication.
Also correct the computation of total retries in rx ppdu indication.

Change-Id: I07c55260def9d2f1490729b6390bca3d98085c63
CRs-Fixed: 3156428
2022-03-24 03:01:12 -07:00
Varsha Mishra
8ca197ca9e qcacmn: Fix flush frags txrx function pointer
Fix flush frags txrx function pointer.
Change-Id: I9906d0ca5958a7f3b2bbf262c2c1c8320060bc37
CRs-Fixed: 3154661
2022-03-23 04:49:59 -07:00
Yeshwanth Sriram Guntuka
68116c0a80 qcacmn: Send cmd to dump FW stats on suspend failure
Add support to send unit test command to FW to dump
stats on suspend failure due to pending tx completions.

Change-Id: I6afb69a862c366c66a1e1f3dc009964272dfb75a
CRs-Fixed: 3151458
2022-03-23 00:49:03 -07:00
Subrat Dash
20b758944f qcacmn: Decouple FEATURE_PERPKT_INFO from MESH_MODE_SUPPORT
The per packet info feature can be enbaled to support enhanced
stats independent of mesh mode.

Change-Id: I852e7a958c520901b6f418d30deb53fa2f68fb68
CRs-Fixed: 3079000
2022-03-08 05:37:52 -08:00
Basamma Yakkanahalli
70f4513196 qcacmn: Add support for undecoded frame error stats
Display phyrx aborted undecoded frame count and the aborted
reason statistics as part of pdev rx mon stats.

Change-Id: Ia86074e62af3179855734b47801715abd1899fe1
CRs-Fixed: 3123540
2022-03-01 07:07:33 -08:00
Pavankumar Nandeshwar
223693e614 qcacmn: Handle nawds case of intra-bss forwarding
Handle nawds case of intra-bss forwarding of
multicast packets on Beryllium.

Change-Id: I05ec4d937b4b97aa2c9fb325fb2b6a197968ea2a
CRs-Fixed: 3103402
2022-03-01 00:14:42 -08:00
Harsh Kumar Bijlani
c1b9ccd925 qcacmn: Update enhanced Tx stats from Tx HTT PPDU completion path
Update enhanced Tx stats from Tx HTT PPDU completion path in WKK.
Define and use function pointers for architecture specific
functionality.

Change-Id: I4ba443647dbd81c83e899c0f88c5d9a4cc695e14
CRs-Fixed: 3132255
2022-02-28 17:44:03 -08:00
Harsh Kumar Bijlani
a8a078e59a qcacmn: Define macro for maximum mcs value for 11AX and 11BE
Define macro for maximum mcs values for 11AX and 11BE.
Also move bandwidth enums to cdp header file.

Change-Id: Ic24b9fa459b160702fa35162955c6bcdf678c97f
CRs-Fixed: 3134964
2022-02-28 11:38:54 -08:00
Ripan Deuri
deb7232efe qcacmn: Define CDP ops to get the SAWF stats
Define CDP ops to get delay and tx stats.

Change-Id: Ibe9e7e463dffa33b47a22cee723c579fd559f289
CRs-Fixed: 3136231
2022-02-28 07:53:39 -08:00
Ripan Deuri
eb543663d2 qcacmn: Enable usage of delta_tsf for SAWF
Enable usage of delta_tsf for SAWF. This will be used to compute tx
delay. Also, add support to update sawf stats in tx completion.

Change-Id: Idab7fbd5217175167ecdeee21cf5dc9daf1415d6
CRs-Fixed: 3135773
2022-02-28 07:53:27 -08:00
Mohit Khanna
211fb195c9 qcacmn: Support for MIN rates for criticial frames
Add support in BE to send special frames(EAPOL, ARP, DHCP) at minimum
rates.

Change-Id: I2c141cd8ef16d93fb9e99d7c48dd921913627b0b
CRs-Fixed: 3114311
2022-02-24 01:00:12 -08:00
Chaithanya Garrepalli
be02a2d44f qcacmn: Add stats for new TQM release reason on BE
Add Tx completion stats for TQM release reason added
for BE

Change-Id: I7d28cbfacd1378982c5cf9a3f2cf3cffa070ee87
2022-02-23 08:37:16 -08:00
Ripan Deuri
351c175a02 qcacmn: Define CDP ops and DP context for SAWF
- Add CDP ops for SAWF default queue mapping.
- Initialize DP context per peer.

Change-Id: Ic9c4e7d197aeeaa4ed19376ec4007711e86cbe5f
CRs-Fixed: 3128801
2022-02-22 00:57:27 -08:00
sandhu
98f2bdc213 qcacmn: Add support to dump idle link ring hp tp
Add support to dump idle link ring hp tp.

Change-Id: Ia5fa1afd260a64c40133bf52368e93163b80c3ab
CRs-Fixed: 3128366
2022-02-18 14:08:22 -08:00
Basamma Yakkanahalli
3498dbc3a6 qcacmn: Add support to configure phy error mask
The monitor status ring is configured for filtering
in undecoded phy error packets. Each phy error can
be controlled using a specific error mask configuration.

Added below cfg80211tool command to configure phy error
mask for filtering undecoded phy error packets.

cfg80211tool wifix set_phyrx_error_mask mask_0to31 mask_32to63
cfg80211tool wifix get_phyrx_error_mask

Change-Id: I5e4f6a49458cc534d6d1d0f7f2a7424f3cc747b4
2022-02-18 04:53:23 -08:00
Basamma Yakkanahalli
e85fbce095 qcacmn: change to configure and handle undecoded metadata capture
Added change:
1. Set/reset RXDMA MON STATUS ring filter setting and send HTT
   message to capture undecoded frame
2. Handle undecoded frame to update cdp_rx_indication_ppdu structure
   from hal ppdu_info rx status and generate WDI event to deliver it
   to upper layer

Change-Id: I14485f28333b113b5a2fab639611551c2b08af2b
2022-02-18 04:53:18 -08:00
Jinwei Chen
a2f8cef72d qcacmn: Check DBS capable to determine max_mac_rings
For 1x1 DBS case, host also need to configure max_mac_rings
as 2 and initialize each RX ring, currently host only consider
2x2 DBS case.

Check DBS capable instead of 2x2 DBS capable only.

Change-Id: Ic2d4fda9be245a3d0448b6b87ba8676f41d9187e
CRs-Fixed: 3129165
2022-02-17 05:03:29 -08:00
Devender kumar
95ced9577d qcacmn: Add support in IPA datapath for 2X_PDEV
2x_pdev changes are include for support new IPA API's
and change the existing API's argument to support new
parameter which is ipa handle, create a new API to get
the IPA hdl from IPA component in DP

Change-Id: I3d2b378620dbd1e64d295623534126e0eebc2d28
2022-02-16 16:56:50 -08:00
Vivek
afc1a46abd qcacmn: Define CDP ops and DP context for SAWF
Adding SAWF ops for CDP and adding SAWF context
to DP peeer.

Add calls to initialize DP SAWF peer context
when DP peer is created.

Change-Id: I7efb89ae18a28c8b070ad9fcee7754553caa7ff3
CRs-Fixed: 3118160
2022-02-15 18:50:33 -08:00
Harsh Kumar Bijlani
aad4011dcc qcacmn: Add get functionality for HW vdev stats config
Add get functionality for HW vdev stats config

Change-Id: I9dece842be423eb77ff177ea4aae71b0e0320e1e
CRs-Fixed: 3092109
2022-02-14 07:12:31 -08:00
Santosh Anbu
5f86d05c40 qcacmn: Support Multi AST delete service bit info from FW
Add change to fetch and save the WMI service capability of FW to
support multi AST delete using service bit

Change-Id: Iba1af7c230574ae68086357cbb49ae3ca3d944e4
CRs-Fixed: 3118892
2022-02-12 03:16:06 -08:00
Harsh Kumar Bijlani
b934da0701 qcacmn: Correct computation of retry_mpdus
Correct computation of retry_mpdus

Change-Id: Ic1c3ecb458dd371a46161e87727b35016bc78fb4
CRs-Fixed: 3115325
2022-02-10 00:17:16 -08:00
Harsh Kumar Bijlani
148f220408 qcacmn: Segregate stats among peer, txrx_peer & monitor_peer
Segregate the stats among dp_peer, dp_txrx_peer and dp_mon_peer
structures.

Segregation is done as per below:
 * Move stats updated in per pkt path to dp_txrx_peer
 * Consider stats updated purely in per pkt path as per_pkt_stats
 * Consider stats for which there is an alternate path of
   updation as extd_stats
 * Move delay stats and jitter stats to dp_txrx_peer
 * Maintain calibrated stats in dp_peer
 * Move rdkstats_ctx from dp_peer to dp_mon_peer
 * Move invalid peer from dp_pdev to dp_mon_pdev

As per the above segregation, if there is not support for
alternate path of stats updation, then stats in dp_txrx_peer is
combination of per_pkt_stats and extd_stats and dp_mon_peer
does not hold any stats.

If support is there, then dp_txrx_peer holds only per_pkt_stats and
dp_mon_peer holds extd_stats.

Change-Id: I2eb81d1b93a178985c05ff4f6557a173cc8a262d
CRs-Fixed: 3092123
2022-02-09 11:54:07 -08:00
Pavankumar Nandeshwar
b9038e9d4e qcacmn: Move per packet stats params to txrx_peer
Move the stats parameters from the dp_peer which are used
in per packet path to txrx_peer

Change-Id: Ieb68b6950740791b37bbd2bfdc4815c3d7bc4834
CRs-Fixed: 3095637
2022-02-09 11:54:01 -08:00
Pavankumar Nandeshwar
98b25a2ee6 qcacmn: use txrx_peer in rx and tx paths
Use txrx_peer in rx and tx data paths instead of
main dp peer.

Change-Id: If628543092be220021240b6f25ee43b009592bac
CRs-Fixed: 3095637
2022-02-09 11:53:55 -08:00
Vivek
a795c47f70 qcacmn: Add CDP call to configure SAWF
Add CDP call to configure SAWF enable
and disable for a soc.

Change-Id: I42f383a2e33808cf91310fd989a2e12db447236d
CRs-Fixed: 3119127
2022-02-09 07:45:51 -08:00
Santosh Anbu
2e416b83a2 qcacmn: Support multi ast delete ops callback
Add change to define multi ast delete callback to be used at
CDP OL ops

Change-Id: I4bfcf91a56b65a447f436241021288ba867a43f8
CRs-Fixed: 3124256
2022-02-09 02:06:36 -08:00
Nirav Shah
33528eaa41 qcacmn: dp: 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: I9c966c1b8cb09dc5eab6104fdad36c19a1d68045
CRs-Fixed: 3090108
2022-02-04 07:10:51 -08:00
Pooventhiran G
886ce189d0 qcacmn: Track PN failures with relevant stats
When validating MMIE, if PN error is found, track it using relevant
statistics. Defined WMI_HOST_RXERR_PN to flag such PN errors.

Change-Id: Icb1fe9a653f67611539b5cb463adfceadedae38e
2022-02-02 03:16:24 -08:00
nobelj
357bfbe52d qcacmn: Add support to Legacy tx monitor and Waikiki
Add function pointers to free buffer address stored in status buffer
and support tx monitor in legacy and Waikiki flow.

Change-Id: I28612d388009292ff751fe514183fb801909f485
2022-01-28 04:05:13 -08:00
Pavankumar Nandeshwar
4e487c5c45 qcacmn: Fix QUIC Copyright Markings
Fix QUIC Copyright Markings

Change-Id: I9f14871bfc89f7d9a4340cd9c412d519e145687c
2022-01-27 06:59:24 -08:00
Adwait Nayak
df88a8bdc9 qcacmn: Place pktlog specific code under BE_PKTLOG_SUPPORT
Introduce a new flag "BE_PKTLOG_SUPPORT" for beryllium specific
pktlog support.

Change-Id: If91156541b322905ad5d97cf2d9d7ae687290ecb
CRs-Fixed: 3115832
2022-01-26 10:59:42 -08:00
Subrat Mishra
1e5ee08ad6 qcacmn: CDP interface support for Tx Capture Stats
Add CDP interface structure and ops functions for getting Tx Capture
stats.

Change-Id: I5b01e2ab21aec566848eee805d6a702da150d328
CRs-Fixed: 3111860
2022-01-21 01:54:05 -08:00
Rathees kumar Chinannan
b0f35c7a6c qcacmn: Set Mcast control parameter for isolation mode
Set Mcast control parameter for isolation mode.

Change-Id: Id582e89d897af609c8584daca774d36f7d889d8c
2022-01-20 10:01:14 -08:00
Tallapragada Kalyan
9639c91317 qcacmn: buffer replenish and reap without map and unmap
use dma_inv_range call instead of dma map and unmap
APIs during replenish and reap. This complete code is
under a compile time macro.
before change: 4160Mbps @ 96.5% (core 3)
after change: 4160Mbps @ 90.5% (core 3)

Change-Id: I61bca349a369ace06cd86f353880108cee013cb1
2022-01-20 10:01:09 -08:00
Manoj Ekbote
7d4426b213 qcacmn: Use a memory limit for Tx monitor feature
To avoid any crash/issues due to low memory, a limit
can be specified by the user for each soc.

Change-Id: I5a54b2d8af3769042720f85d0759b487c44e8fcc
2022-01-18 12:53:46 -08:00
Subrat Mishra
95a5d8be88 qcacmn: Define cdp api interface for dp_mon_stats
Add new CDP API interface to get monitor pdev rx stats.

Change-Id: Ifbe25c4b804135541e0fb938cc99bc2713dfb344
CRs-Fixed: 3084586
2022-01-17 02:14:44 -08:00
Subrat Mishra
0a5f55fb4a qcacmn: Add more stats to cdp_soc_stats structure
Add more stats to cdp_soc_stats interface structure to ship it to
userspace. Move soc, delay and jitter stats apis from dp_main.c to
dp_stats.c.

Change-Id: Idb7f8b706e8744350d7fb2e8802d9303b3f25b5c
CRs-Fixed: 3084586
2022-01-17 02:14:38 -08:00
Pavankumar Nandeshwar
c9f584b99f qcacmn: Handle failure cases in txrx_peer allocation
Handle failure cases in txrx_peer allocation and
return appropriate errors to the callers.

Change-Id: I51fb519af86344e078eabfcc3f2883522361e1d9
2022-01-13 13:04:29 -08:00
Harsh Kumar Bijlani
8722ec5b68 qcacmn: Add support to set enhanced stats in pdev
Add support to set enhanced stats in pdev via cdp pdev set param
functionality.

Change-Id: I4c271dfc71511a0869a795c2adbb0e0eb55ba9d0
CRs-Fixed: 3108103
2022-01-13 04:54:27 -08:00
Aakanksha Doda
d92a7a0776 qcacmn: Fix issues with rdkstats
The following issues are fixed with this change-
1. Sojourn stats were printing incorrect values
2. RSSI values were junk numbers

Change-Id: Ibed73cf370a309bf9db5baad37a0e8261c58463b
2022-01-12 05:34:00 -08:00