[Linux-ia64] Re: 64 Bits DMA Addresses for Alloc Consistent Interfaces.

David S. Miller
2003-05-16T00:03:58Z

From: Colin Ngam <cngam@sgi.com>
Date: Thu, 15 May 2003 18:40:22 -0500

What I did say is that, on our platform, in PCI-X mode, our PCI-X
Bridge Chipset do NOT support 32-Bit DMA Bus Space.

Sounds like you can't use a whole swath of devices then.
What an entirely unfortunate design decision.

Anyways, now that I understand the problem, merely adding
the consistent_dma_mask attribute to the device struct will
allow drivers to indicate this capability just fine.
The driver goes:

if (pci_set_consistent_dma_mask(pdev, ~(u64)0))
goto probe_error;

and then the platform pci_alloc_consistent() can do whatever is
appropriate.