Grafik Komit

3654 Melakukan

Penulis SHA1 Pesan Tanggal
Pavankumar Nandeshwar
e8bf99b94f qcacmn: Honor Umac reset trigger atomically
Make sure the Umac reset state is updated when
the trigger is received only after checking
Umac reset in progress flag.

Change-Id: I2c6ac68bee5b69b1f083a109646cb6bf61d8cdd6
CRs-Fixed: 3487388
2023-05-08 09:56:40 -07:00
jinbao liu
98787f1dc0 qcacmn: Fix a RX MCS index issue in HT mode
Currently driver obtains RX MCS index from RX MSDU TLV END of a
data frame. According to the specification, the MCS index should
starts with 8 rather than 0 when NSS=2 in HT mode. However, the
original RX MCS index from HW starts with 0, thus SW needs to
get a final MCS index by adding an offset when NSS=2 in HT mode.

Change-Id: Iba5f9976958233fc283513caf0184e59774ab50a
CRs-Fixed: 3471953
2023-05-08 04:09:32 -07:00
Ripan Deuri
534c9c36a9 qcacmn: CDP op to update DL flow ref count in SAWF
CDP op to update DL flow ref count in SAWF.

Change-Id: If348c53f82361f03b7457bd485d99e42d3b3431a
CRs-Fixed: 3484316
2023-05-08 04:09:11 -07:00
Santosh Anbu
7cec0b5b10 qcacmn: Add host AST entries for WDS peers
Add change to support addition of host AST entries for WDS peers.

Change-Id: I81b936d7274784c9b178e32aa9ccfaf86f884f0f
CRs-Fixed: 3472985
2023-05-08 01:31:14 -07:00
Chaithanya Garrepalli
04643dcb9b qcacmn: Fix deadlock issue
Fix deadlock issue in dp_rx_wds_add_or_update_ast

Change-Id: If32eb881da92a48e14f513d6bcf89e5bb64d0198
CRs-Fixed: 3487767
2023-05-07 20:45:24 -07:00
Amit Mehta
2debf5d6e6 qcacmn: Add support to print per link stats
Add support to print per link stats

Change-Id: Ifd1c1b5c075401a1545bcaaf76e1c79706a86974
CRs-Fixed: 3442916
2023-05-07 18:10:59 -07:00
Chaithanya Garrepalli
6605c27dcc qcacmn: Handle ppe peer setup for QCA5332 platform
As ppe_ds is not supported on QCA5332 platform, in
case of MLO peer always setup ppe peer using primary
peer

Change-Id: Icd05b69c07c05fe2fc793f49fcf28b5d58bc8bb6
CRs-Fixed: 3480359
2023-05-07 13:25:09 -07:00
nobelj
ba2e146b5a qcacmn: Add fix to update msdu start bit and other bits in nbuf
Add fix to update msdu start bit and other bits in network buffer.

Here is the list of bits set in network buffer
	a. msdu start bit,
	b. msdu end bit,
	c. packet is MCBC and da bit is set
	d. da valid bit is set
	e. sa valid bit is set

Change-Id: I2abf346de36a7f5ac7f86b33615145bb02065dc2
CRs-Fixed: 3479230
2023-05-05 11:34:44 -07:00
Sai Rupesh Chevuru
cdbbebd6f8 qcacmn: handling of mcast in proxy arp along with MLO MCAST
handling multicast packets in the case of proxy arp
along with MLO MCAST.

1. stamp the host inspected bit for GSN based packets.
2. trigger dp_tx_proxy_arp from the reinject handler.

Change-Id: I8aea1e4fd4e61f4cc6a5dd6d8b5151c1a9bf2fac
CRs-Fixed: 3465975
2023-05-04 13:49:48 -07:00
Jeevan Kukkalli
794367b541 qcacmn: Return missing link and mon desc and free associated buffers
It is observed that in some corner cases msdu count received
in montior destination ring descriptor is unreliable as a
result some of the link descriptor and associated monitor buf
descs are not returned. This change return such missing link/buf
descriptors and free associated buffers.

Change-Id: Iaad476b8e7a0372122981fd29c1f6e4685137817
CRs-Fixed: 3483157
2023-05-04 04:35:03 -07:00
Amit Mehta
239bf915dd qcacmn: Add CDP API to get per link peer stats
Add new CDP API to get per link peer stats.

