diff options
author | sam <sam@FreeBSD.org> | 2004-01-07 19:11:11 +0000 |
---|---|---|
committer | sam <sam@FreeBSD.org> | 2004-01-07 19:11:11 +0000 |
commit | 48b67bc80e6d4225ee307998124e6f8758d62da4 (patch) | |
tree | cf298e823b525d737c1b055aba5806163e963283 /sys/dev/ath | |
parent | 3c9436af24b0d8ed8d328be36d64ef8f43f32c13 (diff) | |
download | FreeBSD-src-48b67bc80e6d4225ee307998124e6f8758d62da4.zip FreeBSD-src-48b67bc80e6d4225ee307998124e6f8758d62da4.tar.gz |
When ath_hal_stoptxdma returns an error dma is still likely stopped
so don't just stop trying to send a beacon frame or we'll be more likely
to lose sync. This only seems to happen on some older chips.
Diffstat (limited to 'sys/dev/ath')
-rw-r--r-- | sys/dev/ath/if_ath.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/dev/ath/if_ath.c b/sys/dev/ath/if_ath.c index 691a780..3b07851 100644 --- a/sys/dev/ath/if_ath.c +++ b/sys/dev/ath/if_ath.c @@ -1232,7 +1232,7 @@ ath_beacon_proc(void *arg, int pending) if (!ath_hal_stoptxdma(ah, sc->sc_bhalq)) { DPRINTF(ATH_DEBUG_ANY, ("%s: beacon queue %u did not stop?\n", __func__, sc->sc_bhalq)); - return; /* busy, XXX is this right? */ + /* NB: the HAL still stops DMA, so proceed */ } bus_dmamap_sync(sc->sc_dmat, bf->bf_dmamap, BUS_DMASYNC_PREWRITE); |