Add link_id check while aggregatin stats into vdev at
time of peer unmap, otherwise vdev stats are aggregated
twice and hence give incorrect output.
Also comment out link_id fetch in BE Rx path as it is
currently not enabled.
Change-Id: I91ceab4c6380bbd6e0cb2717adb2413e9e8e4221
CRs-Fixed: 3435688
Adding check for num users and num ul users to not cross max users limit
And convert target uplink trigger tid to data tids
CRs-Fixed: 3396991
Change-Id: I66180dba0889e116ce8ff4e582fd9c1d8391f27b
In print_peer_stats function while printing REO Q
ref. table if the input peer is MLD peer then the
API to check a valid MLD peer, returns NULL, hence
calculated peer index is invalid causing OOB array
access for REO Q Ref. table resulting in crash.
Fix, For MLO Link Peer REO Q ref table is not
updated and hence return from function without
printing. For MLO MLD peer update the API to check
the peer type and update peer index accordingly.
Change-Id: I66208410bd7a44d381c470621d10c118040d903a
CRs-Fixed: 3401569
Raw mpdu check in dp_rx_reo_err_entry_process() is introduced
from change "Free the raw mode mpdus in REO error ring",
it is fixing the low memory issue during MLO STA T-put test
which reports REO error code 0 - HAL_REO_ERR_QUEUE_DESC_ADDR_0
frequently.
this introduce regression for SAP certification case 4.3.3.1.
it seems REO error 0 is hard and not expected to be reproduced
during MLO STA T-put test, remove the raw mpdu check in
dp_rx_reo_err_entry_process() to not block SAP certification.
Change-Id: I509e80eb38d57f20b24c32ba1da2ad7132358030
CRs-Fixed: 3387453
Usually decrypt error frames will be reported and cause
a disconnection. In some cases, the disconnection is unwanted.
Change is aimed to do additional check for frame SA, if it's
received from a valid peer, then don't report it to protocol.
Change-Id: I19d9acffc5ebd2c20abdf19eebc02f6875f762ca
CRs-Fixed: 3363352
This change will modify a function using qdf_mem_malloc()
does not call qdf_mem_free(), contributing to memory leak.
Change-Id: I2bffae4c4edacc1bd454b3992af55ab954d0a031
CRs-Fixed: 3375124
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
Add cdp layer API to get stats and
Copy pdev deterministic stats from dp_pdev to cdp structure
Change-Id: Ia7dbbe4cfe7ebe66a040879144505b17aaaa625a
CRs-Fixed: 3380939
Add cdp layer API to get stats and
Copy peer deterministic stats from dp_mon_peer to cdp structure
CRs-Fixed: 3380939
Change-Id: Ic90b9c9f5c7463ad0d5b7c2bb7a371e4d4fef070
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_stats.c, 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 remove that documentation. The documentation at the
interface will be added separately if it is not already present.
Change-Id: Ic6463cb4acf49758ac78c4ac464b7e55133ecca4
CRs-Fixed: 3373155
Current rx_mpdu_received and rx_mpdu_error stats reporting is incorrect.
rx_mpdu_received would be rx_mpdu_delivered + rx_mpdu_errors.
Also get combined rxdma_errors(rx_mpdu_errors) handled across host and FW.
Change-Id: Icbfeaffd7cd27d7f894df2d39add9cc7b47714be
CRs-Fixed: 3333010
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
Currently the datapath stats do not print the
packet count for 320 MHz bandwidth.
Add support to print BW counters for 320 MHz.
Change-Id: Ic9579a1860e6aca442f7bc4a3b92930e8506e9bd
CRs-Fixed: 3359372
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
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
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
Only 8 RX data TIDs are used, so HW stats query only needs to update
these TIDs info to save command executing time. Change is aimed to
reduce the TID number and use only one REO flush command for overall
REO cache flush.
Change-Id: Ib642451b9f07f62198126c45644742e1908280cd
CRs-Fixed: 3325964
Add the stats to indicate the packet drop for EAPOL packets.
This will be useful for the debug of EAPOL packet drop.
CRs-Fixed: 3329895
Change-Id: I5e0abb4e574116a55de124c0012c17154c7c63da
In defrag path match addr1 with VAP mac address
and if there is mismatch do not process considering
it as corrupted packet
Change-Id: I003c07949e760ff4e64a7d22bfbefc25cc817ae2
CRs-Fixed: 3327977
In ethernet TX fast recycle bit is set to buffer after
invalidate.
In Rx replenish API do not invalidate buffer if fast
recycle bit is set as it is already done
Change-Id: Ic74a96033a659baac381c921aff75296d155f169
CRs-Fixed: 3321142
Raw mode mpdus in REO end up resulting in NULL_QUEUE_DESCRIPTOR error.
Raw mode mpdus are not expected in REO, free them without further
processing.
Change-Id: Ica920caecf90a1107ce17836051e1019c9dfc994
CRs-Fixed: 3282836
Sometime DP might receive a exception packet with
already deleted peer id. Added a check to avoid sending
such packets.
Change-Id: Ib43d55c7930e4ddc7550d486505a56cb48e85afe
CRs-Fixed: 3285034
Add call to API to calculate the moving average fo delay for
the following
NW Delay
Wifi SW Delay
Wifi HW Delay
Change-Id: I35afa4d83e474b0173cc1f4b9b6456b9fe2c963c
CRs-Fixed: 3286176
1. Add stats to indicate REO ring size and Rx desc pool size
2. Add low threshold interrupt stats
3. Update SW2RxDMA ring size max to 16K
Change-Id: If84b88bc08e447774ab445df36b9f2f2219356b8
CRs-Fixed: 3286940
CV_QUERY stats are sent by FW as part of HTT_TX_CMN_SOUNDING_MODE
and not as part of individual AC, AX, and BE modes. This change
will hence correctly display the stats.
Change-Id: Ie499499137be4f542973a44829caa71f7b559f2f
CRs-Fixed: 3270132
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
When TX completion entires are pending over 60 seconds,
Perform force free for these entries that belong to invalid
vdev. This could allow system to continue to go to suspend.
Change-Id: I34a39b8c7a9385fea0bed087e0644564f426bf90
CRs-Fixed: 3252807