mac80211: rt2x00: fold patches
authorMathias Kresin <dev@kresin.me>
Fri, 26 Aug 2016 15:25:53 +0000 (17:25 +0200)
committerMathias Kresin <dev@kresin.me>
Wed, 9 Nov 2016 19:02:18 +0000 (20:02 +0100)
The patch 615-rt2x00-fix_20mhz_clk.patch fixes code introduced by
611-rt2x00-rf_vals-rt3352-xtal20.patch and makes the the platform data
property clk_is_20mhz obsolete.

Signed-off-by: Mathias Kresin <dev@kresin.me>
package/kernel/mac80211/patches/611-rt2x00-rf_vals-rt3352-xtal20.patch
package/kernel/mac80211/patches/615-rt2x00-fix_20mhz_clk.patch [deleted file]
target/linux/generic/files/include/linux/rt2x00_platform.h

index 860fdc0..6bcbbe0 100644 (file)
@@ -1,6 +1,14 @@
 --- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
 +++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
-@@ -8186,6 +8186,27 @@ static const struct rf_channel rf_vals_5
+@@ -36,6 +36,7 @@
+ #include <linux/kernel.h>
+ #include <linux/module.h>
+ #include <linux/slab.h>
++#include <linux/clk.h>
+ #include "rt2x00.h"
+ #include "rt2800lib.h"
+@@ -8186,6 +8187,27 @@ static const struct rf_channel rf_vals_5
        {196, 83, 0, 12, 1},
  };
  
@@ -28,7 +36,7 @@
  static int rt2800_probe_hw_mode(struct rt2x00_dev *rt2x00dev)
  {
        struct hw_mode_spec *spec = &rt2x00dev->spec;
-@@ -8276,7 +8297,10 @@ static int rt2800_probe_hw_mode(struct r
+@@ -8276,7 +8298,10 @@ static int rt2800_probe_hw_mode(struct r
        case RF5390:
        case RF5392:
                spec->num_channels = 14;
                break;
  
        case RF3052:
-@@ -8460,6 +8484,19 @@ static int rt2800_probe_rt(struct rt2x00
+@@ -8460,6 +8485,20 @@ static int rt2800_probe_rt(struct rt2x00
        return 0;
  }
  
 +int rt2800_probe_clk(struct rt2x00_dev *rt2x00dev)
 +{
-+      struct rt2x00_platform_data *pdata = rt2x00dev->dev->platform_data;
 +      struct hw_mode_spec *spec = &rt2x00dev->spec;
++      struct clk *clk = clk_get(rt2x00dev->dev, NULL);
 +
-+      if (!pdata)
-+              return -EINVAL;
++      if (IS_ERR(clk))
++              return PTR_ERR(clk);
 +
-+      spec->clk_is_20mhz = pdata->clk_is_20mhz;
++      if (clk_get_rate(clk) == 20000000)
++              spec->clk_is_20mhz = 1;
 +
 +      return 0;
 +}
@@ -60,7 +69,7 @@
  int rt2800_probe_hw(struct rt2x00_dev *rt2x00dev)
  {
        struct rt2800_drv_data *drv_data = rt2x00dev->drv_data;
-@@ -8502,6 +8539,15 @@ int rt2800_probe_hw(struct rt2x00_dev *r
+@@ -8502,6 +8541,15 @@ int rt2800_probe_hw(struct rt2x00_dev *r
        rt2800_register_write(rt2x00dev, GPIO_CTRL, reg);
  
        /*
  };
  
  /*
---- a/include/linux/rt2x00_platform.h
-+++ b/include/linux/rt2x00_platform.h
-@@ -18,6 +18,7 @@ struct rt2x00_platform_data {
-       int disable_2ghz;
-       int disable_5ghz;
-+      int clk_is_20mhz;
- };
- #endif /* _RT2X00_PLATFORM_H */
diff --git a/package/kernel/mac80211/patches/615-rt2x00-fix_20mhz_clk.patch b/package/kernel/mac80211/patches/615-rt2x00-fix_20mhz_clk.patch
deleted file mode 100644 (file)
index e7b2a8c..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
---- a/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
-+++ b/drivers/net/wireless/ralink/rt2x00/rt2800lib.c
-@@ -36,6 +36,7 @@
- #include <linux/kernel.h>
- #include <linux/module.h>
- #include <linux/slab.h>
-+#include <linux/clk.h>
- #include "rt2x00.h"
- #include "rt2800lib.h"
-@@ -8486,13 +8487,14 @@ static int rt2800_probe_rt(struct rt2x00
- int rt2800_probe_clk(struct rt2x00_dev *rt2x00dev)
- {
--      struct rt2x00_platform_data *pdata = rt2x00dev->dev->platform_data;
-       struct hw_mode_spec *spec = &rt2x00dev->spec;
-+      struct clk *clk = clk_get(rt2x00dev->dev, NULL);
--      if (!pdata)
--              return -EINVAL;
-+      if (IS_ERR(clk))
-+              return PTR_ERR(clk);
--      spec->clk_is_20mhz = pdata->clk_is_20mhz;
-+      if (clk_get_rate(clk) == 20000000)
-+              spec->clk_is_20mhz = 1;
-       return 0;
- }
index 80483ef..e10377e 100644 (file)
@@ -18,7 +18,6 @@ struct rt2x00_platform_data {
 
        int disable_2ghz;
        int disable_5ghz;
-       int clk_is_20mhz;
 };
 
 #endif /* _RT2X00_PLATFORM_H */