For WDS ext use fr_ds and to_ds fields to check for
4-addr instead of reading value from TLV
Change-Id: I261746018de2320367e8650332a5c355edfb1489
CRs-Fixed: 3410639
In the case of MLO connection, MLD address is used for data
transmissions in the ethernet header. Take MLO-SAP intra-bss
forwarding as an instance, ref1 sends unicast arp-resp to
ref2 who initiates broadcast arp-req. DA and SA in the ethernet
header are both MLD mac addresses of ref1 and ref2.
Currently when WLAN IPA component does the intra-bss forwarding
check, MLO connection is not taken into consideration, where
only legacy hash table is searched. For a MLD peer, it is not
added into the legacy hash table but the MLD specific hash
table.
Hence in this change, use dp_peer_hash_find_wrapper() API with
CDP_WILD_PEER_TYPE to check if peer exists in both legacy
and MLD hash table.
Change-Id: Ifea7cd37373e1575d811bedefb602d0df5c1765b
CRs-Fixed: 3400280
Adding MLO timestamp offset reported from firmware to tsf time for
radiotap header populated in tx monitor.
Change-Id: I44f2c1a49d4d2b73ac9117319b72ba8635cb5b38
CRs-Fixed: 3398345
WIN and MCC shared a common definition od qdf_nbuf_cb
considering that there are various fields which are
not common it is decided to have 2 different definitions
for WIN and MCC. in case of WIN he per pkt cycles will
be significantly reduced in RX path.
CRs-Fixed: 3257879
Change-Id: I5d3fa7c91592afb905702f2dca49972be89664e3
Reuse the tx descriptors released in tx completions
without releasing the associated skbs to reduce
the cpu utilization in direct switch mode.
Change-Id: I4ab3ac58977a626344877b8a818a4dbc4864aaf3
CRs-Fixed: 3393968
1. Maintain and fetch PPEDS profile from be_soc instead of be_vdev
2. Enable WDS EXT mode for Direct Switch
3. Provide cdp API's and structures to interact with osif
layer to get PPEDS profile info
Change-Id: I997126e3b5ae85dabdcd6053115927122b8681da
CRs-Fixed: 3404778
Add TLV recording support for Rx monitor. The TLV
tag and its data are recorded in a fixed size buffer
Change-Id: Idad896d1ece25a499ab76028c8a231fcd9947f66
CRs-Fixed: 3402543
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_rx_defrag.[ch], 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 move that documentation.
Change-Id: I4080e4b614c5d1f0253afd06fc4eb650142b76d4
CRs-Fixed: 3373163
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_txrx_wds.[ch], 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 move that documentation.
Change-Id: I2f80d9715f772a59072f2c4158548f47df8bb055
CRs-Fixed: 3373164
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_internal.h, 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 duplicate that documentation. The documentation at the
implementation will be removed separately.
Change-Id: I9684f5c2da7edb621a53dfbc5f1f8de2c70d8382
CRs-Fixed: 3373166
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_ipa.[ch], 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 move that documentation.
Change-Id: I664c657e4e7424db576bf19ca8a26c697b37e46f
CRs-Fixed: 3373165
Previous the following patch fixed all of the known kernel-doc issues in
dp/wifi3.0/dp_types.h:
Change-Id Ie93b7f802926e562169e51a56e5fc83de845b310
qcacmn: Fix dp_types.h documentation
Unfortunately, concurrently the following patch introduced a new issue:
Change-Id I8bc0c3c78e3eb8c6679e00442d607615bab38f96
qcacmn: Add mcast enhance flow for single dev
And subsequently the following patch introduced two more:
Change-Id Ic3c8122fca9124e41931ec445946aec5e8863434
qcacmn: Add datapath config event history
So fix those three new issues.
Change-Id: Id1416a1426e5442f1e96db4da35412ef5374e568
CRs-Fixed: 3403640
The kernel-doc script identified a large number of kernel-doc issues
in the dp/wifi3.0 folder. A series of patches have addressed most of
the issues, so now fix the remaining issues. Just like in the previous
patches, there are a number of instances where public functions have
their implementation documented instead of having their interface
documented, so make sure that the interfaces are documented.
Change-Id: I4bc39b0e1a9d8c264b72ec6db76ff7e92d24f277
CRs-Fixed: 3373822
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_tx_desc.[ch], 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 move that documentation.
Change-Id: I349f0e9d9336ae632fb31e88ddc34ecacc4a1f68
CRs-Fixed: 3373161
Previous the following patch fixed all of the known kernel-doc issues
in dp/wifi3.0/dp_rx.h:
Change-Id Id0ac49ebfa23790346384d688cc6346f513a7969
qcacmn: Fix dp/wifi3.0/dp_rx.* documentation
Unfortunately, the following patch introduced two new issues since
it copied incorrectly formatted documentation that had not yet been
corrected:
Change-Id Ic51a9742f65cee677ed7f3081f49fb3ece5b42f1
qcacmn: Optimize DP Rx Error Handling (Part-1)
So fix those two new issues.
Change-Id: Iea99708e31564525d0d4a0d94ea04ef9aa036ed8
CRs-Fixed: 3403645
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_tx.[ch], 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 move that documentation.
Change-Id: I7a09c451f3f4af3dd606778c49cce81677f6fe58
CRs-Fixed: 3373159
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_peer.[ch], 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 move that documentation.
Change-Id: I996764f93addfa270ef7aaedd2e23c71be287f77
CRs-Fixed: 3373168
REO_FLUSH_CACHE cmd
- flush_q_1k_desc as 1 – This will flush Queue, Q1k and QEXT in one go.
we need not give 11 cmd for each tid of the peer.
- forward_all_mpdus_in_queue to 1 in FLUSH_CACHE_CMD.
With this we need wait for aging threshold time.
Change-Id: I695ab48a50968872eb22024ba5c770f0e5a74a09
CRs-Fixed: 3384665
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
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/dp_htt.[ch], 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 move that documentation.
Change-Id: Ic8eb4c5e7f04de45a785aa4278cb97f1895e53d1
CRs-Fixed: 3373162
Make DP changes for handling umac reset in QCA5332.
Changes are done to program msi_data value of the IPC interrupt to FW.
Change-Id: Ib6453755e191da655b87b528a7cef38a464f316b
CRs-Fixed: 3401146
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
Previously all of the documentation issues in the dp/wifi3.0/monitor
folder were fixed by:
Change-Id I27e14544ef88193bbfe6ee409fe58c59d6b5bea2
qcacmn: Fix dp/wifi3.0/monitor documentation
But concurrently a separate patch introduced a new issue in the
dp_rx_mon_pkt_tlv_offset_subscribe() documentation:
Change-Id I9e5d6cbb32cc7469dc367f6fc4bca4ce8adc9da8
qcacmn: Word mask TLV support for monitor
So fix that issue.
Change-Id: I174b19d9dded26d14af6eb94115a1c461a2f9e6f
CRs-Fixed: 3401990
The kernel-doc script identified a large number of documentation
issues in dp/wifi3.0/be, 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 move that
documentation.
Change-Id: I15c8570aa1832ed053fa38f536fa36b2ca0aa56b
CRs-Fixed: 3373157
In case of split phy return the partner vdev from
same SOC for intrabss forward
Change-Id: Id7d2acd80d60e4d5cfb6df821f72a8d885d8fe57
CRs-Fixed: 3398627
The pointer to next TLV in status buffer is considered
as valid, only if atleast the TLV header size is available
within the status buffer.
Change-Id: Ic222bfab4790853ee012de4b0a860ab037972ff5
CRs-Fixed: 3378058
1) In WBM2SW Rx Error path, code to reap and
the process the HAL descriptor is split into
BE and LI architecture specific functionality
in dp_be_rx and dp_li_rx files respectively.
2) The function to handle Null Queue desc.
error for WBM and REO Rx Error path is split
into BE and LI architecture specific
functionality in dp_be_rx and dp_li_rx files
respectively.
Change-Id: Ic51a9742f65cee677ed7f3081f49fb3ece5b42f1
CRs-Fixed: 3356179
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
Change flow idx invalid to flow_idx_valid.
This change is made so that flows for which this field is not present
are identified as invalid flows and not forwarded to PPE.
Change-Id: I92c82bb0ef57012b2b884fe3fd18344b523a3f51
CRs-Fixed: 3390588
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