diff options
Diffstat (limited to 'drivers/net/wireless/ath/ath5k')
-rw-r--r-- | drivers/net/wireless/ath/ath5k/base.c | 1 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath5k/mac80211-ops.c | 5 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath5k/phy.c | 2 |
3 files changed, 7 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath5k/base.c b/drivers/net/wireless/ath/ath5k/base.c index a0a202de1109..9fd6d9a9942e 100644 --- a/drivers/net/wireless/ath/ath5k/base.c +++ b/drivers/net/wireless/ath/ath5k/base.c | |||
@@ -2446,6 +2446,7 @@ ath5k_init_ah(struct ath5k_hw *ah, const struct ath_bus_ops *bus_ops) | |||
2446 | hw->flags = IEEE80211_HW_RX_INCLUDES_FCS | | 2446 | hw->flags = IEEE80211_HW_RX_INCLUDES_FCS | |
2447 | IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING | | 2447 | IEEE80211_HW_HOST_BROADCAST_PS_BUFFERING | |
2448 | IEEE80211_HW_SIGNAL_DBM | | 2448 | IEEE80211_HW_SIGNAL_DBM | |
2449 | IEEE80211_HW_MFP_CAPABLE | | ||
2449 | IEEE80211_HW_REPORTS_TX_ACK_STATUS; | 2450 | IEEE80211_HW_REPORTS_TX_ACK_STATUS; |
2450 | 2451 | ||
2451 | hw->wiphy->interface_modes = | 2452 | hw->wiphy->interface_modes = |
diff --git a/drivers/net/wireless/ath/ath5k/mac80211-ops.c b/drivers/net/wireless/ath/ath5k/mac80211-ops.c index df61a09adb6d..7a28538e6e05 100644 --- a/drivers/net/wireless/ath/ath5k/mac80211-ops.c +++ b/drivers/net/wireless/ath/ath5k/mac80211-ops.c | |||
@@ -489,6 +489,9 @@ ath5k_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd, | |||
489 | if (ath5k_modparam_nohwcrypt) | 489 | if (ath5k_modparam_nohwcrypt) |
490 | return -EOPNOTSUPP; | 490 | return -EOPNOTSUPP; |
491 | 491 | ||
492 | if (key->flags & IEEE80211_KEY_FLAG_RX_MGMT) | ||
493 | return -EOPNOTSUPP; | ||
494 | |||
492 | if (vif->type == NL80211_IFTYPE_ADHOC && | 495 | if (vif->type == NL80211_IFTYPE_ADHOC && |
493 | (key->cipher == WLAN_CIPHER_SUITE_TKIP || | 496 | (key->cipher == WLAN_CIPHER_SUITE_TKIP || |
494 | key->cipher == WLAN_CIPHER_SUITE_CCMP) && | 497 | key->cipher == WLAN_CIPHER_SUITE_CCMP) && |
@@ -523,7 +526,7 @@ ath5k_set_key(struct ieee80211_hw *hw, enum set_key_cmd cmd, | |||
523 | if (key->cipher == WLAN_CIPHER_SUITE_TKIP) | 526 | if (key->cipher == WLAN_CIPHER_SUITE_TKIP) |
524 | key->flags |= IEEE80211_KEY_FLAG_GENERATE_MMIC; | 527 | key->flags |= IEEE80211_KEY_FLAG_GENERATE_MMIC; |
525 | if (key->cipher == WLAN_CIPHER_SUITE_CCMP) | 528 | if (key->cipher == WLAN_CIPHER_SUITE_CCMP) |
526 | key->flags |= IEEE80211_KEY_FLAG_SW_MGMT; | 529 | key->flags |= IEEE80211_KEY_FLAG_SW_MGMT_TX; |
527 | ret = 0; | 530 | ret = 0; |
528 | } | 531 | } |
529 | break; | 532 | break; |
diff --git a/drivers/net/wireless/ath/ath5k/phy.c b/drivers/net/wireless/ath/ath5k/phy.c index 01c90ed58453..ab363f34b4df 100644 --- a/drivers/net/wireless/ath/ath5k/phy.c +++ b/drivers/net/wireless/ath/ath5k/phy.c | |||
@@ -1975,11 +1975,13 @@ ath5k_hw_set_spur_mitigation_filter(struct ath5k_hw *ah, | |||
1975 | spur_delta_phase = (spur_offset << 18) / 25; | 1975 | spur_delta_phase = (spur_offset << 18) / 25; |
1976 | spur_freq_sigma_delta = (spur_delta_phase >> 10); | 1976 | spur_freq_sigma_delta = (spur_delta_phase >> 10); |
1977 | symbol_width = AR5K_SPUR_SYMBOL_WIDTH_BASE_100Hz / 2; | 1977 | symbol_width = AR5K_SPUR_SYMBOL_WIDTH_BASE_100Hz / 2; |
1978 | break; | ||
1978 | case AR5K_BWMODE_5MHZ: | 1979 | case AR5K_BWMODE_5MHZ: |
1979 | /* Both sample_freq and chip_freq are 10MHz (?) */ | 1980 | /* Both sample_freq and chip_freq are 10MHz (?) */ |
1980 | spur_delta_phase = (spur_offset << 19) / 25; | 1981 | spur_delta_phase = (spur_offset << 19) / 25; |
1981 | spur_freq_sigma_delta = (spur_delta_phase >> 10); | 1982 | spur_freq_sigma_delta = (spur_delta_phase >> 10); |
1982 | symbol_width = AR5K_SPUR_SYMBOL_WIDTH_BASE_100Hz / 4; | 1983 | symbol_width = AR5K_SPUR_SYMBOL_WIDTH_BASE_100Hz / 4; |
1984 | break; | ||
1983 | default: | 1985 | default: |
1984 | if (channel->band == IEEE80211_BAND_5GHZ) { | 1986 | if (channel->band == IEEE80211_BAND_5GHZ) { |
1985 | /* Both sample_freq and chip_freq are 40MHz */ | 1987 | /* Both sample_freq and chip_freq are 40MHz */ |