From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
To: <xen-devel@lists.xensource.com>
Cc: <konrad.wilk@oracle.com>, <Ian.Campbell@citrix.com>,
<david.vrabel@citrix.com>, <linux-kernel@vger.kernel.org>,
<Stefano.Stabellini@eu.citrix.com>,
<linux-arm-kernel@lists.infradead.org>,
Stefano Stabellini <stefano.stabellini@eu.citrix.com>,
<linux@arm.linux.org.uk>, <catalin.marinas@arm.com>,
<will.deacon@arm.com>
Subject: [PATCH v4 3/7] [RFC] arm/arm64: introduce is_dma_coherent
Date: Fri, 10 Oct 2014 12:51:44 +0100 [thread overview]
Message-ID: <1412941908-5850-3-git-send-email-stefano.stabellini@eu.citrix.com> (raw)
In-Reply-To: <alpine.DEB.2.02.1410101244090.17038@kaball.uk.xensource.com>
Introduce a function to check whether a device is dma coherent.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
CC: linux@arm.linux.org.uk
CC: catalin.marinas@arm.com
CC: will.deacon@arm.com
CC: linux-arm-kernel@lists.infradead.org
---
arch/arm/include/asm/dma-mapping.h | 6 ++++++
arch/arm64/include/asm/dma-mapping.h | 5 +++++
2 files changed, 11 insertions(+)
diff --git a/arch/arm/include/asm/dma-mapping.h b/arch/arm/include/asm/dma-mapping.h
index c45b61a..bededbb 100644
--- a/arch/arm/include/asm/dma-mapping.h
+++ b/arch/arm/include/asm/dma-mapping.h
@@ -126,6 +126,12 @@ static inline int set_arch_dma_coherent_ops(struct device *dev)
set_dma_ops(dev, &arm_coherent_dma_ops);
return 0;
}
+
+static inline bool is_dma_coherent(struct device *dev)
+{
+ return (__generic_dma_ops(dev) == &arm_coherent_dma_ops);
+}
+
#define set_arch_dma_coherent_ops(dev) set_arch_dma_coherent_ops(dev)
static inline dma_addr_t phys_to_dma(struct device *dev, phys_addr_t paddr)
diff --git a/arch/arm64/include/asm/dma-mapping.h b/arch/arm64/include/asm/dma-mapping.h
index dc82e52..d51d67e 100644
--- a/arch/arm64/include/asm/dma-mapping.h
+++ b/arch/arm64/include/asm/dma-mapping.h
@@ -52,6 +52,11 @@ static inline void set_dma_ops(struct device *dev, struct dma_map_ops *ops)
dev->archdata.dma_ops = ops;
}
+static inline bool is_dma_coherent(struct device *dev)
+{
+ return (__generic_dma_ops(dev) == &coherent_swiotlb_dma_ops);
+}
+
#include <asm-generic/dma-mapping-common.h>
static inline dma_addr_t phys_to_dma(struct device *dev, phys_addr_t paddr)
--
1.7.10.4
next prev parent reply other threads:[~2014-10-10 11:56 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-10 11:50 [PATCH v4 0/7] introduce GNTTABOP_cache_flush Stefano Stabellini
2014-10-10 11:51 ` [PATCH v4 1/7] xen/arm: remove handling of XENFEAT_grant_map_identity Stefano Stabellini
2014-10-20 15:14 ` Ian Campbell
2014-10-10 11:51 ` [PATCH v4 2/7] xen/arm: remove outer_*_range call Stefano Stabellini
2014-10-10 11:51 ` Stefano Stabellini [this message]
2014-10-10 12:07 ` [PATCH v4 3/7] [RFC] arm/arm64: introduce is_dma_coherent Will Deacon
2014-10-10 13:04 ` Stefano Stabellini
2014-10-13 11:16 ` Stefano Stabellini
2014-10-13 12:57 ` Will Deacon
2014-10-13 14:43 ` Stefano Stabellini
2014-10-22 16:04 ` Stefano Stabellini
2014-10-23 14:22 ` Stefano Stabellini
2014-10-24 10:47 ` Catalin Marinas
2014-10-24 11:39 ` Stefano Stabellini
2014-10-24 15:43 ` Catalin Marinas
2014-10-24 17:01 ` Stefano Stabellini
2014-10-24 17:29 ` Stefano Stabellini
2014-10-25 13:29 ` Stefano Stabellini
2014-10-25 15:40 ` Ian Campbell
2014-10-25 16:15 ` Stefano Stabellini
2014-10-27 11:02 ` [Xen-devel] " David Vrabel
2014-10-27 15:22 ` Stefano Stabellini
2014-10-10 11:51 ` [PATCH v4 4/7] xen/arm: use is_dma_coherent Stefano Stabellini
2014-10-20 15:18 ` Ian Campbell
2014-10-10 11:51 ` [PATCH v4 5/7] xen/arm/arm64: merge xen/mm32.c into xen/mm.c Stefano Stabellini
2014-10-20 15:19 ` Ian Campbell
2014-10-10 11:51 ` [PATCH v4 6/7] xen/arm/arm64: introduce xen_arch_need_swiotlb Stefano Stabellini
2014-10-14 16:03 ` Konrad Rzeszutek Wilk
2014-10-14 16:12 ` David Vrabel
2014-10-14 16:21 ` Konrad Rzeszutek Wilk
2014-10-10 11:51 ` [PATCH v4 7/7] xen/arm: introduce GNTTABOP_cache_flush Stefano Stabellini
2014-10-20 15:50 ` Ian Campbell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1412941908-5850-3-git-send-email-stefano.stabellini@eu.citrix.com \
--to=stefano.stabellini@eu.citrix.com \
--cc=Ian.Campbell@citrix.com \
--cc=catalin.marinas@arm.com \
--cc=david.vrabel@citrix.com \
--cc=konrad.wilk@oracle.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=will.deacon@arm.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®