Browse Source

iwlwifi: mvm: use CTS to Self if firmware allows it

Newer firmware fixed a bug that prevented to use CTS to
self. Firmwares with API greater than 8 have this bug
fixed. Enable the feature for these firmwares only.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Emmanuel Grumbach 12 years ago
parent
commit
2e0cc86535
1 changed files with 5 additions and 1 deletions
  1. 5 1
      drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c

+ 5 - 1
drivers/net/wireless/iwlwifi/mvm/mac-ctxt.c

@@ -559,8 +559,12 @@ static void iwl_mvm_mac_ctxt_cmd_common(struct iwl_mvm *mvm,
 		cmd->qos_flags |= cpu_to_le32(MAC_QOS_FLG_UPDATE_EDCA);
 
 	/* Don't use cts to self as the fw doesn't support it currently. */
-	if (vif->bss_conf.use_cts_prot)
+	if (vif->bss_conf.use_cts_prot) {
 		cmd->protection_flags |= cpu_to_le32(MAC_PROT_FLG_TGG_PROTECT);
+		if (IWL_UCODE_API(mvm->fw->ucode_ver) >= 8)
+			cmd->protection_flags |=
+				cpu_to_le32(MAC_PROT_FLG_SELF_CTS_EN);
+	}
 
 	/*
 	 * I think that we should enable these 2 flags regardless the HT PROT