From: Stephen Hemminger Date: Mon, 4 Jun 2007 20:25:37 +0000 (-0700) Subject: b44: timer power saving X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=a72a8179734393ca351f6ecf8cad6841ab7e1470;p=openwrt%2Fstaging%2Fblogic.git b44: timer power saving Make the PHY and statistic timer run on one second boundary for powersaving. On resume, the driver should check for link up immediately, to get online faster (rather than waiting for the next second). Signed-off-by: Stephen Hemminger Signed-off-by: Jeff Garzik --- diff --git a/drivers/net/b44.c b/drivers/net/b44.c index 879a2fff474e..e87bab9f9bea 100644 --- a/drivers/net/b44.c +++ b/drivers/net/b44.c @@ -599,8 +599,7 @@ static void b44_timer(unsigned long __opaque) spin_unlock_irq(&bp->lock); - bp->timer.expires = jiffies + HZ; - add_timer(&bp->timer); + mod_timer(&bp->timer, round_jiffies(jiffies + HZ)); } static void b44_tx(struct b44 *bp) @@ -2348,11 +2347,11 @@ static int b44_resume(struct pci_dev *pdev) netif_device_attach(bp->dev); spin_unlock_irq(&bp->lock); - bp->timer.expires = jiffies + HZ; - add_timer(&bp->timer); - b44_enable_ints(bp); netif_wake_queue(dev); + + mod_timer(&bp->timer, jiffies + 1); + return 0; }