All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch 022/114] arch/openrisc: add option to skip DMA sync as a part of mapping
@ 2016-12-14 23:05 akpm
  0 siblings, 0 replies; only message in thread
From: akpm @ 2016-12-14 23:05 UTC (permalink / raw)
  To: torvalds, mm-commits, akpm, alexander.h.duyck, jonas

From: Alexander Duyck <alexander.h.duyck@intel.com>
Subject: arch/openrisc: add option to skip DMA sync as a part of mapping

This change allows us to pass DMA_ATTR_SKIP_CPU_SYNC which allows us to
avoid invoking cache line invalidation if the driver will just handle it
via a sync_for_cpu or sync_for_device call.

Link: http://lkml.kernel.org/r/20161110113524.76501.87966.stgit@ahduyck-blue-test.jf.intel.com
Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Cc: Jonas Bonn <jonas@southpole.se>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 arch/openrisc/kernel/dma.c |    3 +++
 1 file changed, 3 insertions(+)

diff -puN arch/openrisc/kernel/dma.c~arch-openrisc-add-option-to-skip-dma-sync-as-a-part-of-mapping arch/openrisc/kernel/dma.c
--- a/arch/openrisc/kernel/dma.c~arch-openrisc-add-option-to-skip-dma-sync-as-a-part-of-mapping
+++ a/arch/openrisc/kernel/dma.c
@@ -141,6 +141,9 @@ or1k_map_page(struct device *dev, struct
 	unsigned long cl;
 	dma_addr_t addr = page_to_phys(page) + offset;
 
+	if (attrs & DMA_ATTR_SKIP_CPU_SYNC)
+		return addr;
+
 	switch (dir) {
 	case DMA_TO_DEVICE:
 		/* Flush the dcache for the requested range */
_

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2016-12-14 23:05 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-14 23:05 [patch 022/114] arch/openrisc: add option to skip DMA sync as a part of mapping akpm

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.