dma-mapping: ia64: add CONFIG_DMA_API_DEBUG support
authorFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Wed, 17 Jun 2009 23:28:14 +0000 (16:28 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 18 Jun 2009 20:03:58 +0000 (13:03 -0700)
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Acked-by: Joerg Roedel <joerg.roedel@amd.com>
Cc: Ingo Molnar <mingo@elte.hu>
Acked-by: "Luck, Tony" <tony.luck@intel.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: James Bottomley <James.Bottomley@HansenPartnership.com>
Cc; "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/ia64/Kconfig
arch/ia64/include/asm/dma-mapping.h

index 294a3b13ecac5112aa3331d2ea646548dc7c10ef..170042b420d466829ff7baba523a7b357b43d7a5 100644 (file)
@@ -28,6 +28,7 @@ config IA64
        select HAVE_DMA_ATTRS
        select HAVE_KVM
        select HAVE_ARCH_TRACEHOOK
+       select HAVE_DMA_API_DEBUG
        default y
        help
          The Itanium Processor Family is Intel's 64-bit successor to
index 2475c91adc98c69be42a889c914e46ffeb062baa..5a61b5c2e18f19d205827edee860d94b39152ca2 100644 (file)
@@ -8,6 +8,7 @@
 #include <asm/machvec.h>
 #include <linux/scatterlist.h>
 #include <asm/swiotlb.h>
+#include <linux/dma-debug.h>
 
 #define ARCH_HAS_DMA_GET_REQUIRED_MASK
 
@@ -24,13 +25,18 @@ static inline void *dma_alloc_coherent(struct device *dev, size_t size,
                                       dma_addr_t *daddr, gfp_t gfp)
 {
        struct dma_map_ops *ops = platform_dma_get_ops(dev);
-       return ops->alloc_coherent(dev, size, daddr, gfp);
+       void *caddr;
+
+       caddr = ops->alloc_coherent(dev, size, daddr, gfp);
+       debug_dma_alloc_coherent(dev, size, *daddr, caddr);
+       return caddr;
 }
 
 static inline void dma_free_coherent(struct device *dev, size_t size,
                                     void *caddr, dma_addr_t daddr)
 {
        struct dma_map_ops *ops = platform_dma_get_ops(dev);
+       debug_dma_free_coherent(dev, size, caddr, daddr);
        ops->free_coherent(dev, size, caddr, daddr);
 }