diff options
author | adrian <adrian@FreeBSD.org> | 2011-05-09 17:30:25 +0000 |
---|---|---|
committer | adrian <adrian@FreeBSD.org> | 2011-05-09 17:30:25 +0000 |
commit | 63b7280b18f51612f427eba8bf4257dab30b777a (patch) | |
tree | 64997c5d0859fd538da046aad9d120e4bf70d9f7 | |
parent | 4bfd6690488fd7ad6f383c0ec1bd86301319985e (diff) | |
download | FreeBSD-src-63b7280b18f51612f427eba8bf4257dab30b777a.zip FreeBSD-src-63b7280b18f51612f427eba8bf4257dab30b777a.tar.gz |
Disable diversity combining support until I can get a firm answer
from Atheros as to what/when this is supposed to be enabled.
Using the default RX fast diversity settings seems to help quite
a bit.
Whilst I'm here, change the prototype to return HAL_BOOL rather than int.
-rw-r--r-- | sys/dev/ath/ath_hal/ar9002/ar9285_phy.c | 18 | ||||
-rw-r--r-- | sys/dev/ath/ath_hal/ar9002/ar9285_phy.h | 2 |
2 files changed, 13 insertions, 7 deletions
diff --git a/sys/dev/ath/ath_hal/ar9002/ar9285_phy.c b/sys/dev/ath/ath_hal/ar9002/ar9285_phy.c index e9c2c55..e4e73d4 100644 --- a/sys/dev/ath/ath_hal/ar9002/ar9285_phy.c +++ b/sys/dev/ath/ath_hal/ar9002/ar9285_phy.c @@ -75,24 +75,30 @@ ar9285_antdiv_comb_conf_set(struct ath_hal *ah, } /* - * Check whether antenna diversity should be enabled + * Check whether combined + fast antenna diversity should be enabled. + * + * This enables software-driven RX antenna diversity based on RX + * RSSI + antenna config packet sampling. */ -int +HAL_BOOL ar9285_check_div_comb(struct ath_hal *ah) { uint8_t ant_div_ctl1; HAL_EEPROM_v4k *ee = AH_PRIVATE(ah)->ah_eeprom; const MODAL_EEP4K_HEADER *pModal = &ee->ee_base.modalHeader; + /* For now, simply disable this until it's better debugged. -adrian */ + return AH_FALSE; + if (! AR_SREV_KITE(ah)) - return 0; + return AH_FALSE; if (pModal->version < 3) - return 0; + return AH_FALSE; ant_div_ctl1 = pModal->antdiv_ctl1; if ((ant_div_ctl1 & 0x1) && ((ant_div_ctl1 >> 3) & 0x1)) - return 1; + return AH_TRUE; - return 0; + return AH_FALSE; } diff --git a/sys/dev/ath/ath_hal/ar9002/ar9285_phy.h b/sys/dev/ath/ath_hal/ar9002/ar9285_phy.h index 3ddad14..b236718 100644 --- a/sys/dev/ath/ath_hal/ar9002/ar9285_phy.h +++ b/sys/dev/ath/ath_hal/ar9002/ar9285_phy.h @@ -41,6 +41,6 @@ extern void ar9285_antdiv_comb_conf_set(struct ath_hal *ah, struct ar9285_antcomb_conf *antconf); extern void ar9285_antdiv_comb_conf_get(struct ath_hal *ah, struct ar9285_antcomb_conf *antconf); -extern int ar9285_check_div_comb(struct ath_hal *ah); +extern HAL_BOOL ar9285_check_div_comb(struct ath_hal *ah); #endif |