diff --git a/main.c b/main.c index 0cc18d73..2da74eb3 100644 --- a/main.c +++ b/main.c @@ -271,13 +271,16 @@ mt76_sta_notify(struct ieee80211_hw *hw, struct ieee80211_vif *vif, { struct mt76_sta *msta = (struct mt76_sta *) sta->drv_priv; struct mt76_dev *dev = hw->priv; + int idx = msta->wcid.idx; switch (cmd) { case STA_NOTIFY_SLEEP: msta->sleeping = true; + mt76_set(dev, MT_WCID_DROP(idx), MT_WCID_DROP_MASK(idx)); mt76_stop_tx_queues(dev, sta); break; case STA_NOTIFY_AWAKE: + mt76_clear(dev, MT_WCID_DROP(idx), MT_WCID_DROP_MASK(idx)); msta->sleeping = false; break; }