[Madwifi-cvs] revision 1278 committed by br1
Status: Beta
Brought to you by:
otaku
From: br1 <svn...@ma...> - 2005-11-03 15:46:03
|
Project : madwifi Revision : 1278 Author : br1 Date : 2005-11-03 16:45:53 +0100 (Thu, 03 Nov 2005) Log Message : respect user setting of txantenna also for beacons Affected Files: * trunk/ath/if_ath.c updated Modified: trunk/ath/if_ath.c =================================================================== --- trunk/ath/if_ath.c 2005-11-03 13:41:37 UTC (rev 1277) +++ trunk/ath/if_ath.c 2005-11-03 15:45:53 UTC (rev 1278) @@ -3621,7 +3621,8 @@ struct sk_buff *skb = bf->bf_skb; struct ath_hal *ah = sc->sc_ah; struct ath_desc *ds; - int flags, antenna; + int flags; + int antenna = sc->sc_txantenna; const HAL_RATE_TABLE *rt; u_int8_t rix, rate; int ctsrate=0; @@ -3643,21 +3644,22 @@ ds->ds_link = bf->bf_daddr; /* self-linked */ flags |= HAL_TXDESC_VEOL; /* - * Let hardware handle antenna switching. + * Let hardware handle antenna switching if txantenna is not set */ - antenna = 0; } else { ds->ds_link = 0; /* - * Switch antenna every beacon. + * Switch antenna every beacon if txantenna is not set * Should only switch every beacon period, not for every * SWBA's * XXX assumes two antenna */ - if (sc->sc_stagbeacons) - antenna = ((sc->sc_stats.ast_be_xmit / sc->sc_nbcnvaps) & 1 ? 2 : 1); - else - antenna = (sc->sc_stats.ast_be_xmit & 1 ? 2 : 1); + if (antenna == 0) { + if (sc->sc_stagbeacons) + antenna = ((sc->sc_stats.ast_be_xmit / sc->sc_nbcnvaps) & 1 ? 2 : 1); + else + antenna = (sc->sc_stats.ast_be_xmit & 1 ? 2 : 1); + } } ds->ds_data = bf->bf_skbaddr; |