Change-Id: I5685699601b31341caa655c5fe16655fa3bcc2a4
CRs-Fixed: 3442913
2023-05-04 01:35:28 -07:00
Dhananjay Latkar
5e217e2980 qcacmn: Create a bitmask for enabled sawf parameters
This bitmask is used in RM app to detect and enable SLA support

Change-Id: I0dbf8b2b89aa810478821c3f3eba66024ff01422
CRs-Fixed: 3480807
2023-05-02 12:24:23 -07:00
Rakesh Pillai
cdab8dab71 qcacmn: Code movement to enable multipass support without WDS
Currently the code to support Multipass on SAP is
present along with the code to support WDS. Hence with
the code in its current state, we will not be able to
enable Multipass support without enabling WDS.

Move the multipass support code out of the WDS support
code, to be able to enable Multipass for chipsets which
do not use WDS.

Change-Id: Id17035f1ada9bde56ca2c61fd4688fa3454b0b11
CRs-Fixed: 3479991
2023-05-01 14:40:03 -07:00
Pavankumar Nandeshwar
a631906ba4 qcacmn: Free the tx descriptors borrowed by DS
Free the tx descriptors borrowed by direct switch
back to regulartx desc pools.

Change-Id: I2898e57ce5eff54c1787dbebd166482d9fbfc585
CRs-Fixed: 3444334
2023-04-29 07:18:53 -07:00
Kenvish Butani
e8753b5a36 qcacmn: Fix ref leaks for vdev and peer
Fix ref leaks for vdev and peer in DP

Change-Id: If75b7dd1d96d211c2360ef65052e19e783c9ea40
CRs-Fixed: 3469902
2023-04-29 07:18:41 -07:00
Sai Rupesh Chevuru
3a522a80e1 qcacmn: rearrange the code in dp_service_srngs
update the local ring mask after setting the service running flag
to avoid the concurrent access issues.

Change-Id: I209d22858f8ac7509b5337fdb1ebfe38699790e1
CRs-Fixed: 3461866
2023-04-29 03:16:48 -07:00
Amit Mehta
5cfdbdb306 qcacmn: Force flush monitor destination ring
In the monitor mode case if some entry status entries are
not received then after the next monitor interface up host tries
to process pending old destination ring entries. As host drops
1 destination entry after processing 16 status entries if the entry
is not present in the status ring. which in case there is a high
number of old entries in the destination ring will result in the
destination ring getting full.

To fix the issue force flush monitor destination ring
during vdev delete.

Change-Id: Ie23a57add7b5bd372ab66f801e29e55cfacb5d4d
CRs-Fixed: 3411943
2023-04-27 21:29:30 -07:00
Zhaoyang Liu
06503f8d9e qcacmn: fix function call too many arguments error
When FEATURE_RX_LINKSPEED_ROAM_TRIGGER is not defined,
function dp_rx_rates_stats_update declared without link_id argument,
this will get building error. Add the link_id parameter to fix too
many arguments of function call building error.

Change-Id: I311d520e106f2e6f9e2c11c76cc841840821ccae
CRs-Fixed: 3477778
2023-04-27 21:29:20 -07:00
Himanshu Batra
08147113aa qcacmn: Update airtime stats last_update_time after the loop
The airtime stats last_update_time is getting updated within the loop
causing higher AC values to go out of sync.

Update airtime stats last_update_time after the loop

Change-Id: Icdb33335284e0a92b90c72099c18b6bc7690275c
CRs-Fixed: 3476253
2023-04-27 13:56:47 -07:00
Devender Kumar
21a4b2ea24 qcacmn: Fix compilation issue when TX two pipe support is enable for IPA
When IPA_WDI3_TX_TWO_PIPES is enable and DP_MEMORY_OPT is disable,
compilation issue is seen.

Fix is to correct the syntax.

Change-Id: Ibd23555f1a8a782a937883510b1e56eb20581604
CRs-Fixed: 3471564
2023-04-27 07:29:28 -07:00
Harsh Kumar Bijlani
2be2bf6a69 qcacmn: Fix memory leaks in Rx monitor path
Fix the following 2 memory leaks in Rx monitor path:

