DORMANTno replies

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

From: Stephen Hemminger <hidden>
Date: 2005-03-03 19:36:46

Add a simple encapsulation of wake on lan support predicate.

Signed-off-by: Stephen Hemminger <redacted>

--- 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;
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help