]> err.no Git - linux-2.6/commitdiff
[PATCH] rt2x00: Remove rt2x00_clear_link
authorIvo van Doorn <ivdoorn@gmail.com>
Sat, 13 Oct 2007 14:26:32 +0000 (16:26 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Jan 2008 23:02:52 +0000 (15:02 -0800)
rt2x00_clear_link() was becoming too large for statically inline,
also it was used on a single location and shouldn't really be
used anywhere else. So move the entire code into the function
rt2x00lib_start_link_tuner()

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/wireless/rt2x00/rt2x00.h
drivers/net/wireless/rt2x00/rt2x00dev.c

index c47a1e6333cc8a49aaa65f7496beda6775d58d55..d6f0a72b7a0cd748a0a93fbae7da57c1c7453d6a 100644 (file)
@@ -276,26 +276,14 @@ struct link {
        struct delayed_work work;
 };
 
-/*
- * Clear all counters inside the link structure.
- */
-static inline void rt2x00_clear_link(struct link *link)
-{
-       link->count = 0;
-       memset(&link->qual, 0, sizeof(link->qual));
-       link->qual.rx_percentage = 50;
-       link->qual.tx_percentage = 50;
-}
-
 /*
  * Update the rssi using the walking average approach.
  */
 static inline void rt2x00_update_link_rssi(struct link *link, int rssi)
 {
-       if (!link->qual.avg_rssi)
-               link->qual.avg_rssi = rssi;
-       else
-               link->qual.avg_rssi = ((link->qual.avg_rssi * 7) + rssi) / 8;
+       if (link->qual.avg_rssi)
+               rssi = ((link->qual.avg_rssi * 7) + rssi) / 8;
+       link->qual.avg_rssi = rssi;
 }
 
 /*
index b2016f459d3b08e494f6e17cebbb6645650d11f6..0f824b27f1ef06e5f287123308c694025a47b07c 100644 (file)
@@ -67,7 +67,21 @@ EXPORT_SYMBOL_GPL(rt2x00lib_get_ring);
  */
 static void rt2x00lib_start_link_tuner(struct rt2x00_dev *rt2x00dev)
 {
-       rt2x00_clear_link(&rt2x00dev->link);
+       rt2x00dev->link.count = 0;
+       rt2x00dev->link.vgc_level = 0;
+
+       memset(&rt2x00dev->link.qual, 0, sizeof(rt2x00dev->link.qual));
+
+       /*
+        * The RX and TX percentage should start at 50%
+        * this will assure we will get at least get some
+        * decent value when the link tuner starts.
+        * The value will be dropped and overwritten with
+        * the correct (measured )value anyway during the
+        * first run of the link tuner.
+        */
+       rt2x00dev->link.qual.rx_percentage = 50;
+       rt2x00dev->link.qual.tx_percentage = 50;
 
        /*
         * Reset the link tuner.