Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 May 2009 17:30:13 +0000 (UTC)
From:      Sam Leffler <sam@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r192396 - in head/sys/dev/ath/ath_hal: . ar5210 ar5211 ar5212 ar5416
Message-ID:  <200905191730.n4JHUDu7004723@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: sam
Date: Tue May 19 17:30:13 2009
New Revision: 192396
URL: http://svn.freebsd.org/changeset/base/192396

Log:
  add HAL_CAP_INTRMASK to return the set of interrupts supported by the device

Modified:
  head/sys/dev/ath/ath_hal/ah.c
  head/sys/dev/ath/ath_hal/ah.h
  head/sys/dev/ath/ath_hal/ah_internal.h
  head/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c
  head/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c
  head/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c
  head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c

Modified: head/sys/dev/ath/ath_hal/ah.c
==============================================================================
--- head/sys/dev/ath/ath_hal/ah.c	Tue May 19 17:17:53 2009	(r192395)
+++ head/sys/dev/ath/ath_hal/ah.c	Tue May 19 17:30:13 2009	(r192396)
@@ -500,6 +500,9 @@ ath_hal_getcapability(struct ath_hal *ah
 	case HAL_CAP_RXTSTAMP_PREC:	/* rx desc tstamp precision (bits) */
 		*result = pCap->halTstampPrecision;
 		return HAL_OK;
+	case HAL_CAP_INTRMASK:		/* mask of supported interrupts */
+		*result = pCap->halIntrMask;
+		return HAL_OK;
 	default:
 		return HAL_EINVAL;
 	}

Modified: head/sys/dev/ath/ath_hal/ah.h
==============================================================================
--- head/sys/dev/ath/ath_hal/ah.h	Tue May 19 17:17:53 2009	(r192395)
+++ head/sys/dev/ath/ath_hal/ah.h	Tue May 19 17:30:13 2009	(r192396)
@@ -109,6 +109,7 @@ typedef enum {
 	HAL_CAP_RXTSTAMP_PREC	= 34,	/* rx desc tstamp precision (bits) */
 	HAL_CAP_BB_HANG		= 35,	/* can baseband hang */
 	HAL_CAP_MAC_HANG	= 36,	/* can MAC hang */
+	HAL_CAP_INTRMASK	= 37,	/* bitmask of supported interrupts */
 } HAL_CAPABILITY_TYPE;
 
 /* 
@@ -348,8 +349,8 @@ typedef enum {
 			| HAL_INT_RXDESC
 			| HAL_INT_RXEOL
 			| HAL_INT_RXORN
-			| HAL_INT_TXURN
 			| HAL_INT_TXDESC
+			| HAL_INT_TXURN
 			| HAL_INT_MIB
 			| HAL_INT_RXPHY
 			| HAL_INT_RXKCM

Modified: head/sys/dev/ath/ath_hal/ah_internal.h
==============================================================================
--- head/sys/dev/ath/ath_hal/ah_internal.h	Tue May 19 17:17:53 2009	(r192395)
+++ head/sys/dev/ath/ath_hal/ah_internal.h	Tue May 19 17:30:13 2009	(r192396)
@@ -206,6 +206,7 @@ typedef struct {
 	uint8_t		halNumGpioPins;
 	uint8_t		halNumAntCfg2GHz;
 	uint8_t		halNumAntCfg5GHz;
+	uint32_t	halIntrMask;
 } HAL_CAPABILITIES;
 
 struct regDomain;

Modified: head/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c
==============================================================================
--- head/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c	Tue May 19 17:17:53 2009	(r192395)
+++ head/sys/dev/ath/ath_hal/ar5210/ar5210_attach.c	Tue May 19 17:30:13 2009	(r192396)
@@ -369,6 +369,11 @@ ar5210FillCapabilityInfo(struct ath_hal 
 	}
 
 	pCap->halTstampPrecision = 15;		/* NB: s/w extended from 13 */
+	pCap->halIntrMask = HAL_INT_COMMON
+			| HAL_INT_RX
+			| HAL_INT_TX
+			| HAL_INT_FATAL
+			;
 
 	ahpriv->ah_rxornIsFatal = AH_TRUE;
 	return AH_TRUE;

Modified: head/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c
==============================================================================
--- head/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c	Tue May 19 17:17:53 2009	(r192395)
+++ head/sys/dev/ath/ath_hal/ar5211/ar5211_attach.c	Tue May 19 17:30:13 2009	(r192396)
@@ -498,6 +498,13 @@ ar5211FillCapabilityInfo(struct ath_hal 
 	}
 
 	pCap->halTstampPrecision = 13;
+	pCap->halIntrMask = HAL_INT_COMMON
+			| HAL_INT_RX
+			| HAL_INT_TX
+			| HAL_INT_FATAL
+			| HAL_INT_BNR
+			| HAL_INT_TIM
+			;
 
 	/* XXX might be ok w/ some chip revs */
 	ahpriv->ah_rxornIsFatal = AH_TRUE;

Modified: head/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c
==============================================================================
--- head/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c	Tue May 19 17:17:53 2009	(r192395)
+++ head/sys/dev/ath/ath_hal/ar5212/ar5212_attach.c	Tue May 19 17:30:13 2009	(r192396)
@@ -840,6 +840,13 @@ ar5212FillCapabilityInfo(struct ath_hal 
 	    AH_PRIVATE(ah)->ah_macVersion > AR_SREV_VERSION_VENICE;
 
 	pCap->halTstampPrecision = 15;
+	pCap->halIntrMask = HAL_INT_COMMON
+			| HAL_INT_RX
+			| HAL_INT_TX
+			| HAL_INT_FATAL
+			| HAL_INT_BNR
+			| HAL_INT_BMISC
+			;
 
 	return AH_TRUE;
 #undef IS_COBRA

Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c
==============================================================================
--- head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c	Tue May 19 17:17:53 2009	(r192395)
+++ head/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c	Tue May 19 17:30:13 2009	(r192396)
@@ -781,6 +781,17 @@ ar5416FillCapabilityInfo(struct ath_hal 
 
 	pCap->halTstampPrecision = 32;
 	pCap->halHwPhyCounterSupport = AH_TRUE;
+	pCap->halIntrMask = HAL_INT_COMMON
+			| HAL_INT_RX
+			| HAL_INT_TX
+			| HAL_INT_FATAL
+			| HAL_INT_BNR
+			| HAL_INT_BMISC
+			| HAL_INT_DTIMSYNC
+			| HAL_INT_TSFOOR
+			| HAL_INT_CST
+			| HAL_INT_GTT
+			;
 
 	pCap->halFastCCSupport = AH_TRUE;
 	pCap->halNumGpioPins = 6;



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