]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
mt76: mt76x02u: move mt76x02u_mac_start in mt76x02-usb module
authorLorenzo Bianconi <lorenzo@kernel.org>
Thu, 12 Sep 2019 09:06:38 +0000 (11:06 +0200)
committerFelix Fietkau <nbd@nbd.name>
Wed, 20 Nov 2019 12:23:48 +0000 (13:23 +0100)
Unify mt76x02u_mac_start between mt76x2u and mt76x0u since the
code is shared between both drivers

Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
drivers/net/wireless/mediatek/mt76/mt76x0/init.c
drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0.h
drivers/net/wireless/mediatek/mt76/mt76x0/usb.c
drivers/net/wireless/mediatek/mt76/mt76x02_usb.h
drivers/net/wireless/mediatek/mt76/mt76x02_usb_core.c
drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2u.h
drivers/net/wireless/mediatek/mt76/mt76x2/usb_mac.c
drivers/net/wireless/mediatek/mt76/mt76x2/usb_main.c

index d7bac4961c7b577190fae5ca1caf77c3b981297d..388b54cded1be0cbafd997780719e2914d801d0b 100644 (file)
@@ -150,22 +150,6 @@ static void mt76x0_init_mac_registers(struct mt76x02_dev *dev)
        mt76_rmw(dev, MT_WMM_CTRL, 0x3ff, 0x201);
 }
 
