diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index aca22b00b6a327873ee5ffc5a443ae541fdab5ed..07e7e41816be31cdd210f0dca41219525624c22b 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -721,7 +721,7 @@ void ieee80211_dynamic_ps_timer(unsigned long data)
 {
 	struct ieee80211_local *local = (void *) data;
 
-	if (local->quiescing)
+	if (local->quiescing || local->suspended)
 		return;
 
 	queue_work(local->hw.workqueue, &local->dynamic_ps_enable_work);