X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=blobdiff_plain;f=drivers%2Fnet%2Fwireless%2Fwl1251%2Fps.c;h=0dbdd24aa01a181a1a84c1785cf0326cf12b6052;hp=db719f7d26928c4012a1020a050edbd3a9560980;hb=48f7897661fb92e22369766cdf6729fff74f9139;hpb=f0d15c96d4ddcf32b6f910c4c2487ee705e4d493 diff --git a/drivers/net/wireless/wl1251/ps.c b/drivers/net/wireless/wl1251/ps.c index db719f7d2692..0dbdd24aa01a 100644 --- a/drivers/net/wireless/wl1251/ps.c +++ b/drivers/net/wireless/wl1251/ps.c @@ -112,21 +112,18 @@ int wl1251_ps_set_mode(struct wl1251 *wl, enum wl1251_station_mode mode) case STATION_POWER_SAVE_MODE: wl1251_debug(DEBUG_PSM, "entering psm"); - /* enable beacon filtering */ - ret = wl1251_acx_beacon_filter_opt(wl, true); - if (ret < 0) - return ret; - ret = wl1251_acx_wake_up_conditions(wl, WAKE_UP_EVENT_DTIM_BITMAP, wl->listen_int); if (ret < 0) return ret; +#if 0 /* problems seen on one router */ ret = wl1251_acx_bet_enable(wl, WL1251_ACX_BET_ENABLE, WL1251_DEFAULT_BET_CONSECUTIVE); if (ret < 0) return ret; +#endif ret = wl1251_cmd_ps_mode(wl, CHIP_POWER_SAVE_MODE); if (ret < 0) @@ -155,11 +152,13 @@ int wl1251_ps_set_mode(struct wl1251 *wl, enum wl1251_station_mode mode) if (ret < 0) return ret; +#if 0 /* disable BET */ ret = wl1251_acx_bet_enable(wl, WL1251_ACX_BET_DISABLE, WL1251_DEFAULT_BET_CONSECUTIVE); if (ret < 0) return ret; +#endif /* disable beacon filtering */ ret = wl1251_acx_beacon_filter_opt(wl, false); @@ -178,7 +177,10 @@ int wl1251_ps_set_mode(struct wl1251 *wl, enum wl1251_station_mode mode) break; } + if (mode != wl->station_mode) + wl->ps_transitioning = true; wl->station_mode = mode; + wl->ps_change_jiffies = jiffies; return ret; }