wl12xx: don't handle change_channel while associated

Currently, CHANGE_CHANNEL indication while
associated is considered as roaming attempt.

However, with the new auth/assoc redesign,
we no longer have to handle this case,
so remove it.

Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
This commit is contained in:
Eliad Peller 2012-03-04 10:55:51 +02:00 committed by Luciano Coelho
parent 249e969889
commit 121af04995

View File

@ -2515,35 +2515,22 @@ static int wl12xx_config_vif(struct wl1271 *wl, struct wl12xx_vif *wlvif,
wl1271_warning("rate policy for channel "
"failed %d", ret);
if (test_bit(WLVIF_FLAG_STA_ASSOCIATED,
&wlvif->flags)) {
if (wl12xx_dev_role_started(wlvif)) {
/* roaming */
ret = wl12xx_croc(wl,
wlvif->dev_role_id);
if (ret < 0)
return ret;
}
ret = wl1271_join(wl, wlvif, false);
/*
* change the ROC channel. do it only if we are
* not idle. otherwise, CROC will be called
* anyway.
*/
if (!test_bit(WLVIF_FLAG_STA_ASSOCIATED,
&wlvif->flags) &&
wl12xx_dev_role_started(wlvif) &&
!(conf->flags & IEEE80211_CONF_IDLE)) {
ret = wl12xx_stop_dev(wl, wlvif);
if (ret < 0)
wl1271_warning("cmd join on channel "
"failed %d", ret);
} else {
/*
* change the ROC channel. do it only if we are
* not idle. otherwise, CROC will be called
* anyway.
*/
if (wl12xx_dev_role_started(wlvif) &&
!(conf->flags & IEEE80211_CONF_IDLE)) {
ret = wl12xx_stop_dev(wl, wlvif);
if (ret < 0)
return ret;
return ret;
ret = wl12xx_start_dev(wl, wlvif);
if (ret < 0)
return ret;
}
ret = wl12xx_start_dev(wl, wlvif);
if (ret < 0)
return ret;
}
}
}