summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Hemminger <shemminger@linux-foundation.org>2007-06-22 21:34:06 -0700
committerJohn W. Linville <linville@tuxdriver.com>2007-07-10 13:59:48 -0400
commit1c9d5e41e32a3bfe60f44e3272c05d14ea595a71 (patch)
tree47bccde21ad0fe5fbe2f9bc62e4e101f1862caf7
parent899413de1a6c9f999f677526df5205a9a70dcd93 (diff)
downloadop-kernel-dev-1c9d5e41e32a3bfe60f44e3272c05d14ea595a71.zip
op-kernel-dev-1c9d5e41e32a3bfe60f44e3272c05d14ea595a71.tar.gz
[PATCH] ipw2200: rf kill switch polling power saving
Make the ipw2200 driver polling of rf kill switch occur on second boundaries to reduce power. Making all the wakeup's in the system occur together reduces power, and keeps CPU in idle longer. Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/ipw2200.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/wireless/ipw2200.c b/drivers/net/wireless/ipw2200.c
index 7cb2052..aa32a97 100644
--- a/drivers/net/wireless/ipw2200.c
+++ b/drivers/net/wireless/ipw2200.c
@@ -1751,7 +1751,7 @@ static int ipw_radio_kill_sw(struct ipw_priv *priv, int disable_radio)
/* Make sure the RF_KILL check timer is running */
cancel_delayed_work(&priv->rf_kill);
queue_delayed_work(priv->workqueue, &priv->rf_kill,
- 2 * HZ);
+ round_jiffies(2 * HZ));
} else
queue_work(priv->workqueue, &priv->up);
}
@@ -4690,7 +4690,8 @@ static void ipw_rx_notification(struct ipw_priv *priv,
else if (priv->config & CFG_BACKGROUND_SCAN
&& priv->status & STATUS_ASSOCIATED)
queue_delayed_work(priv->workqueue,
- &priv->request_scan, HZ);
+ &priv->request_scan,
+ round_jiffies(HZ));
/* Send an empty event to user space.
* We don't send the received data on the event because
OpenPOWER on IntegriCloud