summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVitja Makarov <vitja.makarov@gmail.com>2008-01-30 16:52:26 +0800
committerDavid S. Miller <davem@davemloft.net>2008-02-03 04:28:50 -0800
commit136492b275e0dd02d842b94507d66267d18d341c (patch)
tree6c821b0105721afc61d862109bfe1b5bdb9884cd
parent6893ff1c7eeac73e2c3267e4270bdb64ec427a31 (diff)
downloadlwn-136492b275e0dd02d842b94507d66267d18d341c.tar.gz
lwn-136492b275e0dd02d842b94507d66267d18d341c.zip
EMAC driver: add power down mode
This patch puts phy in power-down mode when interface is down. Also we should think about energy detect power-down mode, that will decrease power consumption when no link. Signed-off-by: Vitja Makarov <vitja.makarov@gmail.com> Signed-off-by: Bryan Wu <bryan.wu@analog.com> Signed-off-by: Jeff Garzik <jeff@garzik.org> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/bfin_mac.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/bfin_mac.c b/drivers/net/bfin_mac.c
index e9bd05916774..f2368b71a720 100644
--- a/drivers/net/bfin_mac.c
+++ b/drivers/net/bfin_mac.c
@@ -884,10 +884,10 @@ static int bf537mac_open(struct net_device *dev)
return retval;
phy_start(lp->phydev);
+ phy_write(lp->phydev, MII_BMCR, BMCR_RESET);
setup_system_regs(dev);
bf537mac_disable();
bf537mac_enable();
-
pr_debug("hardware init finished\n");
netif_start_queue(dev);
netif_carrier_on(dev);
@@ -910,6 +910,7 @@ static int bf537mac_close(struct net_device *dev)
netif_carrier_off(dev);
phy_stop(lp->phydev);
+ phy_write(lp->phydev, MII_BMCR, BMCR_PDOWN);
/* clear everything */
bf537mac_shutdown(dev);