svn commit: r220599 - in head/sys/dev/ath/ath_hal: . ar9002
Adrian Chadd
adrian at FreeBSD.org
Wed Apr 13 15:08:51 UTC 2011
Author: adrian
Date: Wed Apr 13 15:08:51 2011
New Revision: 220599
URL: http://svn.freebsd.org/changeset/base/220599
Log:
More kite diversity related changes.
* add a diversity flag to the HAL debugging section
* add a check to make sure the kite diversity code doesn't run
on boards that don't require it, as not all Kite chips will
implement it.
* add some debug statements when the diversity code makes
changes to the antenna diversity/combining setup.
Modified:
head/sys/dev/ath/ath_hal/ah_debug.h
head/sys/dev/ath/ath_hal/ar9002/ar9285_diversity.c
Modified: head/sys/dev/ath/ath_hal/ah_debug.h
==============================================================================
--- head/sys/dev/ath/ath_hal/ah_debug.h Wed Apr 13 14:51:07 2011 (r220598)
+++ head/sys/dev/ath/ath_hal/ah_debug.h Wed Apr 13 15:08:51 2011 (r220599)
@@ -44,6 +44,7 @@ enum {
HAL_DEBUG_POWER = 0x00020000, /* power management */
HAL_DEBUG_GPIO = 0x00040000, /* GPIO debugging */
HAL_DEBUG_INTERRUPT = 0x00080000, /* interrupt handling */
+ HAL_DEBUG_DIVERSITY = 0x00100000, /* diversity debugging */
HAL_DEBUG_ANY = 0xffffffff
};
Modified: head/sys/dev/ath/ath_hal/ar9002/ar9285_diversity.c
==============================================================================
--- head/sys/dev/ath/ath_hal/ar9002/ar9285_diversity.c Wed Apr 13 14:51:07 2011 (r220598)
+++ head/sys/dev/ath/ath_hal/ar9002/ar9285_diversity.c Wed Apr 13 15:08:51 2011 (r220599)
@@ -371,6 +371,9 @@ ar9285_ant_comb_scan(struct ath_hal *ah,
int rx_ant_conf, main_ant_conf;
HAL_BOOL short_scan = AH_FALSE;
+ if (! ar9285_check_div_comb(ah))
+ return;
+
rx_ant_conf = (rs->rs_rssi_ctl[2] >> ATH_ANT_RX_CURRENT_SHIFT) &
ATH_ANT_RX_MASK;
main_ant_conf = (rs->rs_rssi_ctl[2] >> ATH_ANT_RX_MAIN_SHIFT) &
@@ -415,7 +418,6 @@ ar9285_ant_comb_scan(struct ath_hal *ah,
antcomb->total_pkt_count);
}
-
ar9285_antdiv_comb_conf_get(ah, &div_ant_conf);
curr_alt_set = div_ant_conf.alt_lna_conf;
curr_main_set = div_ant_conf.main_lna_conf;
@@ -585,6 +587,16 @@ div_comb_done:
ar9285_antdiv_comb_conf_set(ah, &div_ant_conf);
+ if (curr_alt_set != div_ant_conf.alt_lna_conf)
+ HALDEBUG(ah, HAL_DEBUG_DIVERSITY, "%s: lna_conf: %x -> %x\n",
+ __func__, curr_alt_set, div_ant_conf.alt_lna_conf);
+ if (curr_main_set != div_ant_conf.main_lna_conf)
+ HALDEBUG(ah, HAL_DEBUG_DIVERSITY, "%s: main_lna_conf: %x -> %x\n",
+ __func__, curr_main_set, div_ant_conf.main_lna_conf);
+ if (curr_bias != div_ant_conf.fast_div_bias)
+ HALDEBUG(ah, HAL_DEBUG_DIVERSITY, "%s: fast_div_bias: %x -> %x\n",
+ __func__, curr_bias, div_ant_conf.fast_div_bias);
+
antcomb->scan_start_time = ticks;
antcomb->total_pkt_count = 0;
antcomb->main_total_rssi = 0;
More information about the svn-src-all
mailing list