Commit Graph

117 Commits

Author SHA1 Message Date
Chaithanya Garrepalli
a0e560c475 qcacmn: Add arch ops for get chip id API
Add arch ops for dp_mlo_chip_id to avoid access
of dp_soc_be struct for LI platforms

Change-Id: Idc7612ef3c517aa62668fe15e51b5e5ec74bb253
CRs-Fixed: 3582795
2023-08-24 04:18:49 -07:00
Gaurav Saini
552bef7535 qcacmn: Moving peer find function in common path
peer find by mac function is getting used by
many components. so, Movng that to common path.

Change-Id: I390b86af73618661857ed80d478fe4f48bee9fe1
CRs-Fixed: 3563204
2023-07-21 10:23:45 -07:00
Neha Bisht
c9d9e88708 qcacmn: Update ast entry during PTQM migration
Delete and add ast entry during PTQM migration for current and new primary
peer respectively.

Change-Id: I4a640f84a5778aeff19057e027b3aae9e939487a
CRs-Fixed: 3536670
2023-06-27 07:39:40 -07:00
Amit Mehta
1ba9e267e0 qcacmn: Add change to get link ID from peer event
Add change to get link ID from peer event

Change-Id: Iab066f702d232d3682729b57c5a3d4c7da2672ba
CRs-Fixed: 3442914
2023-06-22 22:02:10 -07:00
Ruben Columbus
d8334769f4 qcacmn: qref debug memory tracker
add multiple history array to keep track of mem allocation and
deallocation for qref table.

Change-Id: I9fa97fbe5a5c36509cbb5a458851a152200318a5
CRs-Fixed: 3475981
2023-06-05 20:24:08 -07:00
Kenvish Butani
ef68ac521f qcacmn: vdev stats Support for MLO Hybrid Mode
Add vdev stats support for DP MLO Unified
and Hybrid Mode.
Add new CDP API for getting vdev stats for
NON_MLD interface.
Add support to get vdev stats for specific
vdev which is a part of MLO.

Change-Id: I72c8b25958649d473e1b65cee21810cd86951187
CRs-Fixed: 3455607
2023-05-15 01:28:24 -07:00
Vignesh C
fa0f65caaa Revert "qcacmn: Add support for HMWDS add and reset cmds in Beryllium"
This reverts commit Iaa110ba26a477fc0b77647a712c377029b038940.

Change-Id: Ifed1cf1e73ac03a09fc03acdc273958c9789f8a8
CRs-Fixed: 3458091
2023-04-10 01:19:45 -07:00
Vignesh C
070e8af74f qcacmn: Add support for HMWDS add and reset cmds in Beryllium
Add HMWDS add-addr, rem-addr, reset-addr and reset-table support
to add, reset and remove AST HMWDS mac entries in Beryllium
chipsets.

wlanconfig athX hmwds add-addr wds_ni_macaddr wds_macaddr
wlanconfig athX hmwds reset-addr macaddr
wlanconfig athX hmwds reset-table
wlanconfig athX hmwds rem-addr wds_macaddr

Change-Id: Iaa110ba26a477fc0b77647a712c377029b038940
CRs-Fixed: 3429510
2023-04-03 01:35:47 -07:00
Venkateswara Naralasetty
76e5c1f345 qcacmn: separate dp_rx_tid functionality
As of today, dp_peer.c has the peer management and rx_tid
functionality(create/setup/remove) which is used by the REO HW.

WCN6450 does not have REO HW and dp_rx_tid functionality is not
required for WCN6450. Hence, separate out dp rx tid functionality
from dp_peer.c so that we can avoid compiling unnecessary code
for WCN6450.

Change-Id: I322823704f38ff72e485f050941be6b1254bad09
CRs-Fixed: 3383330
2023-03-29 02:59:59 -07:00
Jeff Johnson
2574da9bf9 qcacmn: Fix misspelling "sucsess"
Fix misspelling: "sucsess" => "success".

Change-Id: I93f4b97e2d753362843a08c86a947f936b563c28
CRs-Fixed: 3430188
2023-03-13 23:54:11 -07:00
Neha Bisht
80ee0f60c6 qcacmn: Add support for primary TQM migration
Add support for primary TQM migration.

Change-Id: Ifd62eb7e731bbd9e86c462642fd2e20d50d5495a
CRs-Fixed: 3410900
2023-03-10 16:11:33 -08:00
Abishek Ganapathy
ee1493dc9c qcacmn: Add HMWDS rem-addr support in Beryllium
Add HMWDS rem-addr support to delete AST WDS mac entries in
Beryllium chipsets.

