diff --git a/mt76.h b/mt76.h index cd118303..c30288a1 100644 --- a/mt76.h +++ b/mt76.h @@ -79,6 +79,12 @@ struct mt76_queue_ops { void (*kick)(struct mt76_dev *dev, struct mt76_queue *q); }; +enum { + MT76_STATE_INITIALIZED, + MT76_STATE_RUNNING, + MT76_SCANNING, +}; + struct mt76_dev { struct ieee80211_hw *hw; @@ -87,6 +93,8 @@ struct mt76_dev { struct device *dev; const struct mt76_queue_ops *queue_ops; + + unsigned long state; }; #define mt76_rr(dev, ...) (dev)->mt76.bus->rr(&((dev)->mt76), __VA_ARGS__) diff --git a/mt76x2.h b/mt76x2.h index aaf7d6da..8f8ad768 100644 --- a/mt76x2.h +++ b/mt76x2.h @@ -45,12 +45,6 @@ #include "mt76x2_regs.h" #include "mt76x2_mac.h" -enum { - MT76_STATE_INITIALIZED, - MT76_STATE_RUNNING, - MT76_SCANNING, -}; - enum mt76x2_txq_id { MT_TXQ_VO = IEEE80211_AC_VO, MT_TXQ_VI = IEEE80211_AC_VI, @@ -163,7 +157,6 @@ struct mt76x2_dev { spinlock_t lock; spinlock_t irq_lock; u32 irqmask; - unsigned long state; struct sk_buff *beacons[8]; u8 beacon_mask; diff --git a/mt76x2_core.c b/mt76x2_core.c index 4c4df5a0..c7d5f2dc 100644 --- a/mt76x2_core.c +++ b/mt76x2_core.c @@ -44,7 +44,7 @@ irqreturn_t mt76x2_irq_handler(int irq, void *dev_instance) intr = mt76_rr(dev, MT_INT_SOURCE_CSR); mt76_wr(dev, MT_INT_SOURCE_CSR, intr); - if (!test_bit(MT76_STATE_INITIALIZED, &dev->state)) + if (!test_bit(MT76_STATE_INITIALIZED, &dev->mt76.state)) return IRQ_NONE; trace_dev_irq(dev, intr, dev->irqmask); diff --git a/mt76x2_init.c b/mt76x2_init.c index 349e6887..da10ee5a 100644 --- a/mt76x2_init.c +++ b/mt76x2_init.c @@ -528,7 +528,7 @@ int mt76x2_init_hardware(struct mt76x2_dev *dev) if (ret) return ret; - set_bit(MT76_STATE_INITIALIZED, &dev->state); + set_bit(MT76_STATE_INITIALIZED, &dev->mt76.state); ret = mt76x2_mac_start(dev); if (ret) return ret; diff --git a/mt76x2_mac.c b/mt76x2_mac.c index 8c2e7264..a648761f 100644 --- a/mt76x2_mac.c +++ b/mt76x2_mac.c @@ -403,7 +403,7 @@ void mt76x2_mac_poll_tx_status(struct mt76x2_dev *dev, bool irq) unsigned long flags; u8 update = 1; - if (!test_bit(MT76_STATE_RUNNING, &dev->state)) + if (!test_bit(MT76_STATE_RUNNING, &dev->mt76.state)) return; trace_mac_txstat_poll(dev); diff --git a/mt76x2_main.c b/mt76x2_main.c index 5d834299..0bac931a 100644 --- a/mt76x2_main.c +++ b/mt76x2_main.c @@ -33,7 +33,7 @@ mt76x2_start(struct ieee80211_hw *hw) MT_CALIBRATE_INTERVAL); napi_enable(&dev->napi); - set_bit(MT76_STATE_RUNNING, &dev->state); + set_bit(MT76_STATE_RUNNING, &dev->mt76.state); out: mutex_unlock(&dev->mutex); @@ -47,7 +47,7 @@ mt76x2_stop(struct ieee80211_hw *hw) mutex_lock(&dev->mutex); napi_disable(&dev->napi); - clear_bit(MT76_STATE_RUNNING, &dev->state); + clear_bit(MT76_STATE_RUNNING, &dev->mt76.state); mt76x2_stop_hardware(dev); mutex_unlock(&dev->mutex); } @@ -106,7 +106,7 @@ mt76x2_config(struct ieee80211_hw *hw, u32 changed) if (changed & IEEE80211_CONF_CHANGE_POWER) { dev->txpower_conf = hw->conf.power_level * 2; - if (test_bit(MT76_STATE_RUNNING, &dev->state)) + if (test_bit(MT76_STATE_RUNNING, &dev->mt76.state)) mt76x2_phy_set_txpower(dev); } @@ -369,7 +369,7 @@ mt76x2_sw_scan(struct ieee80211_hw *hw, struct ieee80211_vif *vif, const u8 *mac struct mt76x2_dev *dev = hw->priv; tasklet_disable(&dev->pre_tbtt_tasklet); - set_bit(MT76_SCANNING, &dev->state); + set_bit(MT76_SCANNING, &dev->mt76.state); } static void @@ -377,7 +377,7 @@ mt76x2_sw_scan_complete(struct ieee80211_hw *hw, struct ieee80211_vif *vif) { struct mt76x2_dev *dev = hw->priv; - clear_bit(MT76_SCANNING, &dev->state); + clear_bit(MT76_SCANNING, &dev->mt76.state); tasklet_enable(&dev->pre_tbtt_tasklet); } @@ -494,7 +494,7 @@ const struct ieee80211_ops mt76x2_ops = { void mt76x2_rx(struct mt76x2_dev *dev, struct sk_buff *skb) { - if (!test_bit(MT76_STATE_RUNNING, &dev->state)) { + if (!test_bit(MT76_STATE_RUNNING, &dev->mt76.state)) { dev_kfree_skb(skb); return; } diff --git a/mt76x2_phy.c b/mt76x2_phy.c index 34506b00..58ed38a8 100644 --- a/mt76x2_phy.c +++ b/mt76x2_phy.c @@ -492,7 +492,7 @@ int mt76x2_phy_set_channel(struct mt76x2_dev *dev, struct cfg80211_chan_def *chandef) { struct ieee80211_channel *chan = chandef->chan; - bool scan = test_bit(MT76_SCANNING, &dev->state); + bool scan = test_bit(MT76_SCANNING, &dev->mt76.state); enum ieee80211_band band = chan->band; u8 channel;