aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless
diff options
context:
space:
mode:
authorEliad Peller <eliad@wizery.com>2011-05-13 04:57:12 -0400
committerLuciano Coelho <coelho@ti.com>2011-05-13 07:55:49 -0400
commitf795ea8b2f047409c59e891d6e5e86a925048bf4 (patch)
tree1e020a0f85bfab4bc3b81a745aeb70ade5a4fa1f /drivers/net/wireless
parentf44e58681aec420b132a54823d8911293a644d4e (diff)
wl12xx_sdio: declare support for NL80211_WOW_TRIGGER_ANYTHING trigger
Since wowlan requires the ability to stay awake while the host is suspended, declare support for NL80211_WOW_TRIGGER_ANYTHING if the MMC_PM_KEEP_POWER capability is being supported. Signed-off-by: Eliad Peller <eliad@wizery.com> Signed-off-by: Luciano Coelho <coelho@ti.com>
Diffstat (limited to 'drivers/net/wireless')
-rw-r--r--drivers/net/wireless/wl12xx/sdio.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/net/wireless/wl12xx/sdio.c b/drivers/net/wireless/wl12xx/sdio.c
index 41183db34836..92d29a860fc0 100644
--- a/drivers/net/wireless/wl12xx/sdio.c
+++ b/drivers/net/wireless/wl12xx/sdio.c
@@ -231,6 +231,7 @@ static int __devinit wl1271_probe(struct sdio_func *func,
231 const struct wl12xx_platform_data *wlan_data; 231 const struct wl12xx_platform_data *wlan_data;
232 struct wl1271 *wl; 232 struct wl1271 *wl;
233 unsigned long irqflags; 233 unsigned long irqflags;
234 mmc_pm_flag_t mmcflags;
234 int ret; 235 int ret;
235 236
236 /* We are only able to handle the wlan function */ 237 /* We are only able to handle the wlan function */
@@ -282,6 +283,13 @@ static int __devinit wl1271_probe(struct sdio_func *func,
282 283
283 disable_irq(wl->irq); 284 disable_irq(wl->irq);
284 285
286 /* if sdio can keep power while host is suspended, enable wow */
287 mmcflags = sdio_get_host_pm_caps(func);
288 wl1271_debug(DEBUG_SDIO, "sdio PM caps = 0x%x", mmcflags);
289
290 if (mmcflags & MMC_PM_KEEP_POWER)
291 hw->wiphy->wowlan.flags = WIPHY_WOWLAN_ANY;
292
285 ret = wl1271_init_ieee80211(wl); 293 ret = wl1271_init_ieee80211(wl);
286 if (ret) 294 if (ret)
287 goto out_irq; 295 goto out_irq;