[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Memory allocation/sharing when DMA operations used..

From: R. Koot
Subject: Re: Memory allocation/sharing when DMA operations used..
Date: Tue, 05 Apr 2005 14:17:53 +0200
User-agent: Mozilla Thunderbird 1.0 (X11/20041206)

Peter 'p2' De Schrijver wrote:
On Fri, Apr 01, 2005 at 11:22:21AM +0200, Bas Wijnen wrote:


I'm not very familiar with DMA, but I remembered that only certain pages
can be used for DMA.  Or was that only for ISA?  Anyway, if that is not
the case, it becomes a lot simpler.

It's true for ISA but also for PCI in some 64bit systems. In general we
have the following magic barriers on IA32/AMD64 systems :

1MB : 8bit ISA DMA

Note that 8bit ISA card (which are almost as (un)common as the 16bit variants) can still access the entier 16MB memory when plugged into a
16bit bus (which every system capable of running the HURD has (or had)).

16MB : 16bit ISA DMA

I know of at least one southbridge (Intel SIO, predecessor of the Intel PIIX) which allows for 29- or 32-bit addressing for ISA cards.

4GB  : Non-DAC capable PCI cards on 64bit systems lacking an IO-MMU.
       (DAC stands for Dual Address Cycle here. Ie. the ability to use a
       64bit address by doing two 32bit address cycles).

Additionally 8 and 16bit ISA DMA transfers can't cross a 64KB or a 128KB
boundary respectively.

Peter (p2).


L4-hurd mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]