diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-07-16 23:50:54 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-07-16 23:50:54 +0000 |
commit | f0ce8c9691f4d0b0b79f6be2132883e4328ec50f (patch) | |
tree | a2eefe8e32a16d4e96bc34ce5963c041e60978b0 /package/mac80211/patches/561-ath9k_antenna_mask_validate.patch | |
parent | 8d698ff98a76db80527533a11fbf2bee8fcc9197 (diff) |
mac80211: update to latest wireless-testing + some monitor mode fixes and some libertas driver fixes
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@32760 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches/561-ath9k_antenna_mask_validate.patch')
-rw-r--r-- | package/mac80211/patches/561-ath9k_antenna_mask_validate.patch | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/package/mac80211/patches/561-ath9k_antenna_mask_validate.patch b/package/mac80211/patches/561-ath9k_antenna_mask_validate.patch deleted file mode 100644 index 63fce77f1..000000000 --- a/package/mac80211/patches/561-ath9k_antenna_mask_validate.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- a/drivers/net/wireless/ath/ath9k/main.c -+++ b/drivers/net/wireless/ath/ath9k/main.c -@@ -1840,12 +1840,29 @@ static u32 fill_chainmask(u32 cap, u32 n - return filled; - } - -+static bool validate_antenna_mask(struct ath_hw *ah, u32 val) -+{ -+ switch (val & 0x7) { -+ case 0x1: -+ case 0x3: -+ case 0x7: -+ return true; -+ case 0x2: -+ return (ah->caps.rx_chainmask == 1); -+ default: -+ return false; -+ } -+} -+ - static int ath9k_set_antenna(struct ieee80211_hw *hw, u32 tx_ant, u32 rx_ant) - { - struct ath_softc *sc = hw->priv; - struct ath_hw *ah = sc->sc_ah; - -- if (!rx_ant || !tx_ant) -+ if (ah->caps.rx_chainmask != 1) -+ rx_ant |= tx_ant; -+ -+ if (!validate_antenna_mask(ah, rx_ant) || !tx_ant) - return -EINVAL; - - sc->ant_rx = rx_ant; |