summaryrefslogtreecommitdiffstats
path: root/sys/i386/isa/wt.c
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>1996-01-27 02:33:48 +0000
committerbde <bde@FreeBSD.org>1996-01-27 02:33:48 +0000
commitb367666afd7d12a7802e173170448bcd9f13d89b (patch)
tree89c9bb6e9d083a3f547ce32b8b591b9a773993b4 /sys/i386/isa/wt.c
parentae64a265a89555df45a3ad36f4cb2ef096386a30 (diff)
downloadFreeBSD-src-b367666afd7d12a7802e173170448bcd9f13d89b.zip
FreeBSD-src-b367666afd7d12a7802e173170448bcd9f13d89b.tar.gz
Allocate DMA bounce buffers only when requested by drivers. Only the
fd and wt drivers need bounce buffers, so this normally saves 32K-1K of kernel memory. Keep track of which DMA channels are busy. isa_dmadone() must now be called when DMA has finished or been aborted. Panic for unallocated and too-small (required) bounce buffers. fd.c: There will be new warnings about isa_dmadone() not being called after DMA has been aborted. sound/dmabuf.c: isa_dmadone() needs more parameters than are available, so temporarily use a new interface isa_dmadone_nobounce() to avoid having to worry about panics for fake parameters. Untested.
Diffstat (limited to 'sys/i386/isa/wt.c')
-rw-r--r--sys/i386/isa/wt.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/i386/isa/wt.c b/sys/i386/isa/wt.c
index 08e49f9..f571e46 100644
--- a/sys/i386/isa/wt.c
+++ b/sys/i386/isa/wt.c
@@ -19,7 +19,7 @@
* the original CMU copyright notice.
*
* Version 1.3, Thu Nov 11 12:09:13 MSK 1993
- * $Id: wt.c,v 1.27 1995/12/22 15:39:45 bde Exp $
+ * $Id: wt.c,v 1.28 1996/01/08 12:46:14 joerg Exp $
*
*/
@@ -293,6 +293,7 @@ wtattach (struct isa_device *id)
t->flags = TPSTART; /* tape is rewound */
t->dens = -1; /* unknown density */
kdc_wt[id->id_unit].kdc_state = DC_IDLE;
+ isa_dmainit(t->chan, 1024);
#ifdef DEVFS
sprintf(name,"rwt%d",id->id_unit);
OpenPOWER on IntegriCloud