Subject: Re: aha0: DMA beyond end of ISA
To: Trevin Beattie <trevin@xmission.com>
From: Jason Thorpe <thorpej@nas.nasa.gov>
List: current-users
Date: 11/08/1996 23:42:30
On Fri, 08 Nov 1996 17:28:39 -0700 
 Trevin Beattie <trevin@xmission.com> wrote:

 > I'm sure this subject has been covered before, but I ignored it because I
 > only has 16MB RAM.  Now that I've upgraded to 32MB, this error is halting
 > processes at random and it's getting extremely annoying.  Isn't the
 > bounce-buffer strategy in isadma.c (or something like that) supposed to
 > prevent this problem?  If it's not enabled by default, how do I configure
 > it?  If there is no fix, can I at least restrict netbsd to using just 16MB
 > RAM (without physically taking the additional memory out)?

See my recent post to tech-kern... I'm working on the design of a
machine-independent DMA interface, and am hoping to get consensus on the
design soon, so I can start writing the code.

In any case, the bounce stuff in isadma.c only applies to the on-board
ISA dma controller.  The problem occurs when the device itself is a
busmaster.

As for limiting the memory used, you can use the EXTMEM_SIZE kernel option.
I'm not really an i386 goo-roo, but I think 16M machines have 15M
of extended memory, right?  So, if that's the case, you want to use:

options		EXTMEM_SIZE=15360

...which is (15 * 1024).  Better double-check that number with someone :-)

So, providing the interface is settled on, I'm hoping to get cranking
on an implementation "soon", and will likely solicit testers... That's
not going to happen for _at least_ a month, but this is a heads-up :-)

Ciao.

Jason R. Thorpe                                       thorpej@nas.nasa.gov
NASA Ames Research Center                               Home: 408.866.1912
NAS: M/S 258-6                                          Work: 415.604.0935
Moffett Field, CA 94035                                Pager: 415.428.6939