ath9k: simplify ath9k_hw_get_scaled_power function
Signed-off-by: Gabor Juhos <juhosg@openwrt.org> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
ea6f792b2b
commit
8f942b9b81
1 changed files with 8 additions and 13 deletions
|
@ -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,
|
u16 ath9k_hw_get_scaled_power(struct ath_hw *ah, u16 power_limit,
|
||||||
u8 antenna_reduction)
|
u8 antenna_reduction)
|
||||||
{
|
{
|
||||||
u16 scaled_power;
|
u16 reduction = antenna_reduction;
|
||||||
|
|
||||||
scaled_power = power_limit - antenna_reduction;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Reduce scaled Power by number of chains active
|
* 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:
|
case 1:
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
if (scaled_power > REDUCE_SCALED_POWER_BY_TWO_CHAIN)
|
reduction += REDUCE_SCALED_POWER_BY_TWO_CHAIN;
|
||||||
scaled_power -= REDUCE_SCALED_POWER_BY_TWO_CHAIN;
|
|
||||||
else
|
|
||||||
scaled_power = 0;
|
|
||||||
break;
|
break;
|
||||||
case 3:
|
case 3:
|
||||||
if (scaled_power > REDUCE_SCALED_POWER_BY_THREE_CHAIN)
|
reduction += REDUCE_SCALED_POWER_BY_THREE_CHAIN;
|
||||||
scaled_power -= REDUCE_SCALED_POWER_BY_THREE_CHAIN;
|
|
||||||
else
|
|
||||||
scaled_power = 0;
|
|
||||||
break;
|
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)
|
void ath9k_hw_update_regulatory_maxpower(struct ath_hw *ah)
|
||||||
|
|
Loading…
Reference in a new issue