Re: dma restriction on Itanium 2

Grant Grundler
2004-01-17T02:14:22Z

On Fri, Jan 16, 2004 at 05:48:15PM -0800, Kallol Biswas wrote:
> We have been seeing a problem on itanium 2 running linux 2.4.21-4.EL
> with our 10GB ethernet card.
> The error is PCI related. On PARISC systems the DMA address could not
> span page boundary due to hardware limitation,

Which HW limitation on parisc?
Are you talking about under HPUX?

Calling pci_map_single() can map up to 64-pages under parisc-linux.
(And that's a semi-arbitrary SW limit I designed into the implementation)
pci_alloc_consistent() has the same limitation since it uses
pci_map_single().

> do we have the same limitation on Itanium 2 systems also?

Under linux ZX1 DMA support has very similar constraints
HW-wise as PARISC *except* for 64-bit capable devices.
64-bit devices are not limited to 64-pages on ZX1.

> If the transmit or receive
> descriptors take more than a page then they should be aligned such a way
> that DMA does not happen over a page right?

transmit and recieve descriptors should be using memory allocated
with pci_alloc_consistent(). I'm not aware of any page boundary
limitation there. What's missing in 2.4.X is the ability
to set 64-bit attribute for PCI consistent memory.

grant