summaryrefslogtreecommitdiffstats
path: root/sys/dev/iwn
diff options
context:
space:
mode:
authorbschmidt <bschmidt@FreeBSD.org>2010-04-21 17:38:16 +0000
committerbschmidt <bschmidt@FreeBSD.org>2010-04-21 17:38:16 +0000
commitbd061a91d767beeeab9684b406ef333f0907e7cf (patch)
treea7e61da7d01bf33a0ee76d28c62dfd4c4b1b4836 /sys/dev/iwn
parente870225b6d5f15c4e055fbd3ac874a68d8216e74 (diff)
downloadFreeBSD-src-bd061a91d767beeeab9684b406ef333f0907e7cf.zip
FreeBSD-src-bd061a91d767beeeab9684b406ef333f0907e7cf.tar.gz
Use correct bus_dma_tag_t for TX frames.
Reported by: Andreas Nilsson <andrnils at gmail.com> Approved by: rpaulo (mentor) MFC after: 3 days
Diffstat (limited to 'sys/dev/iwn')
-rw-r--r--sys/dev/iwn/if_iwn.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/iwn/if_iwn.c b/sys/dev/iwn/if_iwn.c
index 2e60da3..09c1efd 100644
--- a/sys/dev/iwn/if_iwn.c
+++ b/sys/dev/iwn/if_iwn.c
@@ -2282,6 +2282,7 @@ iwn4965_tx_done(struct iwn_softc *sc, struct iwn_rx_desc *desc,
struct iwn_rx_data *data)
{
struct iwn4965_tx_stat *stat = (struct iwn4965_tx_stat *)(desc + 1);
+ struct iwn_tx_ring *ring = &sc->txq[desc->qid & 0xf];
DPRINTF(sc, IWN_DEBUG_XMIT, "%s: "
"qid %d idx %d retries %d nkill %d rate %x duration %d status %x\n",
@@ -2289,7 +2290,7 @@ iwn4965_tx_done(struct iwn_softc *sc, struct iwn_rx_desc *desc,
stat->btkillcnt, stat->rate, le16toh(stat->duration),
le32toh(stat->status));
- bus_dmamap_sync(sc->rxq.data_dmat, data->map, BUS_DMASYNC_POSTREAD);
+ bus_dmamap_sync(ring->data_dmat, data->map, BUS_DMASYNC_POSTREAD);
iwn_tx_done(sc, desc, stat->ackfailcnt, le32toh(stat->status) & 0xff);
}
@@ -2298,6 +2299,7 @@ iwn5000_tx_done(struct iwn_softc *sc, struct iwn_rx_desc *desc,
struct iwn_rx_data *data)
{
struct iwn5000_tx_stat *stat = (struct iwn5000_tx_stat *)(desc + 1);
+ struct iwn_tx_ring *ring = &sc->txq[desc->qid & 0xf];
DPRINTF(sc, IWN_DEBUG_XMIT, "%s: "
"qid %d idx %d retries %d nkill %d rate %x duration %d status %x\n",
@@ -2310,7 +2312,7 @@ iwn5000_tx_done(struct iwn_softc *sc, struct iwn_rx_desc *desc,
iwn5000_reset_sched(sc, desc->qid & 0xf, desc->idx);
#endif
- bus_dmamap_sync(sc->rxq.data_dmat, data->map, BUS_DMASYNC_POSTREAD);
+ bus_dmamap_sync(ring->data_dmat, data->map, BUS_DMASYNC_POSTREAD);
iwn_tx_done(sc, desc, stat->ackfailcnt, le16toh(stat->status) & 0xff);
}
OpenPOWER on IntegriCloud