ath5k: use ctl settings based on current regdomain
Update ath5k to use the ctl settings for tx power based on current regulatory domain. Signed-off-by: Bob Copeland <me@bobcopeland.com> Acked-by: Nick Kossifidis <mickflemm@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
57e6c56dbb
commit
6752ee90aa
1 changed files with 7 additions and 12 deletions
|
@ -2158,8 +2158,6 @@ ath5k_get_rate_pcal_data(struct ath5k_hw *ah,
|
|||
* Get the max edge power for this channel if
|
||||
* we have such data from EEPROM's Conformance Test
|
||||
* Limits (CTL), and limit max power if needed.
|
||||
*
|
||||
* FIXME: Only works for world regulatory domains
|
||||
*/
|
||||
static void
|
||||
ath5k_get_max_ctl_power(struct ath5k_hw *ah,
|
||||
|
@ -2175,26 +2173,23 @@ ath5k_get_max_ctl_power(struct ath5k_hw *ah,
|
|||
u8 ctl_idx = 0xFF;
|
||||
u32 target = channel->center_freq;
|
||||
|
||||
/* Find out a CTL for our mode that's not mapped
|
||||
* on a specific reg domain.
|
||||
*
|
||||
* TODO: Map our current reg domain to one of the 3 available
|
||||
* reg domain ids so that we can support more CTLs. */
|
||||
ctl_mode = ath_regd_get_band_ctl(&ah->ah_regulatory, channel->band);
|
||||
|
||||
switch (channel->hw_value & CHANNEL_MODES) {
|
||||
case CHANNEL_A:
|
||||
ctl_mode = AR5K_CTL_11A | AR5K_CTL_NO_REGDOMAIN;
|
||||
ctl_mode |= AR5K_CTL_11A;
|
||||
break;
|
||||
case CHANNEL_G:
|
||||
ctl_mode = AR5K_CTL_11G | AR5K_CTL_NO_REGDOMAIN;
|
||||
ctl_mode |= AR5K_CTL_11G;
|
||||
break;
|
||||
case CHANNEL_B:
|
||||
ctl_mode = AR5K_CTL_11B | AR5K_CTL_NO_REGDOMAIN;
|
||||
ctl_mode |= AR5K_CTL_11B;
|
||||
break;
|
||||
case CHANNEL_T:
|
||||
ctl_mode = AR5K_CTL_TURBO | AR5K_CTL_NO_REGDOMAIN;
|
||||
ctl_mode |= AR5K_CTL_TURBO;
|
||||
break;
|
||||
case CHANNEL_TG:
|
||||
ctl_mode = AR5K_CTL_TURBOG | AR5K_CTL_NO_REGDOMAIN;
|
||||
ctl_mode |= AR5K_CTL_TURBOG;
|
||||
break;
|
||||
case CHANNEL_XR:
|
||||
/* Fall through */
|
||||
|
|
Loading…
Reference in a new issue