-int mt76x0_mac_start(struct mt76x02_dev *dev)
-{
-       mt76x02_mac_reset_counters(dev);
-       mt76_wr(dev, MT_MAC_SYS_CTRL, MT_MAC_SYS_CTRL_ENABLE_TX);
-
-       if (!mt76x02_wait_for_wpdma(&dev->mt76, 200000))
-               return -ETIMEDOUT;
-
-       mt76_wr(dev, MT_RX_FILTR_CFG, dev->mt76.rxfilter);
-       mt76_wr(dev, MT_MAC_SYS_CTRL,
-               MT_MAC_SYS_CTRL_ENABLE_TX | MT_MAC_SYS_CTRL_ENABLE_RX);
-
-       return !mt76x02_wait_for_wpdma(&dev->mt76, 50) ? -ETIMEDOUT : 0;
-}
-EXPORT_SYMBOL_GPL(mt76x0_mac_start);
-
 void mt76x0_mac_stop(struct mt76x02_dev *dev)
 {
        int i = 200, ok = 0;
index 26517e062bdbe04a9536fef4980631020993f7bb..82f5b481b72323a1b5b4d733068162da34a1343d 100644 (file)
@@ -46,7 +46,6 @@ int mt76x0_init_hardware(struct mt76x02_dev *dev);
 int mt76x0_register_device(struct mt76x02_dev *dev);
 void mt76x0_chip_onoff(struct mt76x02_dev *dev, bool enable, bool reset);
 
-int mt76x0_mac_start(struct mt76x02_dev *dev);
 void mt76x0_mac_stop(struct mt76x02_dev *dev);
 
 int mt76x0_config(struct ieee80211_hw *hw, u32 changed);
index 00a445d27599870cb0587ffddccbf8f75cbcb5bf..4c2b66b5353398eab79d83de94b62c59808f18aa 100644 (file)
@@ -103,7 +103,7 @@ static int mt76x0u_start(struct ieee80211_hw *hw)
        struct mt76x02_dev *dev = hw->priv;
        int ret;
 
-       ret = mt76x0_mac_start(dev);
+       ret = mt76x02u_mac_start(dev);
        if (ret)
                return ret;
 
index 98329debc0335565d443a20ef9534953584ca21e..a57dcc8820aaf6b48e4d964856ee068b178e587b 100644 (file)
@@ -8,6 +8,7 @@
 
 #include "mt76x02.h"
 
+int mt76x02u_mac_start(struct mt76x02_dev *dev);
 void mt76x02u_init_mcu(struct mt76_dev *dev);
 void mt76x02u_mcu_fw_reset(struct mt76x02_dev *dev);
 int mt76x02u_mcu_fw_send_data(struct mt76x02_dev *dev, const void *data,
index 78dfc1e7f27b088ab8871b76495a012984c74be0..203420087ac4c24492764dff641ce3353a396b2a 100644 (file)
@@ -23,6 +23,27 @@ void mt76x02u_tx_complete_skb(struct mt76_dev *mdev, enum mt76_txq_id qid,
 }
 EXPORT_SYMBOL_GPL(mt76x02u_tx_complete_skb);
 
+int mt76x02u_mac_start(struct mt76x02_dev *dev)
+{
+       mt76x02_mac_reset_counters(dev);
+
+       mt76_wr(dev, MT_MAC_SYS_CTRL, MT_MAC_SYS_CTRL_ENABLE_TX);
+       if (!mt76x02_wait_for_wpdma(&dev->mt76, 200000))
+               return -ETIMEDOUT;
+
+       mt76_wr(dev, MT_RX_FILTR_CFG, dev->mt76.rxfilter);
+
+       mt76_wr(dev, MT_MAC_SYS_CTRL,
+               MT_MAC_SYS_CTRL_ENABLE_TX |
+               MT_MAC_SYS_CTRL_ENABLE_RX);
+
+       if (!mt76x02_wait_for_wpdma(&dev->mt76, 50))
+               return -ETIMEDOUT;
+
+       return 0;
+}
+EXPORT_SYMBOL_GPL(mt76x02u_mac_start);
+
 int mt76x02u_skb_dma_info(struct sk_buff *skb, int port, u32 flags)
 {
        struct sk_buff *iter, *last = skb;
index c876bac43751f1f32c616dcae87dbf49f14a90fd..f9d37c6cf1f03f499d097f236c4c28fc0809a939 100644 (file)
@@ -24,7 +24,6 @@ void mt76x2u_cleanup(struct mt76x02_dev *dev);
 void mt76x2u_stop_hw(struct mt76x02_dev *dev);
 
 int mt76x2u_mac_reset(struct mt76x02_dev *dev);
-int mt76x2u_mac_start(struct mt76x02_dev *dev);
 int mt76x2u_mac_stop(struct mt76x02_dev *dev);
 
 int mt76x2u_phy_set_channel(struct mt76x02_dev *dev,
index 95eb85653bbd645db31f6caf70b090ee4d51c929..59cbe826188a7db164464da4fb2558d61364b519 100644 (file)
@@ -92,23 +92,6 @@ int mt76x2u_mac_reset(struct mt76x02_dev *dev)
        return 0;
 }
 
-int mt76x2u_mac_start(struct mt76x02_dev *dev)
-{
-       mt76x02_mac_reset_counters(dev);
-
-       mt76_wr(dev, MT_MAC_SYS_CTRL, MT_MAC_SYS_CTRL_ENABLE_TX);
-       mt76x02_wait_for_wpdma(&dev->mt76, 1000);
-       usleep_range(50, 100);
-
-       mt76_wr(dev, MT_RX_FILTR_CFG, dev->mt76.rxfilter);
-
-       mt76_wr(dev, MT_MAC_SYS_CTRL,
-               MT_MAC_SYS_CTRL_ENABLE_TX |
-               MT_MAC_SYS_CTRL_ENABLE_RX);
-
-       return 0;
-}
-
 int mt76x2u_mac_stop(struct mt76x02_dev *dev)
 {
        int i, count = 0, val;
index eb73cb856c81306051d766f311b108bcf018788e..1e6f78760dd8d9f4ce81d65a656dc2d4e1c18d8d 100644 (file)
@@ -4,13 +4,14 @@
  */
 
 #include "mt76x2u.h"
+#include "../mt76x02_usb.h"
 
 static int mt76x2u_start(struct ieee80211_hw *hw)
 {
        struct mt76x02_dev *dev = hw->priv;
        int ret;
 
-       ret = mt76x2u_mac_start(dev);
+       ret = mt76x02u_mac_start(dev);
        if (ret)
                return ret;