if (bfaddr != 0) {
/*
* Stop any current DMA and put the new frame(s) on the queue.
-@@ -6734,9 +6708,8 @@ ath_setdefantenna(struct ath_softc *sc,
+@@ -6734,9 +6708,8 @@ ath_setdefantenna(struct ath_softc *sc,
{
struct ath_hal *ah = sc->sc_ah;
- /* XXX block beacon interrupts */
- ath_hal_setdiversity(ah, (sc->sc_diversity != 0));
ath_hal_setdefantenna(ah, antenna);
-+ ath_hal_setantennaswitch(ah, sc->sc_diversity ? 0 : sc->sc_defant);
++ ath_hal_setantennaswitch(ah, sc->sc_diversity ? 0 : antenna);
if (sc->sc_defant != antenna)
sc->sc_stats.ast_ant_defswitch++;
sc->sc_defant = antenna;
-@@ -11157,7 +11130,7 @@ ATH_SYSCTL_DECL(ath_sysctl_halparam, ctl
+@@ -11160,7 +11133,7 @@ ATH_SYSCTL_DECL(ath_sysctl_halparam, ctl
break;
}
sc->sc_diversity = val;