iwlwifi: mvm: set SKIP_OVER_DTIM flag only if needed
authorEliad Peller <[email protected]>
Mon, 12 May 2014 11:22:20 +0000 (14:22 +0300)
committerEmmanuel Grumbach <[email protected]>
Tue, 13 May 2014 10:54:19 +0000 (13:54 +0300)
setting SKIP_OVER_DTIM when skip_dtim_periods is 0
causes a ucode assert. set the flag only if needed.

Signed-off-by: Eliad Peller <[email protected]>
Reviewed-by: Johannes Berg <[email protected]>
Signed-off-by: Emmanuel Grumbach <[email protected]>
drivers/net/wireless/iwlwifi/mvm/power.c

index fc178d01a8cf028c24c0416119ca87f449b0ca3b..2e99dddc1e00b1ace6bc1cb2a1fbfdff94d898b8 100644 (file)
@@ -902,9 +902,10 @@ int iwl_mvm_update_d0i3_power_mode(struct iwl_mvm *mvm,
                if (WARN_ON(!dtimper_msec))
                        return 0;
 
-               cmd.flags |=
-                       cpu_to_le16(POWER_FLAGS_SKIP_OVER_DTIM_MSK);
                cmd.skip_dtim_periods = 300 / dtimper_msec;
+               if (cmd.skip_dtim_periods)
+                       cmd.flags |=
+                               cpu_to_le16(POWER_FLAGS_SKIP_OVER_DTIM_MSK);
        }
        iwl_mvm_power_log(mvm, &cmd);
 #ifdef CONFIG_IWLWIFI_DEBUGFS