diff options
author | adrian <adrian@FreeBSD.org> | 2012-04-28 08:15:40 +0000 |
---|---|---|
committer | adrian <adrian@FreeBSD.org> | 2012-04-28 08:15:40 +0000 |
commit | ab1ec605a6dd93a9836b79128f0a8a03fb8fcfcc (patch) | |
tree | 447fea8bc5866c605ac29c939277bbca71099c6e /sys/dev/ath/ath_hal | |
parent | db8d363ac8d5c29ddac25bb7357c5142877fc922 (diff) | |
download | FreeBSD-src-ab1ec605a6dd93a9836b79128f0a8a03fb8fcfcc.zip FreeBSD-src-ab1ec605a6dd93a9836b79128f0a8a03fb8fcfcc.tar.gz |
Fetch the channel survey code from the HAL.
This information is currently not being populated by any of the HAL
modules.
Diffstat (limited to 'sys/dev/ath/ath_hal')
-rw-r--r-- | sys/dev/ath/ath_hal/ar5212/ar5212.h | 1 | ||||
-rw-r--r-- | sys/dev/ath/ath_hal/ar5212/ar5212_misc.c | 8 |
2 files changed, 9 insertions, 0 deletions
diff --git a/sys/dev/ath/ath_hal/ar5212/ar5212.h b/sys/dev/ath/ath_hal/ar5212/ar5212.h index 606f615..6a71fe8 100644 --- a/sys/dev/ath/ath_hal/ar5212/ar5212.h +++ b/sys/dev/ath/ath_hal/ar5212/ar5212.h @@ -320,6 +320,7 @@ struct ath_hal_5212 { struct ar5212AniParams ah_aniParams5; /* 5GHz parameters */ struct ar5212AniState *ah_curani; /* cached last reference */ struct ar5212AniState ah_ani[AH_MAXCHAN]; /* per-channel state */ + HAL_CHANNEL_SURVEY ah_chansurvey[AH_MAXCHAN]; /* channel survey */ /* AR5416 uses some of the AR5212 ANI code; these are the ANI methods */ HAL_BOOL (*ah_aniControl) (struct ath_hal *, HAL_ANI_CMD cmd, int param); diff --git a/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c b/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c index 9cbf320..0e628b8 100644 --- a/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c +++ b/sys/dev/ath/ath_hal/ar5212/ar5212_misc.c @@ -1090,6 +1090,14 @@ ar5212GetDiagState(struct ath_hal *ah, int request, return AH_FALSE; return ar5212AniSetParams(ah, args, args); } + break; + case HAL_DIAG_CHANSURVEY: + if (AH_PRIVATE(ah)->ah_curchan == NULL) + return AH_FALSE; + *result = + &ahp->ah_chansurvey[AH_PRIVATE(ah)->ah_curchan->ic_devdata]; + *resultsize = sizeof(HAL_CHANNEL_SURVEY); + return AH_TRUE; } return AH_FALSE; } |