Change-Id: I5623bac02b326d1d668ad5e1fdcfc3a9f8cbbb9c
CRs-Fixed: 3397961
2023-03-03 13:40:46 -08:00
Sai Rupesh Chevuru
10826afad5 qcacmn: Adding NAWDS support along with WDS-EXT
Adding NAWDS support along with WDS-EXT

Change-Id: I19d277fa575750d3194afc9ec9af3180a8c936ad
CRs-Fixed: 3406151
2023-02-24 07:04:50 -08:00
Rakesh Pillai
1ddcf838b7 qcacmn: Improve logging in MLO link add/delete
Remove console logging in MLO link peer
add/delete to MLD peer.

Change-Id: I3d1945a7cef2175cb0fed6417ede03dec9fabf1b
CRs-Fixed: 3408600
2023-02-18 22:01:51 -08:00
Jeff Johnson
1ea7b9f065 qcacmn: Fix dp/wifi3.0/dp_peer.* documentation
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
2023-02-13 14:01:37 -08:00
Rakesh Pillai
ada0c97d9b qcacmn: Add datapath config event history
Add history to record the config/control events
e.g. peer create/delete/unref-delete, vdev attach/detach
in datapath.

Change-Id: Ic3c8122fca9124e41931ec445946aec5e8863434
CRs-Fixed: 3371899
2023-01-19 02:55:07 -08:00
Rakesh Pillai
d7593bcef6 qcacmn: Add debug logs in MLD peer create/delete
Add debug logs in the MLD peer create/delete path
to help debug any issues with MLD peer leak.

Change-Id: I63126d9b86f3179a88809836371fc765d340b6d8
CRs-Fixed: 3379148
2023-01-15 03:55:44 -08:00
Ripan Deuri
85e7faff70 qcacmn: Add function to check WDS ext peer
Add function to check WDS ext peer.

Change-Id: Ic29cb04fc2830240854921fe3eeadd03e8171979
CRs-Fixed: 3340244
2022-11-21 00:03:45 -08:00
Jeff Johnson
ebfbc0d927 qcacmn: dp: Fix misspellings
Fix misspellings in dp/...

Change-Id: I6ef7a19ee03104ae38a8a77e229b90aa80329592
CRs-Fixed: 3304682
2022-10-07 22:42:22 -07:00
Sai Rupesh Chevuru
383edf35d0 qcacmn: Map and umap MLO DP peer to partner soc
Maping and unmaping of the MLO DP peer to the partner soc
will be initialized based on architecture.
dp_mlo_partner_chips_map
dp_mlo_partner_chips_unmap

Change-Id: I918f6d552acd9d64086abf4c38f913348e13c381
CRs-Fixed: 3267904
2022-08-22 11:30:40 -07:00
Pavankumar Nandeshwar
67de6bcbfd qcacmn: Handle Umac post reset at host
Handle Umac post reset and post reset complete
events from firmware.

Change-Id: I76ac1b96f01f026535d31edcbd245b3643ecf6ee
CRs-Fixed: 3267222
2022-08-21 00:37:46 -07:00
Chaithanya Garrepalli
baa9ecbd3c qcacmn: update peer state assert for MLO peer
Update the peer state check for MLO peer as per
MLO state transistion

Change-Id: Ia57ab5fd95f90226f505cba6363a343e5e0b44e1
CRs-Fixed: 3266005
2022-08-16 10:47:17 -07:00
Santosh Anbu
e852941cea qcacmn: Support to print AST entries of MLO peer
Add support to print AST entries of MLO peer.
MLO AST table is global across SOC and hence any print AST request
will print the MLO AST table

Change-Id: I07554606617f43a8806e1c7243ca69a0c8ce335e
CRs-Fixed: 3246520
2022-07-31 00:05:59 -07:00
Shwetha G K
690e9eba92 qcacmn: Add flexibility to flush MLO peers only
Add changes to support flushing of MLO peers only.
This is required to support the mode-1 behavior of target
recovery feature, where we delete MLO peers and retain
legacy peers across SOCs which are not crashed.

CRs-Fixed: 3243549
Change-Id: I5ae326bfffd1267768c83fd7f60fa1343ef305fe
2022-07-29 09:20:57 -07:00
Namita Nair
dc6a757028 qcacmn: Support same link/mld peer mac address
Currently, if mld and link peer has the same mac
address, the peer cannot distinguished with
just the mac address as the search argument.

Hence to support same mld/link peer mac address,
cdp_peer APIs that uses both link and mld peers,
are also given peer_type info. This helps
to perform the operations on the correct peer.

