From 8f942b9b8165eb4079d38979ec37a2bf3f983761 Mon Sep 17 00:00:00 2001 From: Gabor Juhos Date: Sat, 14 Apr 2012 22:01:59 +0200 Subject: [PATCH] ath9k: simplify ath9k_hw_get_scaled_power function Signed-off-by: Gabor Juhos Signed-off-by: John W. Linville --- drivers/net/wireless/ath/ath9k/eeprom.c | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/drivers/net/wireless/ath/ath9k/eeprom.c b/drivers/net/wireless/ath/ath9k/eeprom.c index 61bad99e76d..6a64dec486d 100644 --- a/drivers/net/wireless/ath/ath9k/eeprom.c +++ b/drivers/net/wireless/ath/ath9k/eeprom.c @@ -293,9 +293,7 @@ u16 ath9k_hw_get_max_edge_power(u16 freq, struct cal_ctl_edges *pRdEdgesPower, u16 ath9k_hw_get_scaled_power(struct ath_hw *ah, u16 power_limit, u8 antenna_reduction) { - u16 scaled_power; - - scaled_power = power_limit - antenna_reduction; + u16 reduction = antenna_reduction; /* * Reduce scaled Power by number of chains active @@ -305,22 +303,19 @@ u16 ath9k_hw_get_scaled_power(struct ath_hw *ah, u16 power_limit, case 1: break; case 2: - if (scaled_power > REDUCE_SCALED_POWER_BY_TWO_CHAIN) - scaled_power -= REDUCE_SCALED_POWER_BY_TWO_CHAIN; - else - scaled_power = 0; + reduction += REDUCE_SCALED_POWER_BY_TWO_CHAIN; break; case 3: - if (scaled_power > REDUCE_SCALED_POWER_BY_THREE_CHAIN) - scaled_power -= REDUCE_SCALED_POWER_BY_THREE_CHAIN; - else - scaled_power = 0; + reduction += REDUCE_SCALED_POWER_BY_THREE_CHAIN; break; } - scaled_power = max((u16)0, scaled_power); + if (power_limit > reduction) + power_limit -= reduction; + else + power_limit = 0; - return scaled_power; + return power_limit; } void ath9k_hw_update_regulatory_maxpower(struct ath_hw *ah) -- 2.41.0