From: Sujith Manoharan Date: Wed, 18 Dec 2013 04:23:26 +0000 (+0530) Subject: ath9k: Fix RTC reset delay X-Git-Tag: v3.14-rc1~94^2~3^2^2~136 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=4dc78c437a0a2ac152a2b2c5e91a814a6ef3599e;p=uclinux-h8%2Flinux.git ath9k: Fix RTC reset delay The delay that is required after issuing a RTC reset varies for each chip. Handle this properly. Signed-off-by: Sujith Manoharan Signed-off-by: John W. Linville --- diff --git a/drivers/net/wireless/ath/ath9k/hw.c b/drivers/net/wireless/ath/ath9k/hw.c index 28009148e313..3ca682f3c704 100644 --- a/drivers/net/wireless/ath/ath9k/hw.c +++ b/drivers/net/wireless/ath/ath9k/hw.c @@ -1363,7 +1363,12 @@ static bool ath9k_hw_set_reset(struct ath_hw *ah, int type) REGWRITE_BUFFER_FLUSH(ah); - udelay(50); + if (AR_SREV_9300_20_OR_LATER(ah)) + udelay(50); + else if (AR_SREV_9100(ah)) + udelay(10000); + else + udelay(100); REG_WRITE(ah, AR_RTC_RC, 0); if (!ath9k_hw_wait(ah, AR_RTC_RC, AR_RTC_RC_M, 0, AH_WAIT_TIMEOUT)) {