.sta_rate_tbl_update = mt76x02_sta_rate_tbl_update,
        .set_rts_threshold = mt76x02_set_rts_threshold,
        .wake_tx_queue = mt76_wake_tx_queue,
 -      .get_txpower = mt76x02_get_txpower,
 +      .get_txpower = mt76_get_txpower,
  };
  
- static int mt76x0u_register_device(struct mt76x02_dev *dev)
+ static int mt76x0u_init_hardware(struct mt76x02_dev *dev)
  {
-       struct ieee80211_hw *hw = dev->mt76.hw;
        int err;
  
-       err = mt76u_alloc_queues(&dev->mt76);
-       if (err < 0)
-               goto out_err;
- 
-       err = mt76u_mcu_init_rx(&dev->mt76);
-       if (err < 0)
-               goto out_err;
- 
        mt76x0_chip_onoff(dev, true, true);
-       if (!mt76x02_wait_for_mac(&dev->mt76)) {
-               err = -ETIMEDOUT;
-               goto out_err;
-       }
+ 
+       if (!mt76x02_wait_for_mac(&dev->mt76))
+               return -ETIMEDOUT;
  
        err = mt76x0u_mcu_init(dev);
        if (err < 0)
 
        tp->write_seq += tp->max_window + 2;
        if (tp->write_seq == 0)
                tp->write_seq = 1;
 +      icsk->icsk_backoff = 0;
+       tp->snd_cwnd = 2;
        icsk->icsk_probes_out = 0;
 +      icsk->icsk_rto = TCP_TIMEOUT_INIT;
        tp->snd_ssthresh = TCP_INFINITE_SSTHRESH;
 +      tp->snd_cwnd = TCP_INIT_CWND;
        tp->snd_cwnd_cnt = 0;
        tp->window_clamp = 0;
        tp->delivered_ce = 0;