Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 24 Aug 2012 01:40:08 GMT
From:      dfilter@FreeBSD.ORG (dfilter service)
To:        freebsd-wireless@FreeBSD.org
Subject:   Re: kern/170904: commit references a PR
Message-ID:  <201208240140.q7O1e8k2009002@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/170904; it has been noted by GNATS.

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: kern/170904: commit references a PR
Date: Fri, 24 Aug 2012 01:29:58 +0000 (UTC)

 Author: adrian
 Date: Fri Aug 24 01:29:46 2012
 New Revision: 239638
 URL: http://svn.freebsd.org/changeset/base/239638
 
 Log:
   Implement an API to fetch the default DFS parameters for the given chip.
   
   The only chip this is currently implemented for is the AR5416 HAL family.
   A follow-up commit will add AR5212 support.
   
   PR:		kern/170904
 
 Modified:
   head/sys/dev/ath/ath_hal/ah.h
   head/sys/dev/ath/ath_hal/ar5416/ar5416.h
   head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c
   head/sys/dev/ath/ath_hal/ar5416/ar5416_radar.c
 
 Modified: head/sys/dev/ath/ath_hal/ah.h
 ==============================================================================
 --- head/sys/dev/ath/ath_hal/ah.h	Fri Aug 24 01:14:00 2012	(r239637)
 +++ head/sys/dev/ath/ath_hal/ah.h	Fri Aug 24 01:29:46 2012	(r239638)
 @@ -1223,6 +1223,8 @@ struct ath_hal {
  				HAL_PHYERR_PARAM *pe);
  	void	  __ahdecl(*ah_getDfsThresh)(struct ath_hal *ah,
  				HAL_PHYERR_PARAM *pe);
 +	HAL_BOOL  __ahdecl(*ah_getDfsDefaultThresh)(struct ath_hal *ah,
 +				HAL_PHYERR_PARAM *pe);
  	HAL_BOOL  __ahdecl(*ah_procRadarEvent)(struct ath_hal *ah,
  				struct ath_rx_status *rxs, uint64_t fulltsf,
  				const char *buf, HAL_DFS_EVENT *event);
 
 Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416.h
 ==============================================================================
 --- head/sys/dev/ath/ath_hal/ar5416/ar5416.h	Fri Aug 24 01:14:00 2012	(r239637)
 +++ head/sys/dev/ath/ath_hal/ar5416/ar5416.h	Fri Aug 24 01:29:46 2012	(r239638)
 @@ -253,6 +253,8 @@ extern	HAL_BOOL ar5416SetRifsDelay(struc
  	    const struct ieee80211_channel *chan, HAL_BOOL enable);
  
  extern	void ar5416EnableDfs(struct ath_hal *ah, HAL_PHYERR_PARAM *pe);
 +extern	HAL_BOOL ar5416GetDfsDefaultThresh(struct ath_hal *ah,
 +	    HAL_PHYERR_PARAM *pe);
  extern	void ar5416GetDfsThresh(struct ath_hal *ah, HAL_PHYERR_PARAM *pe);
  extern	HAL_BOOL ar5416ProcessRadarEvent(struct ath_hal *ah,
  	    struct ath_rx_status *rxs, uint64_t fulltsf, const char *buf,
 
 Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c
 ==============================================================================
 --- head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c	Fri Aug 24 01:14:00 2012	(r239637)
 +++ head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c	Fri Aug 24 01:29:46 2012	(r239638)
 @@ -156,6 +156,7 @@ ar5416InitState(struct ath_hal_5416 *ahp
  	/* DFS Functions */
  	ah->ah_enableDfs		= ar5416EnableDfs;
  	ah->ah_getDfsThresh		= ar5416GetDfsThresh;
 +	ah->ah_getDfsDefaultThresh	= ar5416GetDfsDefaultThresh;
  	ah->ah_procRadarEvent		= ar5416ProcessRadarEvent;
  	ah->ah_isFastClockEnabled	= ar5416IsFastClockEnabled;
  
 
 Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416_radar.c
 ==============================================================================
 --- head/sys/dev/ath/ath_hal/ar5416/ar5416_radar.c	Fri Aug 24 01:14:00 2012	(r239637)
 +++ head/sys/dev/ath/ath_hal/ar5416/ar5416_radar.c	Fri Aug 24 01:29:46 2012	(r239638)
 @@ -29,6 +29,51 @@
  #include "ah_eeprom_v14.h"	/* for owl_get_ntxchains() */
  
  /*
 + * These are default parameters for the AR5416 and
 + * later 802.11n NICs.  They simply enable some
 + * radar pulse event generation.
 + *
 + * These are very likely not valid for the AR5212 era
 + * NICs.
 + *
 + * Since these define signal sizing and threshold
 + * parameters, they may need changing based on the
 + * specific antenna and receive amplifier
 + * configuration.
 + */
 +#define	AR5416_DFS_FIRPWR	-33
 +#define	AR5416_DFS_RRSSI	20
 +#define	AR5416_DFS_HEIGHT	10
 +#define	AR5416_DFS_PRSSI	15
 +#define	AR5416_DFS_INBAND	15
 +#define	AR5416_DFS_RELPWR	8
 +#define	AR5416_DFS_RELSTEP	12
 +#define	AR5416_DFS_MAXLEN	255
 +
 +HAL_BOOL
 +ar5416GetDfsDefaultThresh(struct ath_hal *ah, HAL_PHYERR_PARAM *pe)
 +{
 +
 +	/*
 +	 * These are general examples of the parameter values
 +	 * to use when configuring radar pulse detection for
 +	 * the AR5416, AR91xx, AR92xx NICs.  They are only
 +	 * for testing and do require tuning depending upon the
 +	 * hardware and deployment specifics.
 +	 */
 +	pe->pe_firpwr = AR5416_DFS_FIRPWR;
 +	pe->pe_rrssi = AR5416_DFS_RRSSI;
 +	pe->pe_height = AR5416_DFS_HEIGHT;
 +	pe->pe_prssi = AR5416_DFS_PRSSI;
 +	pe->pe_inband = AR5416_DFS_INBAND;
 +	pe->pe_relpwr = AR5416_DFS_RELPWR;
 +	pe->pe_relstep = AR5416_DFS_RELSTEP;
 +	pe->pe_maxlen = AR5416_DFS_MAXLEN;
 +
 +	return (AH_TRUE);
 +}
 +
 +/*
   * Get the radar parameter values and return them in the pe
   * structure
   */
 _______________________________________________
 svn-src-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/svn-src-all
 To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org"
 



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