spin_lock_init(&dev->con_mon_lock);
        atomic_set(&dev->avg_ampdu_len, 1);
 
-       dev->stat_wq = alloc_workqueue("mt76x0", WQ_UNBOUND, 0);
-       if (!dev->stat_wq) {
-               ieee80211_free_hw(mdev->hw);
-               return NULL;
-       }
-
        return dev;
 }
 
        dev->mt76.chandef.chan = &dev->mt76.sband_2g.sband.channels[0];
 
        INIT_DELAYED_WORK(&dev->mac_work, mt76x0_mac_work);
-       INIT_DELAYED_WORK(&dev->stat_work, mt76x0_tx_stat);
 
        ret = ieee80211_register_hw(hw);
        if (ret)
 
        struct delayed_work cal_work;
        struct delayed_work mac_work;
 
-       struct workqueue_struct *stat_wq;
        struct delayed_work stat_work;
 
        spinlock_t mac_lock;
 void mt76x0_tx(struct ieee80211_hw *hw, struct ieee80211_tx_control *control,
                struct sk_buff *skb);
 void mt76x0_tx_status(struct mt76x0_dev *dev, struct sk_buff *skb);
-void mt76x0_tx_stat(struct work_struct *work);
 
 void mt76x0_queue_rx_skb(struct mt76_dev *mdev, enum mt76_rxq_id q,
                         struct sk_buff *skb);
 
        mt76_rx(&dev->mt76, q, skb);
 }
 
-void mt76x0_tx_stat(struct work_struct *work)
-{
-       struct mt76x0_dev *dev = container_of(work, struct mt76x0_dev,
-                                              stat_work.work);
-       struct mt76x02_tx_status stat;
-       unsigned long flags;
-       int cleaned = 0;
-       u8 update = 1;
-
-       while (!test_bit(MT76_REMOVED, &dev->mt76.state)) {
-               if (!mt76x02_mac_load_tx_status(&dev->mt76, &stat))
-                       break;
-
-               mt76x02_send_tx_status(&dev->mt76, &stat, &update);
-
-               cleaned++;
-       }
-       trace_mt76x0_tx_status_cleaned(&dev->mt76, cleaned);
-
-       spin_lock_irqsave(&dev->tx_lock, flags);
-       if (cleaned)
-               queue_delayed_work(dev->stat_wq, &dev->stat_work,
-                                  msecs_to_jiffies(10));
-       else if (test_and_clear_bit(MT76_MORE_STATS, &dev->mt76.state))
-               queue_delayed_work(dev->stat_wq, &dev->stat_work,
-                                  msecs_to_jiffies(20));
-       else
-               clear_bit(MT76_READING_STATS, &dev->mt76.state);
-       spin_unlock_irqrestore(&dev->tx_lock, flags);
-}
 
        usb_set_intfdata(usb_intf, NULL);
        usb_put_dev(interface_to_usbdev(usb_intf));
 
-       destroy_workqueue(dev->stat_wq);
        ieee80211_free_hw(dev->mt76.hw);
        return ret;
 }
        usb_set_intfdata(usb_intf, NULL);
        usb_put_dev(interface_to_usbdev(usb_intf));
 
-       destroy_workqueue(dev->stat_wq);
        ieee80211_free_hw(dev->mt76.hw);
 }