From owner-freebsd-commit Fri Jan 26 18:34:00 1996 Return-Path: owner-commit Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id SAA16111 for freebsd-commit-outgoing; Fri, 26 Jan 1996 18:34:00 -0800 (PST) Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id SAA16098 for cvs-all-outgoing; Fri, 26 Jan 1996 18:33:55 -0800 (PST) Received: (from root@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id SAA16088 for cvs-sys-outgoing; Fri, 26 Jan 1996 18:33:53 -0800 (PST) Received: (from bde@localhost) by freefall.freebsd.org (8.7.3/8.7.3) id SAA16081 Fri, 26 Jan 1996 18:33:51 -0800 (PST) Date: Fri, 26 Jan 1996 18:33:51 -0800 (PST) From: Bruce Evans Message-Id: <199601270233.SAA16081@freefall.freebsd.org> To: CVS-committers, cvs-sys Subject: cvs commit: src/sys/i386/isa/sound dmabuf.c Sender: owner-commit@FreeBSD.ORG Precedence: bulk bde 96/01/26 18:33:50 Modified: sys/i386/i386 machdep.c sys/i386/include md_var.h sys/i386/isa fd.c isa.c wt.c sys/i386/isa/sound dmabuf.c Log: 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. Revision Changes Path 1.173 +1 -9 src/sys/i386/i386/machdep.c 1.6 +1 -2 src/sys/i386/include/md_var.h 1.78 +2 -1 src/sys/i386/isa/fd.c 1.63 +67 -17 src/sys/i386/isa/isa.c 1.29 +2 -1 src/sys/i386/isa/wt.c 1.22 +4 -1 src/sys/i386/isa/sound/dmabuf.c