diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index c4b7cc0..af606f7 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -600,10 +600,10 @@
 		atomic_dec(&sdata->bss->num_sta_ps);
 	sta->flags &= ~(WLAN_STA_PS | WLAN_STA_TIM | WLAN_STA_PSPOLL);
 	if (!skb_queue_empty(&sta->ps_tx_buf)) {
-		if (local->ops->set_tim)
-			local->ops->set_tim(local_to_hw(local), sta->aid, 0);
 		if (sdata->bss)
 			bss_tim_clear(local, sdata->bss, sta->aid);
+		if (local->ops->set_tim)
+			local->ops->set_tim(local_to_hw(local), sta->aid, 0);
 	}
 #ifdef CONFIG_MAC80211_VERBOSE_PS_DEBUG
 	printk(KERN_DEBUG "%s: STA %s aid %d exits power save mode\n",
@@ -947,11 +947,11 @@
 		dev_queue_xmit(skb);
 
 		if (no_pending_pkts) {
+			if (rx->sdata->bss)
+				bss_tim_clear(rx->local, rx->sdata->bss, rx->sta->aid);
 			if (rx->local->ops->set_tim)
 				rx->local->ops->set_tim(local_to_hw(rx->local),
 						       rx->sta->aid, 0);
-			if (rx->sdata->bss)
-				bss_tim_clear(rx->local, rx->sdata->bss, rx->sta->aid);
 		}
 #ifdef CONFIG_MAC80211_VERBOSE_PS_DEBUG
 	} else if (!rx->u.rx.sent_ps_buffered) {
diff --git a/net/mac80211/sta_info.c b/net/mac80211/sta_info.c
index 746bbde..cbe0097 100644
--- a/net/mac80211/sta_info.c
+++ b/net/mac80211/sta_info.c
@@ -396,11 +396,11 @@
 
 	sdata = IEEE80211_DEV_TO_SUB_IF(sta->dev);
 
+	if (sdata->bss)
+		__bss_tim_clear(sdata->bss, sta->aid);
 	if (sdata->local->ops->set_tim)
 		sdata->local->ops->set_tim(local_to_hw(sdata->local),
 					  sta->aid, 0);
-	if (sdata->bss)
-		__bss_tim_clear(sdata->bss, sta->aid);
 }
 
 
diff --git a/net/mac80211/tx.c b/net/mac80211/tx.c
index 4f951e78..82474a8 100644
--- a/net/mac80211/tx.c
+++ b/net/mac80211/tx.c
@@ -419,11 +419,11 @@
 			tx->local->total_ps_buffered++;
 		/* Queue frame to be sent after STA sends an PS Poll frame */
 		if (skb_queue_empty(&sta->ps_tx_buf)) {
+			if (tx->sdata->bss)
+				bss_tim_set(tx->local, tx->sdata->bss, sta->aid);
 			if (tx->local->ops->set_tim)
 				tx->local->ops->set_tim(local_to_hw(tx->local),
 						       sta->aid, 1);
-			if (tx->sdata->bss)
-				bss_tim_set(tx->local, tx->sdata->bss, sta->aid);
 		}
 		pkt_data = (struct ieee80211_tx_packet_data *)tx->skb->cb;
 		pkt_data->jiffies = jiffies;
