|
@@ -288,40 +288,6 @@ void iwlcore_free_geos(struct iwl_priv *priv)
|
|
|
}
|
|
|
EXPORT_SYMBOL(iwlcore_free_geos);
|
|
|
|
|
|
-/*
|
|
|
- * iwlcore_tx_cmd_protection: Set rts/cts. 3945 and 4965 only share this
|
|
|
- * function.
|
|
|
- */
|
|
|
-void iwlcore_tx_cmd_protection(struct iwl_priv *priv,
|
|
|
- struct ieee80211_tx_info *info,
|
|
|
- __le16 fc, __le32 *tx_flags)
|
|
|
-{
|
|
|
- if (info->control.rates[0].flags & IEEE80211_TX_RC_USE_RTS_CTS) {
|
|
|
- *tx_flags |= TX_CMD_FLG_RTS_MSK;
|
|
|
- *tx_flags &= ~TX_CMD_FLG_CTS_MSK;
|
|
|
- *tx_flags |= TX_CMD_FLG_FULL_TXOP_PROT_MSK;
|
|
|
-
|
|
|
- if (!ieee80211_is_mgmt(fc))
|
|
|
- return;
|
|
|
-
|
|
|
- switch (fc & cpu_to_le16(IEEE80211_FCTL_STYPE)) {
|
|
|
- case cpu_to_le16(IEEE80211_STYPE_AUTH):
|
|
|
- case cpu_to_le16(IEEE80211_STYPE_DEAUTH):
|
|
|
- case cpu_to_le16(IEEE80211_STYPE_ASSOC_REQ):
|
|
|
- case cpu_to_le16(IEEE80211_STYPE_REASSOC_REQ):
|
|
|
- *tx_flags &= ~TX_CMD_FLG_RTS_MSK;
|
|
|
- *tx_flags |= TX_CMD_FLG_CTS_MSK;
|
|
|
- break;
|
|
|
- }
|
|
|
- } else if (info->control.rates[0].flags & IEEE80211_TX_RC_USE_CTS_PROTECT) {
|
|
|
- *tx_flags &= ~TX_CMD_FLG_RTS_MSK;
|
|
|
- *tx_flags |= TX_CMD_FLG_CTS_MSK;
|
|
|
- *tx_flags |= TX_CMD_FLG_FULL_TXOP_PROT_MSK;
|
|
|
- }
|
|
|
-}
|
|
|
-EXPORT_SYMBOL(iwlcore_tx_cmd_protection);
|
|
|
-
|
|
|
-
|
|
|
static bool iwl_is_channel_extension(struct iwl_priv *priv,
|
|
|
enum ieee80211_band band,
|
|
|
u16 channel, u8 extension_chan_offset)
|