diff options
-rw-r--r-- | drivers/net/wireless/ath/ath9k/hw.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c index 8c840cad3ac2..d582cf73098f 100644 --- a/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c | |||
@@ -1386,10 +1386,16 @@ static bool ath9k_hw_set_reset_reg(struct ath_hw *ah, u32 type) | |||
1386 | static bool ath9k_hw_chip_reset(struct ath_hw *ah, | 1386 | static bool ath9k_hw_chip_reset(struct ath_hw *ah, |
1387 | struct ath9k_channel *chan) | 1387 | struct ath9k_channel *chan) |
1388 | { | 1388 | { |
1389 | if (AR_SREV_9280(ah) && ah->eep_ops->get_eeprom(ah, EEP_OL_PWRCTRL)) { | 1389 | int reset_type = ATH9K_RESET_WARM; |
1390 | if (!ath9k_hw_set_reset_reg(ah, ATH9K_RESET_POWER_ON)) | 1390 | |
1391 | return false; | 1391 | if (AR_SREV_9280(ah)) { |
1392 | } else if (!ath9k_hw_set_reset_reg(ah, ATH9K_RESET_WARM)) | 1392 | if (ah->eep_ops->get_eeprom(ah, EEP_OL_PWRCTRL)) |
1393 | reset_type = ATH9K_RESET_POWER_ON; | ||
1394 | else | ||
1395 | reset_type = ATH9K_RESET_COLD; | ||
1396 | } | ||
1397 | |||
1398 | if (!ath9k_hw_set_reset_reg(ah, reset_type)) | ||
1393 | return false; | 1399 | return false; |
1394 | 1400 | ||
1395 | if (!ath9k_hw_setpower(ah, ATH9K_PM_AWAKE)) | 1401 | if (!ath9k_hw_setpower(ah, ATH9K_PM_AWAKE)) |