1. When MPDU queue is empty and MON_BUF_ADDR_TLV is received,
   then free page fragment memory.

2. In case of small size packets, 1 MPDU can have more than
   2*QDF_NBUF_MAX_FRAGS fragments wherein each nbuf can have maximum of
   QDF_NBUF_MAX_FRAGS frags. In this case, add the frags to nbuf in the
   following way.

   parent_nbuf (QDF_NBUF_MAX_FRAGS frags attached)
	|
	| (fraglist)
	|
	----> tmp_nbuf1 (QDF_NBUF_MAX_FRAGS frags attached) ----> tmp_nbuf2
							    (next)

Change-Id: I54e8162bf0b9da8629a3c80d123421fbeaf8df11
CRs-Fixed: 3453676
2023-04-27 04:08:30 -07:00
Jinwei Chen
58b1c384df qcacmn: Fix skb memory leak in RX REO error path
If host receive REO error code 0 - NULL REO queue descriptor from
REO exception ring, it will be raw data and likely spread across
multiple msdu buffers for amsdu packets. in this case, only the
last msdu will contain the valid rx msdu length, but currently host
use msdu length from head skb (msdu length is 0), then the sub-skbs
followed after head skb will be leaked as following,
(1) dp_rx_sg_create() fail to add sub-skbs into frag_list of head_skb,
then sub-skbs still exist in head_skb->next.
(2) As peer_id is not valid, dp_rx_null_q_desc_handle()->
dp_rx_chain_msdus_be() will configure head_skb->next = NULL during
DP_RX_LIST_APPEND, then all sub-skbs get leaked.

Get msdu length from last skb and overwrite it in head_skb, then
dp_rx_sg_create() will process all skbs correctly.

Change-Id: I1953afb4e3b44450ff5e8269ef0f4f0c38e1d446
CRs-Fixed: 3476534
2023-04-27 04:08:20 -07:00
D Harilakshmi
82bd3d9009 Revert "qcacmn: Optimize DP Rx Error Handling (Part-2)"
This reverts Change-Id:	I760694073a06c1829f28e7e92cd1657560d8eb06

Change-Id: If1573653da912702bd343acfa42f9ae32a3f7844
CRs-Fixed: 3472220
2023-04-26 06:39:59 -07:00
Rakesh Pillai
8d8312ddf7 Revert "qcacmn: Code movement to enable multipass support without WDS"
This reverts commit Iaafa8dc4f16314d9e3e160fe01251c3684adbf67.

Change-Id: I3e6ec2b2c018c9fc6d0dcdbf9a580c93e23b0458
CRs-Fixed: 3478331
2023-04-26 04:58:36 -07:00
Kai Liu
6f3d208ec8 Revert "qcacmn: limit tx completion process count to napi quota"
This reverts Change-Id:	Ic24f131c90b90b0e118edffcab559ddf31779dcf

Change-Id: Ia683184f346ee13ad970679bef8bab211a84503d
CRs-Fixed: 3421368
2023-04-26 03:26:27 -07:00
Naveen Gurujala
744590c14b Revert "qcacmn: Add support for enabling TWO tx_pipe"
This reverts Change-Id: I71b414c2ead0c25df6009a21a59b4c0d553ce9fd

Change-Id: I2f0c43e03387811c91a24c61ae622191b1d12347
CRs-Fixed: 3356413
2023-04-25 12:08:36 -07:00
D Harilakshmi
2fa83cedbc Revert "qcacmn: Correct spelling errors"
This reverts Change-Id: Id33b5f250a0c44f475b3463f9a6a68f83b47b6cd

Change-Id: I54057d65091b445240a53f2d8d34cd73ca61d860
CRs-Fixed: 3462780
2023-04-25 12:08:25 -07:00
D Harilakshmi
8151985d1d Revert "qcacmn: add recommended err/debug function"
This reverts Change-Id: Ic81cf4f66c03d122cad171216fe20fe1f6417d0d

Change-Id: I0a23a8cd58459c20d758f4bc0c7a54a6c035e2d3
CRs-Fixed: 3470494
2023-04-25 12:08:15 -07:00
Naveen Gurujala
8a578fefe1 Revert "qcacmn: Add check for sawf stats"
This reverts Change-Id:	Ica417a53e91ebc8415f0f73c3c61b3b35e200de5

