aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/wl12xx
diff options
context:
space:
mode:
authorEliad Peller <eliad@wizery.com>2011-10-10 04:13:07 -0400
committerLuciano Coelho <coelho@ti.com>2011-10-11 08:12:12 -0400
commit836d6600ea0e785fcf8159a3c4b7350276bcd49a (patch)
tree7fe5faad20c1a9707b7ae46b67be7fe9336149f9 /drivers/net/wireless/wl12xx
parent10c8cd01e329b2973eddddafe67ae499eef83b19 (diff)
wl12xx: make WL1271_FLAG_PSPOLL_FAILURE flag per-vif
This flag should be set per-vif, rather than globally. 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/event.c4
-rw-r--r--drivers/net/wireless/wl12xx/main.c2
-rw-r--r--drivers/net/wireless/wl12xx/wl12xx.h2
3 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/wireless/wl12xx/event.c b/drivers/net/wireless/wl12xx/event.c
index d8b183bba52b..1f60a1f6335e 100644
--- a/drivers/net/wireless/wl12xx/event.c
+++ b/drivers/net/wireless/wl12xx/event.c
@@ -49,7 +49,7 @@ void wl1271_pspoll_work(struct work_struct *work)
49 if (unlikely(wl->state == WL1271_STATE_OFF)) 49 if (unlikely(wl->state == WL1271_STATE_OFF))
50 goto out; 50 goto out;
51 51
52 if (!test_and_clear_bit(WL1271_FLAG_PSPOLL_FAILURE, &wl->flags)) 52 if (!test_and_clear_bit(WLVIF_FLAG_PSPOLL_FAILURE, &wlvif->flags))
53 goto out; 53 goto out;
54 54
55 if (!test_bit(WLVIF_FLAG_STA_ASSOCIATED, &wlvif->flags)) 55 if (!test_bit(WLVIF_FLAG_STA_ASSOCIATED, &wlvif->flags))
@@ -89,7 +89,7 @@ static void wl1271_event_pspoll_delivery_fail(struct wl1271 *wl,
89 wlvif->basic_rate, true); 89 wlvif->basic_rate, true);
90 if (ret < 0) 90 if (ret < 0)
91 return; 91 return;
92 set_bit(WL1271_FLAG_PSPOLL_FAILURE, &wl->flags); 92 set_bit(WLVIF_FLAG_PSPOLL_FAILURE, &wlvif->flags);
93 ieee80211_queue_delayed_work(wl->hw, &wlvif->pspoll_work, 93 ieee80211_queue_delayed_work(wl->hw, &wlvif->pspoll_work,
94 msecs_to_jiffies(delay)); 94 msecs_to_jiffies(delay));
95 } 95 }
diff --git a/drivers/net/wireless/wl12xx/main.c b/drivers/net/wireless/wl12xx/main.c
index fb5951cb69e1..73973b4fc57f 100644
--- a/drivers/net/wireless/wl12xx/main.c
+++ b/drivers/net/wireless/wl12xx/main.c
@@ -2524,7 +2524,7 @@ static int wl1271_op_config(struct ieee80211_hw *hw, u32 changed)
2524 * incorrectly changed after the pspoll failure active window. 2524 * incorrectly changed after the pspoll failure active window.
2525 */ 2525 */
2526 if (changed & IEEE80211_CONF_CHANGE_PS) 2526 if (changed & IEEE80211_CONF_CHANGE_PS)
2527 clear_bit(WL1271_FLAG_PSPOLL_FAILURE, &wl->flags); 2527 clear_bit(WLVIF_FLAG_PSPOLL_FAILURE, &wlvif->flags);
2528 2528
2529 if (conf->flags & IEEE80211_CONF_PS && 2529 if (conf->flags & IEEE80211_CONF_PS &&
2530 !test_bit(WLVIF_FLAG_PSM_REQUESTED, &wlvif->flags)) { 2530 !test_bit(WLVIF_FLAG_PSM_REQUESTED, &wlvif->flags)) {
diff --git a/drivers/net/wireless/wl12xx/wl12xx.h b/drivers/net/wireless/wl12xx/wl12xx.h
index 740a9b19cea1..bf410f8d01cb 100644
--- a/drivers/net/wireless/wl12xx/wl12xx.h
+++ b/drivers/net/wireless/wl12xx/wl12xx.h
@@ -320,7 +320,6 @@ enum wl12xx_flags {
320 WL1271_FLAG_ELP_REQUESTED, 320 WL1271_FLAG_ELP_REQUESTED,
321 WL1271_FLAG_IRQ_RUNNING, 321 WL1271_FLAG_IRQ_RUNNING,
322 WL1271_FLAG_IDLE, 322 WL1271_FLAG_IDLE,
323 WL1271_FLAG_PSPOLL_FAILURE,
324 WL1271_FLAG_FW_TX_BUSY, 323 WL1271_FLAG_FW_TX_BUSY,
325 WL1271_FLAG_DUMMY_PACKET_PENDING, 324 WL1271_FLAG_DUMMY_PACKET_PENDING,
326 WL1271_FLAG_SUSPENDED, 325 WL1271_FLAG_SUSPENDED,
@@ -339,6 +338,7 @@ enum wl12xx_vif_flags {
339 WLVIF_FLAG_PSM_REQUESTED, 338 WLVIF_FLAG_PSM_REQUESTED,
340 WLVIF_FLAG_STA_STATE_SENT, 339 WLVIF_FLAG_STA_STATE_SENT,
341 WLVIF_FLAG_RX_STREAMING_STARTED, 340 WLVIF_FLAG_RX_STREAMING_STARTED,
341 WLVIF_FLAG_PSPOLL_FAILURE,
342}; 342};
343 343
344struct wl1271_link { 344struct wl1271_link {