Re: [linux-usb-devel] Re: [BK PATCH] USB update for 2.6.3

Russell King
2004-02-20T09:27:10Z

On Fri, Feb 20, 2004 at 12:08:08AM -0800, David Brownell wrote:
> Benjamin Herrenschmidt wrote:
> > Yes. I also remember a time where the dma mask for the DMA API was all
> > broken too (would not be possible to map the PCI one on top of it),
> > but I think that got fixed.
>
> I thought it was still broken. Last I compared different asm-* arch
> implementations of dma_supported(), the semantics were inconsistent.
> The "mask" was sometimes ignored, sometimes treated as an upper
> bound on the address, once I recall it even being used as a mask!
> Some of that inconsistency seemed to come from PCI though.

My understanding is that it's a mask, which just happens to be treated
as an upper address limit on sane platforms.

However, we have a case where it's a real mask (no surprises there!)
Intel decided not to fix a bug in a chip which means that an address
line (normally A20) must never be asserted during DMA cycles, although
it can address more than 1MB of memory. The effect of this is that
even MB are dma-able and odd MB aren't. Not nice.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core