mirror of
https://github.com/torvalds/linux.git
synced 2026-06-01 11:03:43 +02:00
ath.git update for v7.0-rc6
For both ath11k and ath12k use the correct TID when stopping an AMPDU session. -----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQQ/mtSHzPUi16IfDEksFbugiYzLewUCacKcFAAKCRAsFbugiYzL e9lMAP4lBqV3crt3DezGOH1KTdZqTW+Uh48ATxI7s+INF3fcTgEAufKvug/WthS+ nBMNWB6vTVGrdts/eqiU74IKeiaJWAQ= =8/DD -----END PGP SIGNATURE----- Merge tag 'ath-current-20260324' of git://git.kernel.org/pub/scm/linux/kernel/git/ath/ath Jeff Johnson says: ================== ath.git update for v7.0-rc6 For both ath11k and ath12k use the correct TID when stopping an AMPDU session. ================== Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
commit
6525a549ec
|
|
@ -1,7 +1,7 @@
|
|||
// SPDX-License-Identifier: BSD-3-Clause-Clear
|
||||
/*
|
||||
* Copyright (c) 2018-2019 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2021-2025 Qualcomm Innovation Center, Inc. All rights reserved.
|
||||
* Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
|
||||
*/
|
||||
|
||||
#include <linux/ieee80211.h>
|
||||
|
|
@ -1110,9 +1110,8 @@ int ath11k_dp_rx_ampdu_stop(struct ath11k *ar,
|
|||
struct ath11k_base *ab = ar->ab;
|
||||
struct ath11k_peer *peer;
|
||||
struct ath11k_sta *arsta = ath11k_sta_to_arsta(params->sta);
|
||||
struct dp_rx_tid *rx_tid;
|
||||
int vdev_id = arsta->arvif->vdev_id;
|
||||
dma_addr_t paddr;
|
||||
bool active;
|
||||
int ret;
|
||||
|
||||
spin_lock_bh(&ab->base_lock);
|
||||
|
|
@ -1124,15 +1123,14 @@ int ath11k_dp_rx_ampdu_stop(struct ath11k *ar,
|
|||
return -ENOENT;
|
||||
}
|
||||
|
||||
paddr = peer->rx_tid[params->tid].paddr;
|
||||
active = peer->rx_tid[params->tid].active;
|
||||
rx_tid = &peer->rx_tid[params->tid];
|
||||
|
||||
if (!active) {
|
||||
if (!rx_tid->active) {
|
||||
spin_unlock_bh(&ab->base_lock);
|
||||
return 0;
|
||||
}
|
||||
|
||||
ret = ath11k_peer_rx_tid_reo_update(ar, peer, peer->rx_tid, 1, 0, false);
|
||||
ret = ath11k_peer_rx_tid_reo_update(ar, peer, rx_tid, 1, 0, false);
|
||||
spin_unlock_bh(&ab->base_lock);
|
||||
if (ret) {
|
||||
ath11k_warn(ab, "failed to update reo for rx tid %d: %d\n",
|
||||
|
|
@ -1141,7 +1139,8 @@ int ath11k_dp_rx_ampdu_stop(struct ath11k *ar,
|
|||
}
|
||||
|
||||
ret = ath11k_wmi_peer_rx_reorder_queue_setup(ar, vdev_id,
|
||||
params->sta->addr, paddr,
|
||||
params->sta->addr,
|
||||
rx_tid->paddr,
|
||||
params->tid, 1, 1);
|
||||
if (ret)
|
||||
ath11k_warn(ab, "failed to send wmi to delete rx tid %d\n",
|
||||
|
|
|
|||
|
|
@ -735,6 +735,7 @@ int ath12k_dp_rx_ampdu_stop(struct ath12k *ar,
|
|||
struct ath12k_dp *dp = ath12k_ab_to_dp(ab);
|
||||
struct ath12k_dp_link_peer *peer;
|
||||
struct ath12k_sta *ahsta = ath12k_sta_to_ahsta(params->sta);
|
||||
struct ath12k_dp_rx_tid *rx_tid;
|
||||
struct ath12k_link_sta *arsta;
|
||||
int vdev_id;
|
||||
bool active;
|
||||
|
|
@ -770,7 +771,8 @@ int ath12k_dp_rx_ampdu_stop(struct ath12k *ar,
|
|||
return 0;
|
||||
}
|
||||
|
||||
ret = ath12k_dp_arch_peer_rx_tid_reo_update(dp, peer, peer->dp_peer->rx_tid,
|
||||
rx_tid = &peer->dp_peer->rx_tid[params->tid];
|
||||
ret = ath12k_dp_arch_peer_rx_tid_reo_update(dp, peer, rx_tid,
|
||||
1, 0, false);
|
||||
spin_unlock_bh(&dp->dp_lock);
|
||||
if (ret) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user