netdev
[Top] [All Lists]

[PATCH] (5/12) skge: simplify definition of wake on lan support

To: Jeff Garzik <jgarzik@xxxxxxxxx>
Subject: [PATCH] (5/12) skge: simplify definition of wake on lan support
From: Stephen Hemminger <shemminger@xxxxxxxx>
Date: Thu, 3 Mar 2005 11:36:46 -0800
Cc: netdev@xxxxxxxxxxx
Organization: Open Source Development Lab
Sender: netdev-bounce@xxxxxxxxxxx
Add a simple encapsulation of wake on lan support predicate.

Signed-off-by: Stephen Hemminger <shemminger@xxxxxxxx>


--- skge-2.6.11/drivers/net/skge.c.orig 2005-03-02 17:22:30.000000000 -0800
+++ skge-2.6.11/drivers/net/skge.c      2005-03-02 17:24:23.000000000 -0800
@@ -147,17 +147,18 @@
        }
 }
 
+/* Wake on Lan only supported on Yukon chps with rev 1 or above */
+static int wol_supported(const struct skge_hw *hw)
+{
+       return !((hw->chip_id == CHIP_ID_GENESIS ||
+                 (hw->chip_id == CHIP_ID_YUKON && chip_rev(hw) == 0)));
+}
 
 static void skge_get_wol(struct net_device *dev, struct ethtool_wolinfo *wol)
 {
        struct skge_port *skge = netdev_priv(dev);
-       struct skge_hw *hw = skge->hw;
 
-       if (hw->chip_id == CHIP_ID_GENESIS ||
-           (hw->chip_id == CHIP_ID_YUKON && chip_rev(hw) == 0))
-               wol->supported = 0;
-       else
-               wol->supported = WAKE_MAGIC;
+       wol->supported = wol_supported(skge->hw) ? WAKE_MAGIC : 0;
        wol->wolopts = skge->wol ? WAKE_MAGIC : 0;
 }
 
@@ -169,9 +170,7 @@
        if(wol->wolopts != WAKE_MAGIC && wol->wolopts != 0)
                return -EOPNOTSUPP;
 
-       if (wol->wolopts == WAKE_MAGIC &&
-           ((hw->chip_id == CHIP_ID_GENESIS ||
-             (hw->chip_id == CHIP_ID_YUKON && chip_rev(hw) == 0))))
+       if (wol->wolopts == WAKE_MAGIC && !wol_supported(hw))
                return -EOPNOTSUPP;
 
        skge->wol = wol->wolopts == WAKE_MAGIC;

<Prev in Thread] Current Thread [Next in Thread>
  • [PATCH] (5/12) skge: simplify definition of wake on lan support, Stephen Hemminger <=