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

From: Colin Ngam <cngam_at_sgi.com>
Date: 2003-05-16 09:40:22
"David S. Miller" wrote:

>    From: Colin Ngam <cngam@sgi.com>
>    Date: Thu, 15 May 2003 18:25:54 -0500
>    Actually, our system does not have Physical Memory Address smaller than
>    48Bits - give or take couple bits ...  Hence, 32Bits Mapped DMA address
>    maps to 48Bits System Physical Address.
> If you support mapping 32-bit DMA bus spaces to the full 48-bit
> physical memory spaces, then why do you even need >4GB addressing?
> Saying that PCI-X devices can only generate DAC cycles is bogus,

I did not say that.  it is very obvious that PCI-X devices can generate
either SAC or DAC.

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.

This does not break any PCI-X specs.

However, the pci_alloc_consistent() interface is documented to ONLY
return a 32-Bit DMA Bus Space .. we like this to be extended so that
PCI-X device drivers or PCI drivers can consumed 64-Bit DMA Bus
Space, if they have the capability.



> I have PCI-X tg3 cards in my systems and they function just fine.
> Or does this rule only apply when the device is on a PCI-X bus?

> This all sounds seriously broken to me, I thought the issue was that
> a) the addresses could not be translated, it was direct phys-->virt
> and b) you can't guarentee that the physical address of memory
> allocated on any particular node is <4GB.
Received on Thu May 15 16:57:47 2003

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:14 EST