Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Jul 2011 13:21:33 +0000 (UTC)
From:      Adrian Chadd <adrian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r224510 - head/sys/dev/ath/ath_hal/ar5416
Message-ID:  <201107301321.p6UDLXZ2001362@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: adrian
Date: Sat Jul 30 13:21:33 2011
New Revision: 224510
URL: http://svn.freebsd.org/changeset/base/224510

Log:
  I noticed that the Merlin NICs I had (AR9220, AR9280) never completed
  the ADC calibrations if the NIC is in 5ghz 11a or 5ghz HT/20 modes.
  I've been told that the dual-ADC is only engaged in turbo/40mhz modes.
  
  Since Sowl (AR9160) seems to return valid-looking calibration data
  in 5ghz 20MHz modes, I'm only disabling it for Merlin for now.
  It may turn out I can disable it for all chipsets and only enable
  it for 40MHz modes.
  
  Approved by:	re (kib)

Modified:
  head/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c

Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c
==============================================================================
--- head/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c	Sat Jul 30 13:18:48 2011	(r224509)
+++ head/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c	Sat Jul 30 13:21:33 2011	(r224510)
@@ -73,8 +73,15 @@ ar5416IsCalSupp(struct ath_hal *ah, cons
 	case ADC_GAIN_CAL:
 	case ADC_DC_CAL:
 		/* Run ADC Gain Cal for either 5ghz any or 2ghz HT40 */
-		if (IEEE80211_IS_CHAN_5GHZ(chan))
-			return AH_TRUE;
+		/*
+		 * Merlin (AR9280) doesn't ever complete ADC calibrations
+		 * in 5ghz non-HT40 mode (ie, HT20, 11a). For now, disable
+		 * it for Merlin only until further information is
+		 * available.
+		 */
+		if (! AR_SREV_MERLIN(ah))
+			if (IEEE80211_IS_CHAN_5GHZ(chan))
+				return AH_TRUE;
 		if (IEEE80211_IS_CHAN_HT40(chan))
 			return AH_TRUE;
 		return AH_FALSE;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201107301321.p6UDLXZ2001362>