*BSD News Article 67352


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!news.mira.net.au!inquo!in-news.erinet.com!izzy.net!aanews.merit.net!imci3!imci4!newsfeed.internetmci.com!info.ucla.edu!library.ucla.edu!agate!theos.com!deraadt
From: deraadt@theos.com (Theo de Raadt)
Newsgroups: comp.unix.bsd.netbsd.misc
Subject: Re: DMA beyond end of ISA
Date: 29 Apr 1996 05:56:58 GMT
Organization: Theo Ports Kernels For Fun And Profit, Inc.
Lines: 27
Message-ID: <DERAADT.96Apr28235658@zeus.theos.com>
References: <4lqvhh$aa@kayless.thalgah.org> <3182E6BA.33C3@nostromo.wright.edu>
NNTP-Posting-Host: zeus.theos.com
In-reply-to: John Meyers's message of Sat, 27 Apr 1996 23:32:10 -0400

In article <3182E6BA.33C3@nostromo.wright.edu> John Meyers <jmeyers@nostromo.wright.edu> writes:
   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. 

OpenBSD also has a solution to this problem.

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

Yup, FreeBSD, Linux, or OpenBSD... doesn't matter as long as it makes the
machine usable, right?
--
This space not left unintentionally unblank.		deraadt@theos.com