diff options
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/hw.c')
-rw-r--r-- | drivers/net/wireless/ath/ath9k/hw.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c index ce9e59f4cd3d..9b1ee7fc05c1 100644 --- a/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c | |||
@@ -1925,8 +1925,7 @@ int ath9k_hw_fill_cap_info(struct ath_hw *ah) | |||
1925 | pCap->num_antcfg_2ghz = | 1925 | pCap->num_antcfg_2ghz = |
1926 | ah->eep_ops->get_num_ant_config(ah, ATH9K_HAL_FREQ_BAND_2GHZ); | 1926 | ah->eep_ops->get_num_ant_config(ah, ATH9K_HAL_FREQ_BAND_2GHZ); |
1927 | 1927 | ||
1928 | if (AR_SREV_9280_20_OR_LATER(ah) && | 1928 | if (AR_SREV_9280_20_OR_LATER(ah) && common->btcoex_enabled) { |
1929 | ath9k_hw_btcoex_supported(ah)) { | ||
1930 | btcoex_hw->btactive_gpio = ATH_BTACTIVE_GPIO; | 1929 | btcoex_hw->btactive_gpio = ATH_BTACTIVE_GPIO; |
1931 | btcoex_hw->wlanactive_gpio = ATH_WLANACTIVE_GPIO; | 1930 | btcoex_hw->wlanactive_gpio = ATH_WLANACTIVE_GPIO; |
1932 | 1931 | ||
@@ -1975,6 +1974,12 @@ int ath9k_hw_fill_cap_info(struct ath_hw *ah) | |||
1975 | if ((ant_div_ctl1 & 0x1) && ((ant_div_ctl1 >> 3) & 0x1)) | 1974 | if ((ant_div_ctl1 & 0x1) && ((ant_div_ctl1 >> 3) & 0x1)) |
1976 | pCap->hw_caps |= ATH9K_HW_CAP_ANT_DIV_COMB; | 1975 | pCap->hw_caps |= ATH9K_HW_CAP_ANT_DIV_COMB; |
1977 | } | 1976 | } |
1977 | if (AR_SREV_9300_20_OR_LATER(ah)) { | ||
1978 | if (ah->eep_ops->get_eeprom(ah, EEP_CHAIN_MASK_REDUCE)) | ||
1979 | pCap->hw_caps |= ATH9K_HW_CAP_APM; | ||
1980 | } | ||
1981 | |||
1982 | |||
1978 | 1983 | ||
1979 | return 0; | 1984 | return 0; |
1980 | } | 1985 | } |
@@ -2046,7 +2051,8 @@ u32 ath9k_hw_gpio_get(struct ath_hw *ah, u32 gpio) | |||
2046 | val = REG_READ(ah, AR7010_GPIO_IN); | 2051 | val = REG_READ(ah, AR7010_GPIO_IN); |
2047 | return (MS(val, AR7010_GPIO_IN_VAL) & AR_GPIO_BIT(gpio)) == 0; | 2052 | return (MS(val, AR7010_GPIO_IN_VAL) & AR_GPIO_BIT(gpio)) == 0; |
2048 | } else if (AR_SREV_9300_20_OR_LATER(ah)) | 2053 | } else if (AR_SREV_9300_20_OR_LATER(ah)) |
2049 | return MS_REG_READ(AR9300, gpio) != 0; | 2054 | return (MS(REG_READ(ah, AR_GPIO_IN), AR9300_GPIO_IN_VAL) & |
2055 | AR_GPIO_BIT(gpio)) != 0; | ||
2050 | else if (AR_SREV_9271(ah)) | 2056 | else if (AR_SREV_9271(ah)) |
2051 | return MS_REG_READ(AR9271, gpio) != 0; | 2057 | return MS_REG_READ(AR9271, gpio) != 0; |
2052 | else if (AR_SREV_9287_11_OR_LATER(ah)) | 2058 | else if (AR_SREV_9287_11_OR_LATER(ah)) |