diff options
-rw-r--r-- | drivers/net/wireless/ath/ath5k/ath5k.h | 3 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath5k/eeprom.c | 6 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath5k/eeprom.h | 3 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath5k/phy.c | 20 | ||||
-rw-r--r-- | drivers/net/wireless/ath/ath5k/reset.c | 4 |
5 files changed, 10 insertions, 26 deletions
diff --git a/drivers/net/wireless/ath/ath5k/ath5k.h b/drivers/net/wireless/ath/ath5k/ath5k.h index 3150def17193..2d691b8b95b9 100644 --- a/drivers/net/wireless/ath/ath5k/ath5k.h +++ b/drivers/net/wireless/ath/ath5k/ath5k.h | |||
@@ -1523,7 +1523,8 @@ int ath5k_hw_dma_stop(struct ath5k_hw *ah); | |||
1523 | /* EEPROM access functions */ | 1523 | /* EEPROM access functions */ |
1524 | int ath5k_eeprom_init(struct ath5k_hw *ah); | 1524 | int ath5k_eeprom_init(struct ath5k_hw *ah); |
1525 | void ath5k_eeprom_detach(struct ath5k_hw *ah); | 1525 | void ath5k_eeprom_detach(struct ath5k_hw *ah); |
1526 | 1526 | int ath5k_eeprom_mode_from_channel(struct ath5k_hw *ah, | |
1527 | struct ieee80211_channel *channel); | ||
1527 | 1528 | ||
1528 | /* Protocol Control Unit Functions */ | 1529 | /* Protocol Control Unit Functions */ |
1529 | /* Helpers */ | 1530 | /* Helpers */ |
diff --git a/drivers/net/wireless/ath/ath5k/eeprom.c b/drivers/net/wireless/ath/ath5k/eeprom.c index b7e0258887e7..94d34ee02265 100644 --- a/drivers/net/wireless/ath/ath5k/eeprom.c +++ b/drivers/net/wireless/ath/ath5k/eeprom.c | |||
@@ -1779,7 +1779,8 @@ ath5k_eeprom_detach(struct ath5k_hw *ah) | |||
1779 | } | 1779 | } |
1780 | 1780 | ||
1781 | int | 1781 | int |
1782 | ath5k_eeprom_mode_from_channel(struct ieee80211_channel *channel) | 1782 | ath5k_eeprom_mode_from_channel(struct ath5k_hw *ah, |
1783 | struct ieee80211_channel *channel) | ||
1783 | { | 1784 | { |
1784 | switch (channel->hw_value) { | 1785 | switch (channel->hw_value) { |
1785 | case AR5K_MODE_11A: | 1786 | case AR5K_MODE_11A: |
@@ -1789,6 +1790,7 @@ ath5k_eeprom_mode_from_channel(struct ieee80211_channel *channel) | |||
1789 | case AR5K_MODE_11B: | 1790 | case AR5K_MODE_11B: |
1790 | return AR5K_EEPROM_MODE_11B; | 1791 | return AR5K_EEPROM_MODE_11B; |
1791 | default: | 1792 | default: |
1792 | return -1; | 1793 | ATH5K_WARN(ah, "channel is not A/B/G!"); |
1794 | return AR5K_EEPROM_MODE_11A; | ||
1793 | } | 1795 | } |
1794 | } | 1796 | } |
diff --git a/drivers/net/wireless/ath/ath5k/eeprom.h b/drivers/net/wireless/ath/ath5k/eeprom.h index 94a9bbea6874..693296ee9693 100644 --- a/drivers/net/wireless/ath/ath5k/eeprom.h +++ b/drivers/net/wireless/ath/ath5k/eeprom.h | |||
@@ -493,6 +493,3 @@ struct ath5k_eeprom_info { | |||
493 | /* Antenna raw switch tables */ | 493 | /* Antenna raw switch tables */ |
494 | u32 ee_antenna[AR5K_EEPROM_N_MODES][AR5K_ANT_MAX]; | 494 | u32 ee_antenna[AR5K_EEPROM_N_MODES][AR5K_ANT_MAX]; |
495 | }; | 495 | }; |
496 | |||
497 | int | ||
498 | ath5k_eeprom_mode_from_channel(struct ieee80211_channel *channel); | ||
diff --git a/drivers/net/wireless/ath/ath5k/phy.c b/drivers/net/wireless/ath/ath5k/phy.c index a78afa98c650..d6bc7cb61bfb 100644 --- a/drivers/net/wireless/ath/ath5k/phy.c +++ b/drivers/net/wireless/ath/ath5k/phy.c | |||
@@ -1612,11 +1612,7 @@ ath5k_hw_update_noise_floor(struct ath5k_hw *ah) | |||
1612 | 1612 | ||
1613 | ah->ah_cal_mask |= AR5K_CALIBRATION_NF; | 1613 | ah->ah_cal_mask |= AR5K_CALIBRATION_NF; |
1614 | 1614 | ||
1615 | ee_mode = ath5k_eeprom_mode_from_channel(ah->ah_current_channel); | 1615 | ee_mode = ath5k_eeprom_mode_from_channel(ah, ah->ah_current_channel); |
1616 | if (WARN_ON(ee_mode < 0)) { | ||
1617 | ah->ah_cal_mask &= ~AR5K_CALIBRATION_NF; | ||
1618 | return; | ||
1619 | } | ||
1620 | 1616 | ||
1621 | /* completed NF calibration, test threshold */ | 1617 | /* completed NF calibration, test threshold */ |
1622 | nf = ath5k_hw_read_measured_noise_floor(ah); | 1618 | nf = ath5k_hw_read_measured_noise_floor(ah); |
@@ -2317,12 +2313,7 @@ ath5k_hw_set_antenna_mode(struct ath5k_hw *ah, u8 ant_mode) | |||
2317 | 2313 | ||
2318 | def_ant = ah->ah_def_ant; | 2314 | def_ant = ah->ah_def_ant; |
2319 | 2315 | ||
2320 | ee_mode = ath5k_eeprom_mode_from_channel(channel); | 2316 | ee_mode = ath5k_eeprom_mode_from_channel(ah, channel); |
2321 | if (ee_mode < 0) { | ||
2322 | ATH5K_ERR(ah, | ||
2323 | "invalid channel: %d\n", channel->center_freq); | ||
2324 | return; | ||
2325 | } | ||
2326 | 2317 | ||
2327 | switch (ant_mode) { | 2318 | switch (ant_mode) { |
2328 | case AR5K_ANTMODE_DEFAULT: | 2319 | case AR5K_ANTMODE_DEFAULT: |
@@ -3622,12 +3613,7 @@ ath5k_hw_txpower(struct ath5k_hw *ah, struct ieee80211_channel *channel, | |||
3622 | return -EINVAL; | 3613 | return -EINVAL; |
3623 | } | 3614 | } |
3624 | 3615 | ||
3625 | ee_mode = ath5k_eeprom_mode_from_channel(channel); | 3616 | ee_mode = ath5k_eeprom_mode_from_channel(ah, channel); |
3626 | if (ee_mode < 0) { | ||
3627 | ATH5K_ERR(ah, | ||
3628 | "invalid channel: %d\n", channel->center_freq); | ||
3629 | return -EINVAL; | ||
3630 | } | ||
3631 | 3617 | ||
3632 | /* Initialize TX power table */ | 3618 | /* Initialize TX power table */ |
3633 | switch (ah->ah_radio) { | 3619 | switch (ah->ah_radio) { |
diff --git a/drivers/net/wireless/ath/ath5k/reset.c b/drivers/net/wireless/ath/ath5k/reset.c index e2d8b2cf19eb..a3399c4f13a9 100644 --- a/drivers/net/wireless/ath/ath5k/reset.c +++ b/drivers/net/wireless/ath/ath5k/reset.c | |||
@@ -984,9 +984,7 @@ ath5k_hw_commit_eeprom_settings(struct ath5k_hw *ah, | |||
984 | if (ah->ah_version == AR5K_AR5210) | 984 | if (ah->ah_version == AR5K_AR5210) |
985 | return; | 985 | return; |
986 | 986 | ||
987 | ee_mode = ath5k_eeprom_mode_from_channel(channel); | 987 | ee_mode = ath5k_eeprom_mode_from_channel(ah, channel); |
988 | if (WARN_ON(ee_mode < 0)) | ||
989 | return; | ||
990 | 988 | ||
991 | /* Adjust power delta for channel 14 */ | 989 | /* Adjust power delta for channel 14 */ |
992 | if (channel->center_freq == 2484) | 990 | if (channel->center_freq == 2484) |