summaryrefslogtreecommitdiffstats
path: root/sys/dev/dc
diff options
context:
space:
mode:
authoryongari <yongari@FreeBSD.org>2011-10-24 17:09:22 +0000
committeryongari <yongari@FreeBSD.org>2011-10-24 17:09:22 +0000
commiteacb4e8e29807814c92560abb56ff165b9fdbc39 (patch)
tree2a6ebe60c47c44fcb5831847d1adff0446099089 /sys/dev/dc
parentd6361a0e20bf6ff0d284dc37a10607151d543463 (diff)
downloadFreeBSD-src-eacb4e8e29807814c92560abb56ff165b9fdbc39.zip
FreeBSD-src-eacb4e8e29807814c92560abb56ff165b9fdbc39.tar.gz
Add missing bus_dmamap_sync() in setup frame transmit.
MFC after: 3 days
Diffstat (limited to 'sys/dev/dc')
-rw-r--r--sys/dev/dc/if_dc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/dev/dc/if_dc.c b/sys/dev/dc/if_dc.c
index ce53b4d..452f5d3 100644
--- a/sys/dev/dc/if_dc.c
+++ b/sys/dev/dc/if_dc.c
@@ -1136,6 +1136,8 @@ dc_setfilt_21143(struct dc_softc *sc)
sp[41] = DC_SP_MAC(eaddr[2]);
sframe->dc_status = htole32(DC_TXSTAT_OWN);
+ bus_dmamap_sync(sc->dc_tx_ltag, sc->dc_tx_lmap, BUS_DMASYNC_PREREAD |
+ BUS_DMASYNC_PREWRITE);
bus_dmamap_sync(sc->dc_stag, sc->dc_smap, BUS_DMASYNC_PREWRITE);
CSR_WRITE_4(sc, DC_TXSTART, 0xFFFFFFFF);
@@ -1342,6 +1344,8 @@ dc_setfilt_xircom(struct dc_softc *sc)
DC_SETBIT(sc, DC_NETCFG, DC_NETCFG_TX_ON);
DC_SETBIT(sc, DC_NETCFG, DC_NETCFG_RX_ON);
sframe->dc_status = htole32(DC_TXSTAT_OWN);
+ bus_dmamap_sync(sc->dc_tx_ltag, sc->dc_tx_lmap, BUS_DMASYNC_PREREAD |
+ BUS_DMASYNC_PREWRITE);
bus_dmamap_sync(sc->dc_stag, sc->dc_smap, BUS_DMASYNC_PREWRITE);
CSR_WRITE_4(sc, DC_TXSTART, 0xFFFFFFFF);
OpenPOWER on IntegriCloud