summaryrefslogtreecommitdiff
path: root/sys/dev/isa/isadma.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/isa/isadma.c')
-rw-r--r--sys/dev/isa/isadma.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/sys/dev/isa/isadma.c b/sys/dev/isa/isadma.c
index 80efb570834..b108e4d52ae 100644
--- a/sys/dev/isa/isadma.c
+++ b/sys/dev/isa/isadma.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: isadma.c,v 1.23 2001/10/31 11:00:24 art Exp $ */
+/* $OpenBSD: isadma.c,v 1.24 2001/11/05 17:25:58 art Exp $ */
/* $NetBSD: isadma.c,v 1.32 1997/09/05 01:48:33 thorpej Exp $ */
/*-
@@ -352,10 +352,14 @@ isa_dmastart(isadev, chan, addr, nbytes, p, flags, busdmaflags)
#endif
if (flags & DMAMODE_READ) {
- bus_dmamap_sync(sc->sc_dmat, dmam, BUS_DMASYNC_PREREAD);
+ bus_dmamap_sync(sc->sc_dmat, dmam, 0,
+ dmam->dm_mapsize,
+ BUS_DMASYNC_PREREAD);
sc->sc_dmareads |= (1 << chan);
} else {
- bus_dmamap_sync(sc->sc_dmat, dmam, BUS_DMASYNC_PREWRITE);
+ bus_dmamap_sync(sc->sc_dmat, dmam, 0,
+ dmam->dm_mapsize,
+ BUS_DMASYNC_PREWRITE);
sc->sc_dmareads &= ~(1 << chan);
}
@@ -531,7 +535,8 @@ isa_dmadone(isadev, chan)
printf("%s: isa_dmadone: channel %d not finished\n",
sc->sc_dev.dv_xname, chan);
- bus_dmamap_sync(sc->sc_dmat, dmam,
+ bus_dmamap_sync(sc->sc_dmat, dmam, 0,
+ dmam->dm_mapsize,
(sc->sc_dmareads & (1 << chan)) ? BUS_DMASYNC_POSTREAD :
BUS_DMASYNC_POSTWRITE);