mac80211: rt2x00: replace patches with v3 of pending series
[openwrt/openwrt.git] / package / kernel / mac80211 / patches / rt2x00 / 982-rt2x00-add-RF-self-TXDC-calibration.patch
diff --git a/package/kernel/mac80211/patches/rt2x00/982-rt2x00-add-RF-self-TXDC-calibration.patch b/package/kernel/mac80211/patches/rt2x00/982-rt2x00-add-RF-self-TXDC-calibration.patch
deleted file mode 100644 (file)
index ed8a737..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-From 21f2acf0f9e9da35fbdb96ee0aea97b02472030b Mon Sep 17 00:00:00 2001
-From: Daniel Golle <daniel@makrotopia.org>
-Date: Mon, 8 Jan 2018 13:42:27 +0100
-Subject: [PATCH 04/16] rt2x00: add RF self TXDC calibration for MT7620
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-To: linux-wireless@vger.kernel.org,
-    Stanislaw Gruszka <stf_xl@wp.pl>,
-    Helmut Schaa <helmut.schaa@googlemail.com>
-Cc: Kalle Valo <kvalo@kernel.org>,
-    David S. Miller <davem@davemloft.net>,
-    Eric Dumazet <edumazet@google.com>,
-    Jakub Kicinski <kuba@kernel.org>,
-    Paolo Abeni <pabeni@redhat.com>,
-    Johannes Berg <johannes.berg@intel.com>
-
-From: Tomislav Požega <pozega.tomislav@gmail.com>
-
-Add TX self calibration based on mtk driver.
-
-Signed-off-by: Tomislav Požega <pozega.tomislav@gmail.com>
----
- .../net/wireless/ralink/rt2x00/rt2800lib.c    | 48 +++++++++++++++++++
- 1 file changed, 48 insertions(+)
-
---- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
-+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
-@@ -8436,6 +8436,53 @@ static void rt2800_init_rfcsr_5592(struc
-       rt2800_led_open_drain_enable(rt2x00dev);
- }
-+static void rt2800_rf_self_txdc_cal(struct rt2x00_dev *rt2x00dev)
-+{
-+      u8 rfb5r1_org, rfb7r1_org, rfvalue;
-+      u32 mac0518, mac051c, mac0528, mac052c;
-+      u8 i;
-+
-+      mac0518 = rt2800_register_read(rt2x00dev, RF_CONTROL0);
-+      mac051c = rt2800_register_read(rt2x00dev, RF_BYPASS0);
-+      mac0528 = rt2800_register_read(rt2x00dev, RF_CONTROL2);
-+      mac052c = rt2800_register_read(rt2x00dev, RF_BYPASS2);
-+
-+      rt2800_register_write(rt2x00dev, RF_BYPASS0, 0x0);
-+      rt2800_register_write(rt2x00dev, RF_BYPASS2, 0x0);
-+
-+      rt2800_register_write(rt2x00dev, RF_CONTROL0, 0xC);
-+      rt2800_register_write(rt2x00dev, RF_BYPASS0, 0x3306);
-+      rt2800_register_write(rt2x00dev, RF_CONTROL2, 0x3330);
-+      rt2800_register_write(rt2x00dev, RF_BYPASS2, 0xfffff);
-+      rfb5r1_org = rt2800_rfcsr_read_bank(rt2x00dev, 5, 1);
-+      rfb7r1_org = rt2800_rfcsr_read_bank(rt2x00dev, 7, 1);
-+
-+      rt2800_rfcsr_write_bank(rt2x00dev, 5, 1, 0x4);
-+      for (i = 0; i < 100; i = i + 1) {
-+              usleep_range(50, 100);
-+              rfvalue = rt2800_rfcsr_read_bank(rt2x00dev, 5, 1);
-+              if ((rfvalue & 0x04) != 0x4)
-+                      break;
-+      }
-+      rt2800_rfcsr_write_bank(rt2x00dev, 5, 1, rfb5r1_org);
-+
-+      rt2800_rfcsr_write_bank(rt2x00dev, 7, 1, 0x4);
-+      for (i = 0; i < 100; i = i + 1) {
-+              usleep_range(50, 100);
-+              rfvalue = rt2800_rfcsr_read_bank(rt2x00dev, 7, 1);
-+              if ((rfvalue & 0x04) != 0x4)
-+                      break;
-+      }
-+      rt2800_rfcsr_write_bank(rt2x00dev, 7, 1, rfb7r1_org);
-+
-+      rt2800_register_write(rt2x00dev, RF_BYPASS0, 0x0);
-+      rt2800_register_write(rt2x00dev, RF_BYPASS2, 0x0);
-+      rt2800_register_write(rt2x00dev, RF_CONTROL0, mac0518);
-+      rt2800_register_write(rt2x00dev, RF_BYPASS0, mac051c);
-+      rt2800_register_write(rt2x00dev, RF_CONTROL2, mac0528);
-+      rt2800_register_write(rt2x00dev, RF_BYPASS2, mac052c);
-+}
-+
- static void rt2800_bbp_core_soft_reset(struct rt2x00_dev *rt2x00dev,
-                                      bool set_bw, bool is_ht40)
- {
-@@ -9043,6 +9090,7 @@ static void rt2800_init_rfcsr_6352(struc
-       rt2800_rfcsr_write_dccal(rt2x00dev, 5, 0x00);
-       rt2800_rfcsr_write_dccal(rt2x00dev, 17, 0x7C);
-+      rt2800_rf_self_txdc_cal(rt2x00dev);
-       rt2800_bw_filter_calibration(rt2x00dev, true);
-       rt2800_bw_filter_calibration(rt2x00dev, false);
- }