libertas: add ethtool support for wake-on-lan configuration

Also, check that suspend is refused if HOST_SLEEP_CFG hasn't been done.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
David Woodhouse
2007-12-12 20:06:06 -05:00
committed by David S. Miller
parent d1f7a5b8cf
commit 506e9025e0
6 changed files with 72 additions and 11 deletions

View File

@@ -111,21 +111,23 @@ out:
return ret;
}
int lbs_host_sleep_cfg(struct lbs_private *priv, uint32_t criteria,
uint8_t gpio, uint8_t gap)
int lbs_host_sleep_cfg(struct lbs_private *priv, uint32_t criteria)
{
struct cmd_ds_host_sleep cmd_config;
int ret;
cmd_config.criteria = cpu_to_le32(criteria);
cmd_config.gpio = gpio;
cmd_config.gap = gap;
cmd_config.gpio = priv->wol_gpio;
cmd_config.gap = priv->wol_gap;
ret = lbs_cmd_with_response(priv, CMD_802_11_HOST_SLEEP_CFG, &cmd_config);
if (ret) {
if (!ret) {
lbs_deb_cmd("Set WOL criteria to %x\n", criteria);
priv->wol_criteria = criteria;
} else {
lbs_pr_info("HOST_SLEEP_CFG failed %d\n", ret);
return ret;
}
return ret;
}
EXPORT_SYMBOL_GPL(lbs_host_sleep_cfg);