During scans, mac80211 frequently switches back to the home channel to
minimize interruption of ongoing traffic. Keep regular tx queues active
during that time.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
struct mt76_channel_state *state;
bool offchannel = hw->conf.flags & IEEE80211_CONF_OFFCHANNEL;
+ if (offchannel)
+ set_bit(MT76_OFFCHANNEL, &dev->state);
+ else
+ clear_bit(MT76_OFFCHANNEL, &dev->state);
+
if (dev->drv->update_survey)
dev->drv->update_survey(dev);
MT76_STATE_RUNNING,
MT76_SCANNING,
MT76_RESET,
+ MT76_OFFCHANNEL,
};
struct mt76_hw_cap {
if (probe)
break;
- if (test_bit(MT76_SCANNING, &dev->state) ||
+ if (test_bit(MT76_OFFCHANNEL, &dev->state) ||
test_bit(MT76_RESET, &dev->state))
return -EBUSY;
bool empty = false;
int cur;
- if (test_bit(MT76_SCANNING, &dev->state) ||
+ if (test_bit(MT76_OFFCHANNEL, &dev->state) ||
test_bit(MT76_RESET, &dev->state))
return -EBUSY;