[PATCH 5/9] x86: use dma_map_range when allocating PCI GART memory

From: Ian Campbell
Date: Fri May 29 2009 - 04:45:30 EST

This function is intended to replaces is_buffer_dma_capable with a
more generic interface.

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
Cc: FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx>
Cc: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
Cc: x86@xxxxxxxxxx
arch/x86/kernel/pci-gart_64.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kernel/pci-gart_64.c b/arch/x86/kernel/pci-gart_64.c
index 1e8920d..eb043bd 100644
--- a/arch/x86/kernel/pci-gart_64.c
+++ b/arch/x86/kernel/pci-gart_64.c
@@ -190,14 +190,16 @@ static void iommu_full(struct device *dev, size_t size, int dir)
static inline int
need_iommu(struct device *dev, unsigned long addr, size_t size)
+ dma_addr_t dma_addr;
return force_iommu ||
- !is_buffer_dma_capable(*dev->dma_mask, addr, size);
+ !dma_map_range(dev, *dev->dma_mask, addr, size, &dma_addr);

static inline int
nonforced_iommu(struct device *dev, unsigned long addr, size_t size)
- return !is_buffer_dma_capable(*dev->dma_mask, addr, size);
+ dma_addr_t dma_addr;
+ return !dma_map_range(dev, *dev->dma_mask, addr, size, &dma_addr);

/* Map a single continuous physical area into the IOMMU.

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