Change-Id: If646755facc8f9a4d9fed2f31c5cc6618fa9a952
CRs-Fixed: 3043428
2022-07-29 05:57:06 -07:00
Surabhi Vishnoi
ecaa0f1f6c qcacmn: Allow rx UDP packets during roaming before peer map is received
In VoIP cases, no or minimal packet drop is expected during
roaming. Currently, data packets are dropped in host if they
are received after roam sync indication from firmware and before
peer map indication is received due to invalid peer.
This change allows rx UDP data packets during roaming before
peer map indication is received from FW if peer's auth_status
received in roam_sync_indication from FW is authorised.

Change-Id: Ic518b7cd0aef48a2b0f8c923a2e20838b07f3d1f
CRs-Fixed: 3168603
2022-05-12 23:34:21 -07:00
Abishek Ganapathy
e79a7628e6 qcacmn: Find peer using mld_addr for MLO case
For MLO, try to find peer by comparing the MLD MAC
addresses.

Change-Id: Ib109da957d5c330385688a4e91e04cda91a51f30
CRs-Fixed: 3140866
2022-04-22 07:27:02 -07:00
Harsh Kumar Bijlani
c4f3ae13ee qcacmn: Define API to get the link peer_id using peer_id and lmac_id
Define API to get the link peer_id using peer_id and lmac_id.
This is required in Rx monitor path for stats updation as Rx
monitor provides MLD peer id, whereas stats updation is done
for link peer.

Change-Id: Ib1c9e2729ccaea2e28272b7d175b3ef7fba9fd7a
CRs-Fixed: 3133003
2022-02-28 10:19:49 -08:00
Ripan Deuri
b2340306e3 qcacmn: Add SAWF stats in dp_txrx_peer
- Add SAWF stats in dp_txrx_peer.
- Initialize stats per peer

Change-Id: I5fa35efe36dc8447703d4aa1d4d0c135031f9eee
CRs-Fixed: 3136210
2022-02-28 07:53:32 -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
Santosh Anbu
83d13e1ffd qcacmn: Support multi AST delete WMI command
Add change to support multi ast entries deletion.

Change-Id: I74b9000c6949d7455da5eb54678e976ab1b9bb20
CRs-Fixed: 3124258
2022-02-11 22:30:17 -08:00
Harsh Kumar Bijlani
27e9e64532 qcacmn: Changes for delay and jitter stats
Delay and jitter stats are placed in struct dp_txrx_peer.
Make changes accordingly for allocation, fetching and clearing
operations of these stats.

Change-Id: Ic9b9e48467741072806000f4d1b3aa8e5c65d508
CRs-Fixed: 3092123
2022-02-09 11:54:23 -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
9c6800383c qcacmn: Move per packet params to txrx_peer
Move the parameters from the dp_peer which are used
in per packet path to txrx_peer and params related
to monitor path to monitor peer.

Initialize txrx_peer and monitor peers.

Change-Id: I0449c67c1cd47deb76bc89b5ddc64174f6694eb0
CRs-Fixed: 3095637
2022-02-09 11:53:37 -08:00
Sumedh Baikady
e4d9b0c2d7 qcacmn: REO queue ref enhancement for Waikiki
In WIN BE chipsets, replace the REO tid
queue programming in FW via WMI with writing to a
Host managed table shared by HW and SW. REO HW will
pick the tid queue address from the table indexed by
peer id and tid number.

Change-Id: I8107ca5116425538329b11ae3519f02b32573bac
2022-02-02 12:06:29 -08:00
Pavankumar Nandeshwar
8f62ddf128 qcacmn: Fix QUIC Copyright Markings
Fix QUIC Copyright Markings

Change-Id: I396830ab402318cd2385a5bed8dc3af373b8148b
2022-01-14 11:53:34 -08:00
Harsh Kumar Bijlani
f4c7e777f0 qcacmn: Add APIs to get txrx peer, tgt peer and primary link peer
Add APIs to get txrx peer, tgt peer and primary link peer from peer
for both MLO enabled and disabled scenarios.

Change-Id: Ie48711972dd3eef35fdd7bf736e91bfce4cd41f3
CRs-Fixed: 3107160
2022-01-13 06:52:58 -08:00
Chaithanya Garrepalli
3d9c419f95 qcacmn: Fix ML peer refleaks reported in wifi down
Delete MLO peer from primary SOC while ML peer delete

