diff options
author | Eliad Peller <eliad@wizery.com> | 2012-03-04 03:55:51 -0500 |
---|---|---|
committer | Luciano Coelho <coelho@ti.com> | 2012-03-05 08:45:25 -0500 |
commit | 121af04995d29e3287b849a768789c668d39dce3 (patch) | |
tree | 7a27671351ac4f52d8623213f561f80489d22856 /drivers/net/wireless/wl12xx | |
parent | 249e9698899643a799951a6e772facae346f0941 (diff) |
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>
Diffstat (limited to 'drivers/net/wireless/wl12xx')
-rw-r--r-- | drivers/net/wireless/wl12xx/main.c | 41 |
1 files changed, 14 insertions, 27 deletions
diff --git a/drivers/net/wireless/wl12xx/main.c b/drivers/net/wireless/wl12xx/main.c index 65f91d7bad31..85bbe7f4f517 100644 --- a/drivers/net/wireless/wl12xx/main.c +++ b/drivers/net/wireless/wl12xx/main.c | |||
@@ -2515,35 +2515,22 @@ static int wl12xx_config_vif(struct wl1271 *wl, struct wl12xx_vif *wlvif, | |||
2515 | wl1271_warning("rate policy for channel " | 2515 | wl1271_warning("rate policy for channel " |
2516 | "failed %d", ret); | 2516 | "failed %d", ret); |
2517 | 2517 | ||
2518 | if (test_bit(WLVIF_FLAG_STA_ASSOCIATED, | 2518 | /* |
2519 | &wlvif->flags)) { | 2519 | * change the ROC channel. do it only if we are |
2520 | if (wl12xx_dev_role_started(wlvif)) { | 2520 | * not idle. otherwise, CROC will be called |
2521 | /* roaming */ | 2521 | * anyway. |
2522 | ret = wl12xx_croc(wl, | 2522 | */ |
2523 | wlvif->dev_role_id); | 2523 | if (!test_bit(WLVIF_FLAG_STA_ASSOCIATED, |
2524 | if (ret < 0) | 2524 | &wlvif->flags) && |
2525 | return ret; | 2525 | wl12xx_dev_role_started(wlvif) && |
2526 | } | 2526 | !(conf->flags & IEEE80211_CONF_IDLE)) { |
2527 | ret = wl1271_join(wl, wlvif, false); | 2527 | ret = wl12xx_stop_dev(wl, wlvif); |
2528 | if (ret < 0) | 2528 | if (ret < 0) |
2529 | wl1271_warning("cmd join on channel " | 2529 | return ret; |
2530 | "failed %d", ret); | ||
2531 | } else { | ||
2532 | /* | ||
2533 | * change the ROC channel. do it only if we are | ||
2534 | * not idle. otherwise, CROC will be called | ||
2535 | * anyway. | ||
2536 | */ | ||
2537 | if (wl12xx_dev_role_started(wlvif) && | ||
2538 | !(conf->flags & IEEE80211_CONF_IDLE)) { | ||
2539 | ret = wl12xx_stop_dev(wl, wlvif); | ||
2540 | if (ret < 0) | ||
2541 | return ret; | ||
2542 | 2530 | ||
2543 | ret = wl12xx_start_dev(wl, wlvif); | 2531 | ret = wl12xx_start_dev(wl, wlvif); |
2544 | if (ret < 0) | 2532 | if (ret < 0) |
2545 | return ret; | 2533 | return ret; |
2546 | } | ||
2547 | } | 2534 | } |
2548 | } | 2535 | } |
2549 | } | 2536 | } |