diff options
Diffstat (limited to 'drivers/net/wireless/wl12xx/wl1251_ps.c')
-rw-r--r-- | drivers/net/wireless/wl12xx/wl1251_ps.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/net/wireless/wl12xx/wl1251_ps.c b/drivers/net/wireless/wl12xx/wl1251_ps.c index c53e28727ed4..c3e348a12322 100644 --- a/drivers/net/wireless/wl12xx/wl1251_ps.c +++ b/drivers/net/wireless/wl12xx/wl1251_ps.c | |||
@@ -119,6 +119,11 @@ int wl1251_ps_set_mode(struct wl1251 *wl, enum wl1251_cmd_ps_mode mode) | |||
119 | case STATION_POWER_SAVE_MODE: | 119 | case STATION_POWER_SAVE_MODE: |
120 | wl1251_debug(DEBUG_PSM, "entering psm"); | 120 | wl1251_debug(DEBUG_PSM, "entering psm"); |
121 | 121 | ||
122 | /* enable beacon filtering */ | ||
123 | ret = wl1251_acx_beacon_filter_opt(wl, true); | ||
124 | if (ret < 0) | ||
125 | return ret; | ||
126 | |||
122 | ret = wl1251_acx_wake_up_conditions(wl, | 127 | ret = wl1251_acx_wake_up_conditions(wl, |
123 | WAKE_UP_EVENT_DTIM_BITMAP, | 128 | WAKE_UP_EVENT_DTIM_BITMAP, |
124 | wl->listen_int); | 129 | wl->listen_int); |
@@ -142,6 +147,11 @@ int wl1251_ps_set_mode(struct wl1251 *wl, enum wl1251_cmd_ps_mode mode) | |||
142 | if (ret < 0) | 147 | if (ret < 0) |
143 | return ret; | 148 | return ret; |
144 | 149 | ||
150 | /* disable beacon filtering */ | ||
151 | ret = wl1251_acx_beacon_filter_opt(wl, false); | ||
152 | if (ret < 0) | ||
153 | return ret; | ||
154 | |||
145 | ret = wl1251_acx_wake_up_conditions(wl, | 155 | ret = wl1251_acx_wake_up_conditions(wl, |
146 | WAKE_UP_EVENT_DTIM_BITMAP, | 156 | WAKE_UP_EVENT_DTIM_BITMAP, |
147 | wl->listen_int); | 157 | wl->listen_int); |