Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 25 Oct 2011 23:01:53 +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: r226758 - head/sys/dev/ath/ath_hal/ar5416
Message-ID:  <201110252301.p9PN1rJS020532@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: adrian
Date: Tue Oct 25 23:01:53 2011
New Revision: 226758
URL: http://svn.freebsd.org/changeset/base/226758

Log:
  Reduce the NF wait timeout. When doing heavy 11n RX loads, this can actually
  interfere with traffic, as the NF load can take quite a while and poking the
  AGC every 10uS is just a bit silly.
  
  Instead, just leave the baseband NF calibration where it is and just read it
  back next time a longcal interval happens.

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	Tue Oct 25 22:47:36 2011	(r226757)
+++ head/sys/dev/ath/ath_hal/ar5416/ar5416_cal.c	Tue Oct 25 23:01:53 2011	(r226758)
@@ -642,7 +642,15 @@ ar5416LoadNF(struct ath_hal *ah, const s
 	OS_REG_SET_BIT(ah, AR_PHY_AGC_CONTROL, AR_PHY_AGC_CONTROL_NF);
 
 	/* Wait for load to complete, should be fast, a few 10s of us. */
-	if (! ar5212WaitNFCalComplete(ah, 1000)) {
+	/*
+	 * XXX For now, don't be so aggressive in waiting for the NF
+	 * XXX load to complete. A very busy 11n RX load will cause this
+	 * XXX to always fail; so just leave it.
+	 * XXX Later on we may wish to split longcal into two parts - one to do
+	 * XXX the initial longcal, and one to load in an updated NF value
+	 * XXX once it's finished - say, by checking it every 500ms.
+	 */
+	if (! ar5212WaitNFCalComplete(ah, 5)) {
 		/*
 		 * We timed out waiting for the noisefloor to load, probably due to an
 		 * in-progress rx. Simply return here and allow the load plenty of time



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