iwlwifi: Led blinking counting both tx and rx
authorWey-Yi Guy <wey-yi.w.guy@intel.com>
Fri, 17 Jul 2009 16:30:20 +0000 (09:30 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Fri, 24 Jul 2009 19:05:24 +0000 (15:05 -0400)
For controlling led blinking, counting both tx and rx data traffic; this
will be able to handle traffic in either direction

Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/iwlwifi/iwl-led.c

index 36d88a045043967b130433f7d70bd1f685a13b35..8c8115293b3c3289483eba861d6878fbaf5fa906 100644 (file)
@@ -54,7 +54,7 @@ static const char *led_type_str[] = {
 
 
 static const struct {
-       u16 tpt;
+       u16 tpt;        /* Mb/s */
        u8 on_time;
        u8 off_time;
 } blink_tbl[] =
@@ -264,13 +264,15 @@ static int iwl_leds_register_led(struct iwl_priv *priv, struct iwl_led *led,
 
 
 /*
- * calculate blink rate according to last 2 sec Tx/Rx activities
+ * calculate blink rate according to last second Tx/Rx activities
  */
 static int iwl_get_blink_rate(struct iwl_priv *priv)
 {
        int i;
-       u64 current_tpt = priv->tx_stats[2].bytes;
-       /* FIXME: + priv->rx_stats[2].bytes; */
+       /* count both tx and rx traffic to be able to
+        * handle traffic in either direction
+        */
+       u64 current_tpt = priv->tx_stats[2].bytes + priv->rx_stats[2].bytes;
        s64 tpt = current_tpt - priv->led_tpt;
 
        if (tpt < 0) /* wraparound */