Change-Id: I304da02724d3ea97c61511b915a49513e87a55b7
CRs-Fixed: 3471399
2023-04-25 12:07:23 -07:00
D Harilakshmi
1e03676a2e Revert "qcacmn: received packet matches with mld mac address drop it"
This reverts Change-Id: I382cb2d525caa8bc23dc6bbadd0575e579645659

Change-Id: I0b2b2fadb214b4576c9818225d3457c6923aea1c
CRs-Fixed: 3470318
2023-04-25 12:06:13 -07:00
D Harilakshmi
654346f00e Revert "qcacmn: check if net dev is valid in nbuf"
This reverts Change-Id: Ie7365197be18d0575ffc4180cb956c8c56f3c27b

Change-Id: Ice8197021fe8531fd5c76a0faf8892553a79fe79
CRs-Fixed: 3471249
2023-04-25 12:05:32 -07:00
Linux Build Service Account
93bac8788e Merge "qcacmn: Move mon mac filter func to mon ops structure" 2023-04-21 12:47:52 -07:00
Linux Build Service Account
c9edfa6456 Merge "qcacmn: check if net dev is valid in nbuf" 2023-04-21 12:47:50 -07:00
Linux Build Service Account
2e3e6b1315 Merge "qcacmn: Set trigger action after checking Umac reset in progress" 2023-04-21 09:15:36 -07:00
Linux Build Service Account
dea4b69da7 Merge "qcacmn: Add host AST entry only if peer is found" 2023-04-21 09:15:35 -07:00
Linux Build Service Account
79c593df99 Merge "qcacmn: received packet matches with mld mac address drop it" 2023-04-21 09:15:34 -07:00
Linux Build Service Account
956f3ba2c7 Merge "qcacmn: Fix pad byte place holder calculation" 2023-04-21 09:15:32 -07:00
Linux Build Service Account
f1a454c299 Merge "qcacmn: Add check for sawf stats" 2023-04-21 09:15:28 -07:00
Linux Build Service Account
d899379898 Merge "qcacmn: add DP API to support RX peer meta data version update" 2023-04-21 09:15:24 -07:00
Linux Build Service Account
d06eee41ad Merge "qcacmn: Add change to update tsf2 periodically" 2023-04-21 09:15:23 -07:00
Linux Build Service Account
a7e9c1a968 Merge "qcacmn: update dp_vdev for TDLS based on MLO connection" 2023-04-21 09:15:22 -07:00
Linux Build Service Account
c07b5ea104 Merge "qcacmn: Code movement to enable multipass support without WDS" 2023-04-21 09:15:21 -07:00
Linux Build Service Account
6e2761031a Merge "qcacmn: Initial changes for QCN6432 bringup in Common dev to DP" 2023-04-21 09:15:19 -07:00
Linux Build Service Account
a515fb6ef8 Merge "qcacmn: Optimize DP Rx Error Handling (Part-2)" 2023-04-21 09:15:17 -07:00
Linux Build Service Account
70e97ae2fa Merge "qcacmn: add recommended err/debug function" 2023-04-21 03:18:21 -07:00
Linux Build Service Account
c35c72a358 Merge "qcacmn: Correct spelling errors" 2023-04-21 03:18:20 -07:00
Linux Build Service Account
3d28fd8ee3 Merge "qcacmn: Add support for enabling TWO tx_pipe" 2023-04-21 03:18:19 -07:00
Linux Build Service Account
5362a28873 Merge "qcacmn: limit tx completion process count to napi quota" 2023-04-21 03:18:18 -07:00
Jinwei Chen
a7d358d70a qcacmn: add DP API to support RX peer meta data version update
add DP API to support RX peer meta data version update.

Change-Id: I010cd64d5d60e5f2313fa3c4387968e85ce96157
CRs-Fixed: 3469143
2023-04-21 03:17:10 -07:00
Ripan Deuri
81504e9000 qcacmn: Add change to update tsf2 periodically
Target update tsf2 periodically in the scratch register. Add change to read
tsf2 from scratch register on receiving mlo timestamp indicator event.

Change-Id: Ic68d216d94ece8eddbf8af0f13a3f1876a893df3
CRs-Fixed: 3472165
2023-04-20 19:39:51 -07:00