Change-Id: Ideb78964718699397a1fb5da22c28ec787c5bd0c
2022-01-12 05:33:55 -08:00
Pavankumar Nandeshwar
d7908ff22a qcacmn: Add txrx_peer in dp peer
Add txrx_peer in dp peer which will be used in
per packet data path.

Change-Id: I91f10b1640430300f4c9f002ca54b3903c556d41
2022-01-06 07:55:43 -08:00
aloksing
3637ac16b0 qcacmn: Move monitor mode HTT parsing from mon_1_0 to common
Moving HTT parsing to common file dp_mon.c
Initialize function pointer to stats ind handler for BE

CRs-Fixed: 3071271
Change-Id: I08fb98f8dbed075c3b49baebca399771bfb5077c
2021-12-09 11:17:17 -08:00
Chaithanya Garrepalli
97a1c8bff1 qcacmn: Changes to caluclate soc max peer id
Changes to caluclate max peer id in case
of MLO

Change-Id: Ib52cfb4f92eafb88689774e8e6c406751d30372a
2021-12-02 06:06:47 -08:00
Chaithanya Garrepalli
bbe062b4b7 qcacmn: DP peer changes for multi-chip MLO
DP peer changes required for multi-chip MLO.
This change includes

1) Adding MLO peer to global peer hash at ML context
2) Add ML peer to all partner chips id to objtable

Change-Id: I230a6c1b14484c587b190a9a318fe9ffb1caea11
2021-11-23 19:28:15 -08:00
Chaithanya Garrepalli
0fb9dcb7eb qcacmn: ML peer authorize changes
Changes to set authorize bit on ML peer only
after all link peers are authorized by hostapd.

Change-Id: I4b103538533dd459e83ae688408703c4122f025e
2021-11-23 03:55:18 -08:00
Rakesh Pillai
2069fa6cdd qcacmn: Handle htt peer map/unmap v3
Add the handler for processing the htt
peer map/unamp v3 and MLO peer map/unmap msgs.

Change-Id: Ie2ab0b76e7aee566ca3b9637b83fd7a14718ab01
CRs-Fixed: 3039326
2021-10-15 13:13:22 -07:00
Jinwei Chen
5c85cfb5a0 qcacmn: cdp/dp peer change for MLO
cdp/dp peer change for MLO

Change-Id: I9b8eb741317a0dc7337aff7e773148892e531ba2
CRs-Fixed: 3031166
2021-10-15 13:13:12 -07:00
Pavankumar Nandeshwar
6b1d142d98 qcacmn: Enable wds changes in Beryllium
wds in Beryllium is managed by hardware.
Make use of hardware managedwds and disable
the corresponding wds handling done in host
for Beryllium.

Change-Id: I39f23cb40c6c5f85ada8ce59c92ff2855bb18da3
2021-09-30 15:15:25 -07:00
aloksing
e7cc727374 qcacmn: Move core monitor and monitor dependent feature func
PATCH[4/7]:
This patch consists following changes:
 - Move core monitor and monitor dependent feature functions
   to monitor file
 - Move enhanced stats functions from htt to monitor file
 - Move vdev set monitor mode rings function to monitor file
 - Create and initialize relevant funct ptrs
 - Initialize cdp monitor related ops.

Change-Id: Iac1ab43eb1c4b98bd21bbb8a5741ee53034da2f1
CRs-Fixed: 2984635
2021-07-30 21:51:12 -07:00
Pavankumar Nandeshwar
72bf8a6cb2 qcacmn: Avoid sending wds del wmi cmds in a burst
In case of aging out wds entries, avoid sending all
the wds delete wmi commands in a huge single burst.
Instead limit the maximum commands to half of the
wmi queue size. Inactivity will continue to be
marked every 120 secs but the inactive entries
will be flushed every 5 secs if there are pending
entries.

Change-Id: I6735704a0750ef466f1df798f0b354f4382098d6
CRs-Fixed: 2952682
2021-06-08 18:17:37 -07:00
Vevek Venkatesan
e5b0e7e3a0 qcacmn: add debug logs around peer AST cleanup
Currently there are no sufficient debug logs during
AST cleanup of peers, to conclude in which context
the AST got freed up, hence adding more debug logs.

Change-Id: I5603d856aed8cc3860a78d24d51cd8b5386d38bb
CRs-Fixed: 2956910
2021-06-08 03:16:42 -07:00
Karthik Kantamneni
26086e7971 qcacmn: Add history for REO queue descriptor events
Add history to log REO queue desc update and free events.

Change-Id: If2992ff1256fad49ea4ea6bd90b6dfe4a63d2bc4
CRs-Fixed: 2926919
2021-04-27 09:14:12 -07:00