wl12xx: move ps_compl into wlvif
authorEliad Peller <eliad@wizery.com>
Wed, 5 Oct 2011 09:56:01 +0000 (11:56 +0200)
committerLuciano Coelho <coelho@ti.com>
Fri, 7 Oct 2011 05:32:51 +0000 (08:32 +0300)
move ps_compl into the per-interface data, rather than
being global.

Signed-off-by: Eliad Peller <eliad@wizery.com>
Signed-off-by: Luciano Coelho <coelho@ti.com>
drivers/net/wireless/wl12xx/event.c
drivers/net/wireless/wl12xx/main.c
drivers/net/wireless/wl12xx/wl12xx.h

index 4e3474c..7a9913a 100644 (file)
@@ -149,9 +149,9 @@ static int wl1271_event_ps_report(struct wl1271 *wl,
                        /* enable beacon early termination */
                        ret = wl1271_acx_bet_enable(wl, wlvif, true);
 
-               if (wl->ps_compl) {
-                       complete(wl->ps_compl);
-                       wl->ps_compl = NULL;
+               if (wlvif->ps_compl) {
+                       complete(wlvif->ps_compl);
+                       wlvif->ps_compl = NULL;
                }
                break;
        default:
index 76f4663..cb23553 100644 (file)
@@ -1636,7 +1636,7 @@ static int wl1271_configure_suspend_sta(struct wl1271 *wl,
        if (!test_bit(WL1271_FLAG_PSM, &wl->flags)) {
                DECLARE_COMPLETION_ONSTACK(compl);
 
-               wl->ps_compl = &compl;
+               wlvif->ps_compl = &compl;
                ret = wl1271_ps_set_mode(wl, wlvif, STATION_POWER_SAVE_MODE,
                                   wlvif->basic_rate, true);
                if (ret < 0)
index d6d5a7b..7166a79 100644 (file)
@@ -509,7 +509,6 @@ struct wl1271 {
        struct timer_list rx_streaming_timer;
 
        struct completion *elp_compl;
-       struct completion *ps_compl;
        struct delayed_work elp_work;
 
        /* counter for ps-poll delivery failures */
@@ -651,6 +650,7 @@ struct wl12xx_vif {
        /* Session counter for the chipset */
        int session_counter;
 
+       struct completion *ps_compl;
        struct delayed_work pspoll_work;
 };