From dcccc04adc2cb6ad31ad5168f4078707b5c4fba7 Mon Sep 17 00:00:00 2001 From: Stanislaw Gruszka Date: Tue, 19 Mar 2019 11:37:41 +0100 Subject: [PATCH] mt76x02u: add sta_ps Add sta_ps callback but dont set WCID drop sicne registers for USB can not be accessed from tasklet context. Signed-off-by: Stanislaw Gruszka Signed-off-by: Felix Fietkau --- mt76x0/usb.c | 1 + mt76x02_util.c | 3 ++- mt76x2/usb.c | 1 + 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/mt76x0/usb.c b/mt76x0/usb.c index 49f70ef7..3aebccc6 100644 --- a/mt76x0/usb.c +++ b/mt76x0/usb.c @@ -223,6 +223,7 @@ static int mt76x0u_probe(struct usb_interface *usb_intf, .tx_complete_skb = mt76x02u_tx_complete_skb, .tx_status_data = mt76x02_tx_status_data, .rx_skb = mt76x02_queue_rx_skb, + .sta_ps = mt76x02_sta_ps, .sta_add = mt76x02_sta_add, .sta_remove = mt76x02_sta_remove, }; diff --git a/mt76x02_util.c b/mt76x02_util.c index 4a282501..80dc922e 100644 --- a/mt76x02_util.c +++ b/mt76x02_util.c @@ -616,7 +616,8 @@ void mt76x02_sta_ps(struct mt76_dev *mdev, struct ieee80211_sta *sta, int idx = msta->wcid.idx; mt76_stop_tx_queues(&dev->mt76, sta, true); - mt76x02_mac_wcid_set_drop(dev, idx, ps); + if (mt76_is_mmio(dev)) + mt76x02_mac_wcid_set_drop(dev, idx, ps); } EXPORT_SYMBOL_GPL(mt76x02_sta_ps); diff --git a/mt76x2/usb.c b/mt76x2/usb.c index 76df7e56..07569e05 100644 --- a/mt76x2/usb.c +++ b/mt76x2/usb.c @@ -41,6 +41,7 @@ static int mt76x2u_probe(struct usb_interface *intf, .tx_complete_skb = mt76x02u_tx_complete_skb, .tx_status_data = mt76x02_tx_status_data, .rx_skb = mt76x02_queue_rx_skb, + .sta_ps = mt76x02_sta_ps, .sta_add = mt76x02_sta_add, .sta_remove = mt76x02_sta_remove, };