wl12xx: enter psm only after station role was started

The station didn't get into psm after recovery, because
psm was configured before sta role was started.

Move wl1271_ps_set_mode() to be executed only after
the role was started.

Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
This commit is contained in:
Eliad Peller 2011-08-23 16:37:01 +03:00 committed by Luciano Coelho
parent a879ed790a
commit 05dba35506

View File

@ -3361,19 +3361,6 @@ sta_not_found:
ret = wl1271_acx_conn_monit_params(wl, true);
if (ret < 0)
goto out;
/* If we want to go in PSM but we're not there yet */
if (test_bit(WL1271_FLAG_PSM_REQUESTED, &wl->flags) &&
!test_bit(WL1271_FLAG_PSM, &wl->flags)) {
enum wl1271_cmd_ps_mode mode;
mode = STATION_POWER_SAVE_MODE;
ret = wl1271_ps_set_mode(wl, mode,
wl->basic_rate,
true);
if (ret < 0)
goto out;
}
} else {
/* use defaults when not associated */
bool was_assoc =
@ -3517,6 +3504,19 @@ sta_not_found:
if (ret < 0)
goto out;
}
/* If we want to go in PSM but we're not there yet */
if (test_bit(WL1271_FLAG_PSM_REQUESTED, &wl->flags) &&
!test_bit(WL1271_FLAG_PSM, &wl->flags)) {
enum wl1271_cmd_ps_mode mode;
mode = STATION_POWER_SAVE_MODE;
ret = wl1271_ps_set_mode(wl, mode,
wl->basic_rate,
true);
if (ret < 0)
goto out;
}
}
/* Handle new association with HT. Do this after join. */