Loading arch/arm/Kconfig +1 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ config ARM select HAVE_KRETPROBES if (HAVE_KPROBES) select HAVE_FTRACE if (!XIP_KERNEL) select HAVE_DYNAMIC_FTRACE if (HAVE_FTRACE) select HAVE_GENERIC_DMA_COHERENT help The ARM series is a line of low-power-consumption RISC chip designs licensed by ARM Ltd and targeted at embedded applications and Loading arch/arm/mm/consistent.c +8 −0 Original line number Diff line number Diff line Loading @@ -274,6 +274,11 @@ __dma_alloc(struct device *dev, size_t size, dma_addr_t *handle, gfp_t gfp, void * dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *handle, gfp_t gfp) { void *memory; if (dma_alloc_from_coherent(dev, size, handle, &memory)) return memory; if (arch_is_coherent()) { void *virt; Loading Loading @@ -362,6 +367,9 @@ void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr WARN_ON(irqs_disabled()); if (dma_release_from_coherent(dev, get_order(size), cpu_addr)) return; if (arch_is_coherent()) { kfree(cpu_addr); return; Loading include/asm-arm/dma-mapping.h +2 −0 Original line number Diff line number Diff line Loading @@ -7,6 +7,8 @@ #include <linux/scatterlist.h> #include <asm-generic/dma-coherent.h> /* * DMA-consistent mapping functions. These allocate/free a region of * uncached, unwrite-buffered mapped memory space for use with DMA Loading Loading
arch/arm/Kconfig +1 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ config ARM select HAVE_KRETPROBES if (HAVE_KPROBES) select HAVE_FTRACE if (!XIP_KERNEL) select HAVE_DYNAMIC_FTRACE if (HAVE_FTRACE) select HAVE_GENERIC_DMA_COHERENT help The ARM series is a line of low-power-consumption RISC chip designs licensed by ARM Ltd and targeted at embedded applications and Loading
arch/arm/mm/consistent.c +8 −0 Original line number Diff line number Diff line Loading @@ -274,6 +274,11 @@ __dma_alloc(struct device *dev, size_t size, dma_addr_t *handle, gfp_t gfp, void * dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *handle, gfp_t gfp) { void *memory; if (dma_alloc_from_coherent(dev, size, handle, &memory)) return memory; if (arch_is_coherent()) { void *virt; Loading Loading @@ -362,6 +367,9 @@ void dma_free_coherent(struct device *dev, size_t size, void *cpu_addr, dma_addr WARN_ON(irqs_disabled()); if (dma_release_from_coherent(dev, get_order(size), cpu_addr)) return; if (arch_is_coherent()) { kfree(cpu_addr); return; Loading
include/asm-arm/dma-mapping.h +2 −0 Original line number Diff line number Diff line Loading @@ -7,6 +7,8 @@ #include <linux/scatterlist.h> #include <asm-generic/dma-coherent.h> /* * DMA-consistent mapping functions. These allocate/free a region of * uncached, unwrite-buffered mapped memory space for use with DMA Loading