Usually, ADDBA frame exchange is handled by HOST. But when this
is offloaded to FW, an HTT event is reported and HOST only needs
to update RX tid parameters, no need to send addba resp frame again.
BA status update is in addba resp TX completion, so there is no chance
to update this field in ADDBA offload case. This change is used to
set ba status to active to make ba session in correct status.
Change-Id: Iae4a1974cf4b8c55b20862df51b14d5011aefd73
CRs-Fixed: 3201455
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
There is a possibility where host can receive invalid SW cookie
in wbm internal error path which causes invalid rx descriptor
access.
Add a sanity check on received SW cookie to prevent the invalid
rx descriptor access. Also, add sanity check for the duplicate
rx descriptors.
Change-Id: I6400cb1fc067f4bc474f2768c18c8f7ce587fbbe
CRs-Fixed: 3220371
Currenly pool id retrieved from the sw cookie is used in rx buffer
replenish for both buffer type and link desc type in wbm internal
error handling.
In case of wbm internal error with link desc type, pool id can't be
used for rx buffers replenish because pool id notion of rx desc is
different from link desc and this could cause out of memory access
issue.
Fix this issue by using the pool id retrieved from the msdu sw cookie.
Change-Id: I7184571e1f6a67c7266335154121b345fa12b4ab
CRs-Fixed: 3214867
The telemetry agent on certain intervals needs to pull the
SAWF stats from the driver.
Add CDP ops to pull the SAWF stats from the driver.
CRs-Fixed: 3210834
Change-Id: Ibc27059ff13b33acc4e71d3174a0415756dcfc5e
In case of MLO, peer consumpiton stats are getting incremented only for
primary peer as the API was called after primary peer check.
Add fix to call the API before primary peer check so that the stats are
updated for all the link peers
Change-Id: I603e7a37564858e030d8f0f5f16792f516728f60
CRs-Fixed: 3222984
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
There is possibility of receiving invalid SW cookie
which maps to invalid rx descriptor access, to avoid such
issues validate the SW cookie before using it for fetching
rx descriptor
Change-Id: Ib90a398865c5e0afedd5804615d6df6ad5ee77f6
CRs-Fixed: 3214570
Check lite monitor condition in Tx monitor handler function
and correspondingly take action to deliver the packets.
Change-Id: Idf352bd677f00daae0c8e4325ff6661c7a4f854b
CRs-Fixed: 3219324
Add API to iterate through all modes to set setup tx monitor based
features. Also added filter setup function for tx lite monitor mode.
Made additions to filter print functions and added the fields that
were missed.
Change-Id: I20070f75d800199199195f73b1e2a13b428d5672
CRs-Fixed: 3191619
Split tx and rx monitor buffer add function so that
they can be indivudually called when lite monitor mode is enabled.
Change-Id: I9996d0261f1912237bd6fa45058d410698b9fa28
CRs-Fixed: 3206170
Enable bits in WMI_INIT command to let the FW know about host's
capability to support notify frame feature. If the feature is enabled,
host can mark certain TX frames as "notify frames" for hardware and they
need not be sent to FW. FW depends on this capability exchange to decide
whether to install HW rules for frames to be sent to HW.
Change-Id: I7158e79ae0fbdc73a2f4096ae1577337e8291246
CRs-Fixed: 3209399
Since more than one components depend on reap timer of
monitor status ring, add bitmap to record the trigger
sources of the timer and refine the APIs/calling functions
accordingly.
With this change:
When a new start request comes, if the source is
CDP_MON_REAP_SOURCE_ANY, skip bit set, and start timer
if any bit has been set in the bitmap; while for the
other sources, set the bit and start timer if the bitmap
is empty before that.
When a new stop request comes, if the source is
CDP_MON_REAP_SOURCE_ANY, skip bit clear, and stop timer
if any bit has been set in the bitmap; while for the
other sources, clear the bit and stop timer if the bitmap
is empty after that.
Change-Id: Idaa7837c4b93b247ff2236aa5072d309fa9548c2
CRs-Fixed: 3190347
For non-self sta peer (sta_self_peer is set to 0) and in error cases
like (WMA peer create failure), peer->txrx_peer is NULL which
indicates DP peer setup has not happened and therefore there are
no rx cached frames flush. Having a qdf_assert_always() if sta_self_peer
is set to 0 is incorrect. This a valid scenario.
Hence remove the irrelevant qdf_assert_always().
Change-Id: I1ab18dd681534bb9257be388a74adedc529a67cf
CRs-Fixed: 3212253
Call trace is observed in the function dp_rx_per_core_stats_update()
with the following message.
"using smp_processor_id() in preemptible"
Use qdf_get_cpu() as it takes care for disabling preemption.
CRs-Fixed: 3203385
Change-Id: I9761bf707b5ee92c7e0bb698c2825c9369efd7d5
Changes to handle CFR information from ppdu_info in
enhanced stats disabled case.
In enhanced stats enabled case, CFR info is handled in
dp_rx_handle_ppdu_stats API.
CRs-Fixed: 3214538
Change-Id: I41ea6e080f5ede661eed06764939fe2feaa6102e
This enables the option to configure when a peer's
TID queue needs to be flushed. This is required to
discard packets that are no longer useful to the application.
Change-Id: I558debff043fc0c8038e5f5f2c815b64c90e1561
CRs-Fixed: 3130422
Add changes to check if current descriptor which
is being process is not already reaped. In case
if the descriptor is already process and yet to
be replenished drop the descriptor and continue.
Change-Id: I2c46b7f4e50a27e2566f0ce2d9708cecb26c38e4
CRs-Fixed: 3177257
Use CONFIG_SAWF macro to prevent linking dp_set_delta_tsf in
low memory profile.
Change-Id: I07b75f893e6d043839225d9b7288823b6ef2f823
CRs-Fixed: 3211426
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
NAPI scale factor should be configured based on the board
type. for example Hawkeye could have a different scale factor
compared to Alder.
CRs-Fixed: 3212330
Change-Id: Ie0bad6aade9ca9379997aa974154f9fb903ab93e
In backhaul WDS, Check for addr4 valid only when the
received frame is first msdu.
Change-Id: Ib92ba0fc8b7a651c0c875cdde21f2d5538db2a32
CRs-Fixed: 3214575
Add support for new HTT_T2H_MSG_TYPE_RX_ADDBA_EXTN and
HTT_T2H_MSG_TYPE_RX_DELBA_EXTN handling.
Change-Id: Ie06891092e5bf552bf721404222fb1b0b624ba36
CRs-Fixed: 3208118
For QCN9224 target, All the MIC failures are reported
as decrypt error from FW.
So, added changes to handle MIC failures for QCN9224
target .
Change-Id: I32e616e01e3cd6e76ef105d73fd8a87ce2c81cb9
CRs-Fixed: 3192749
When user makes a request for stats using Link peer mac address,
then fetch per pkt stats from MLD peer for Link peer.
Change-Id: I64e0b10eaca82c87e7066d3ca1dbefad63a186a8
CRs-Fixed: 3208757
For telemetry agent, some more statistic support is required.
Hence, add support for telemetry agent required stats.
Change-Id: Ieb2210a4a5dfe6fa0a0dd46a85f2d9ae483bb746
CRs-Fixed: 3210797
Add WMI command for tx peer filtering. This command is needed to send
the mac address to FW for which tx monitor peer filtering is needed
to be done.
Change-Id: Ia141fba81ba240b7f4ca015eb9251e3485294bb6
CRs-Fixed: 3199493
Add ini support to configure TC ingress filter priority
value which would be used for TC based dynamic GRO.
Change-Id: I1742f4539353939e3a40ff4096b3f833f2029b12
CRs-Fixed: 3206817
Module unload is getting trigered in between
Vap restart due to channel switch
while waiting in monitor module unload for 500ms VAPs are coming up.
And after wait, during monitor pdev deinit
HOST start receiving stats indication.
Monitor pdev is getting dettached while processing stats indication.
Move register/derester of stats handler to intr ops.
Change-Id: I821c144f54bfe78c567039ab57fcf1eac7cb4f46
CRs-Fixed: 3192980
Adding MLO timestamp offset reported from firmware to tsf time for
radiotap header.
Change-Id: I2947dacf6c37214e60d70fcb3df4a5f9897356ac
CRs-Fixed: 3211179
Add sanity check to avoid out of bound memory access
for protocol and flow tag update in monitor ring
CRs-Fixed: 3206715
Change-Id: Ie326137db8a6c9c1ee1faab69627ecd5eb51ad3e
Add cdp api to get accumulated pdev tid stats along with per tid
total tid rx and tx stats.
Change-Id: I7862c4265f199d0588d8865c5ed97e06010dd79f
CRs-Fixed: 3207499
Add support to get per pkt stats from MLD peer for primary link peer
only when user requests for link peer stats.
Change-Id: I6df0daa4a175cc5869012538294ed41ae2443e48
CRs-Fixed: 3203506
Currently, for kiwi, the tlv parsing from monitor
status buffer stops when it encounters MPDU_START
tlv. This happens since the return value after the
parsing of MPDU_START is not one amongst the allowed
return values for the tlv parsing to be continued.
Add MPDU_START tlv parsing return value to the allowed
return values, in order to continue the parsing of tlvs
from monitor status buffers.
Change-Id: I51cfecb7df8d8055a37e1b898419ec322dad63db
CRs-Fixed: 3203708
Add WAR to skip multiple ring entries in case if DMA is not
done for more than one entry in monitor status ring
CRs-Fixed: 3206692
Change-Id: Id24deb18d173e521efda38716244f375a409d7f5
In case Multi chip MLO configure same hash key for
all SOCs in MLO. This change is needed to avoid
same flow traffic distributed to multiple REOs.
Change-Id: Ib6cde4ae32e58ef2d45c02d640c133458f5bfac5
CRs-Fixed: 3201978
Fix below errors when the item DISABLE_MON_CONFIG is defined:
No return value for below two APIs:
dp_tx_mon_buf_refill() and dp_rx_mon_buf_refill()
CRs-Fixed: 3205083
Change-Id: If449616e30e75c23c7b25fb449a0ad8e501529aa
Change tx monitor ring sizes and make minor fix when getting the
number of entries.
Change-Id: Iec458d88948556f7007d4fa33bf082c8ee089064
CRs-Fixed: 3206170
Limit the desc pools such that the max ppt entries
do not cross limit for the hardware cookie conversion.
Change-Id: I9149b20bea0d72b466ef8c3e2ee9c0b536ffe24e
CRs-Fixed: 3201792
Add support to move FISA FST from DDR to CMEM, enable it for Kiwi
Adding CMEM support for FISA FST includes
1) Reserving CMEM memory space FISA FST
2) Add HAL macros for CMEM flow search entry
Change-Id: I45fc91a86c1ac89d3d95b246e26ea981314425a8
CRs-Fixed: 3199250
Define a new function to calculate HW delay so that same logic
can be used to calculate delay by other modules.
Change-Id: Id3740bcaa2cd558b89ab02d8e88d5947eb5997b1
CRs-Fixed: 3198305