From 50b52089f0a9b5efdaea55d9fa75e91cb9cd2e35 Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Wed, 27 Jul 2011 15:01:05 +0200 Subject: [PATCH] --- yaml --- r: 265410 b: refs/heads/master c: 9c204b46c7af93e334114bea1f5eeaa6fea9ba07 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/net/wireless/ath/ath9k/hw.c | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index c0ebf1997ffc..c27589a537bb 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 071bfefd6849e9acc12ca26f4f897cd907e81d1b +refs/heads/master: 9c204b46c7af93e334114bea1f5eeaa6fea9ba07 diff --git a/trunk/drivers/net/wireless/ath/ath9k/hw.c b/trunk/drivers/net/wireless/ath/ath9k/hw.c index 8dcefe74f4c3..cb0b6aab7115 100644 --- a/trunk/drivers/net/wireless/ath/ath9k/hw.c +++ b/trunk/drivers/net/wireless/ath/ath9k/hw.c @@ -2439,15 +2439,18 @@ void ath9k_hw_set_txpowerlimit(struct ath_hw *ah, u32 limit, bool test) struct ath_regulatory *regulatory = ath9k_hw_regulatory(ah); struct ath9k_channel *chan = ah->curchan; struct ieee80211_channel *channel = chan->chan; + int reg_pwr = min_t(int, MAX_RATE_POWER, regulatory->power_limit); + int chan_pwr = channel->max_power * 2; + + if (test) + reg_pwr = chan_pwr = MAX_RATE_POWER; regulatory->power_limit = min(limit, (u32) MAX_RATE_POWER); ah->eep_ops->set_txpower(ah, chan, ath9k_regd_get_ctl(regulatory, chan), channel->max_antenna_gain * 2, - channel->max_power * 2, - min((u32) MAX_RATE_POWER, - (u32) regulatory->power_limit), test); + chan_pwr, reg_pwr, test); } EXPORT_SYMBOL(ath9k_hw_set_txpowerlimit);