*BSD News Article 67225


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!news.rmit.EDU.AU!news.unimelb.EDU.AU!munnari.OZ.AU!news.ecn.uoknor.edu!news.cis.okstate.edu!newsfeed.ksu.ksu.edu!news.physics.uiowa.edu!math.ohio-state.edu!usc!howland.reston.ans.net!newsfeed.internetmci.com!in2.uu.net!en.com!multiverse!ragnarok.oar.net!malgudi.oar.net!hyperion.wright.edu!news.wright.edu!usenet
From: John Meyers <jmeyers@nostromo.wright.edu>
Newsgroups: comp.unix.bsd.netbsd.misc
Subject: Re: DMA beyond end of ISA
Date: Sat, 27 Apr 1996 23:32:10 -0400
Organization: Wright State University
Lines: 23
Message-ID: <3182E6BA.33C3@nostromo.wright.edu>
References: <4lqvhh$aa@kayless.thalgah.org>
NNTP-Posting-Host: dup152035.wright.edu
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
X-Mailer: Mozilla 2.0 (Win95; I)

Robert Leon Felix wrote:
> 
> OK an easy one for you this time, 'DMA beyond end of ISA', I've
> heard of this before but know not of the fix.

 This is a classic problem with DMA based ISA controllers such as the
 1542.  In summary, to the best of my knowledge (which may not be 100%
 correct), the problem is due to the fact that DMA addressing is 
 limitted to 16MB on a 16-bit ISA bus.  There is a work-around commonly
 refered to as 'bouncing-buffers' which I believe involves transferring
 data from above the 16MB boundary to the lower 16MB prior to performing
 a disk operation (can someone provide more detailed information?). 

 Anyway, I don't believe that the code has been implemented yet in the
 latest stable version of NetBSD.  However, both FreeBSD and Linux have
 implemented the 'bouncing-buffer' solution in their kernels. 

 So until it's implemented under NetBSD, you may want to only use 16MB
 of memory or alternatively use FreeBSD.

 John Meyers
 Computing Services
 Wright State University