mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-11 09:02:35 +00:00
mt76: stop tx queues from the driver callback instead of common code
Allows the driver to control whether to send a BlockAckReq after waking up. MT76x2 needs this set to true, for MT7603 (to be submitted later) it needs to be false. Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
00dfae9a0a
commit
11b2a25f02
2 changed files with 3 additions and 4 deletions
|
@ -541,12 +541,10 @@ mt76_check_ps(struct mt76_dev *dev, struct sk_buff *skb)
|
||||||
if (!!test_bit(MT_WCID_FLAG_PS, &wcid->flags) == ps)
|
if (!!test_bit(MT_WCID_FLAG_PS, &wcid->flags) == ps)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (ps) {
|
if (ps)
|
||||||
set_bit(MT_WCID_FLAG_PS, &wcid->flags);
|
set_bit(MT_WCID_FLAG_PS, &wcid->flags);
|
||||||
mt76_stop_tx_queues(dev, sta, true);
|
else
|
||||||
} else {
|
|
||||||
clear_bit(MT_WCID_FLAG_PS, &wcid->flags);
|
clear_bit(MT_WCID_FLAG_PS, &wcid->flags);
|
||||||
}
|
|
||||||
|
|
||||||
ieee80211_sta_ps_transition(sta, ps);
|
ieee80211_sta_ps_transition(sta, ps);
|
||||||
dev->drv->sta_ps(dev, sta, ps);
|
dev->drv->sta_ps(dev, sta, ps);
|
||||||
|
|
|
@ -321,6 +321,7 @@ mt76x2_sta_ps(struct mt76_dev *mdev, struct ieee80211_sta *sta, bool ps)
|
||||||
struct mt76x2_dev *dev = container_of(mdev, struct mt76x2_dev, mt76);
|
struct mt76x2_dev *dev = container_of(mdev, struct mt76x2_dev, mt76);
|
||||||
int idx = msta->wcid.idx;
|
int idx = msta->wcid.idx;
|
||||||
|
|
||||||
|
mt76_stop_tx_queues(&dev->mt76, sta, true);
|
||||||
mt76x2_mac_wcid_set_drop(dev, idx, ps);
|
mt76x2_mac_wcid_set_drop(dev, idx, ps);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue