ath9k: fix switching channel bandwidth from 5/10 back to 20mhz (backport of r27827)
authorFelix Fietkau <nbd@openwrt.org>
Fri, 29 Jul 2011 12:26:16 +0000 (12:26 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Fri, 29 Jul 2011 12:26:16 +0000 (12:26 +0000)
SVN-Revision: 27828

package/mac80211/patches/540-ath9k_channelbw_debugfs.patch
package/mac80211/patches/595-ath9k_cur_txpower.patch

index 9c2c014a5e488f8ad632c8ad3d23c8e18dc6b2f5..28251eeef196292b9316caeaae32280060709446 100644 (file)
@@ -30,7 +30,7 @@
        int r;
  
        if (sc->sc_flags & SC_OP_INVALID)
-@@ -268,6 +269,21 @@ static int ath_set_channel(struct ath_so
+@@ -268,6 +269,24 @@ static int ath_set_channel(struct ath_so
        if (!stopped || !(sc->sc_flags & SC_OP_OFFCHANNEL))
                fastcc = false;
  
@@ -44,6 +44,9 @@
 +              hchan->channelFlags &= ~CHANNEL_QUARTER;
 +              hchan->channelFlags |= CHANNEL_HALF;
 +              break;
++      default:
++              hchan->channelFlags &= ~(CHANNEL_HALF | CHANNEL_QUARTER);
++              break;
 +      }
 +
 +      if (oldflags != hchan->channelFlags)
index 29ed81aba3e83127b4d2a10e9076964a2b995362..7bc92f13eb25b174bb7102ada0fce8fcbf2701d1 100644 (file)
@@ -1,6 +1,6 @@
 --- a/drivers/net/wireless/ath/ath9k/main.c
 +++ b/drivers/net/wireless/ath/ath9k/main.c
-@@ -1724,6 +1724,8 @@ static int ath9k_config(struct ieee80211
+@@ -1727,6 +1727,8 @@ static int ath9k_config(struct ieee80211
                        return -EINVAL;
                }
  
@@ -9,7 +9,7 @@
                /*
                 * The most recent snapshot of channel->noisefloor for the old
                 * channel is only available after the hardware reset. Copy it to
-@@ -1741,6 +1743,7 @@ static int ath9k_config(struct ieee80211
+@@ -1744,6 +1746,7 @@ static int ath9k_config(struct ieee80211
                ath9k_cmn_update_txpow(ah, sc->curtxpow,
                                       sc->config.txpowlimit, &sc->curtxpow);
                ath9k_ps_restore(sc);