lkml.org 
[lkml]   [2006]   [Jun]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: pci_map_single() on IA64
From
Date
>>>>> "Adhiraj" == Adhiraj  <adhiraj@linsyssoft.com> writes:

Adhiraj> Hi all, How is it possible that on an IA64 machine, the
Adhiraj> address returned by pci_map_single() is above 4G (32 bits)
Adhiraj> when I have only 2G of physical memory?

Depends on how the physical memory is located on the system and how
the PCI bridge sees it.

Adhiraj> The DMA mask is set to 64 bits (using
Adhiraj> pci_set_dma_mask()). When I change it to 32 bit DMA mask, the
Adhiraj> problem goes away.

Forcing it to a 32 bit mask may force the box to use the IOMMU if it
has one, which not all IA64 systems do have. However, since you have
set the DMA mask to 64 bits then you're getting exactly what you are
asking for, so why is this a 'problem'? A 64 bit DMA mask means the
adapter can do 64 bit addressing, it has nothing to do with the width
of the databus.

Jes

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-06-07 16:13    [W:0.031 / U:1.220 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site