All of lore.kernel.org
 help / color / mirror / Atom feed
From: konrad.wilk@oracle.com (Konrad Rzeszutek Wilk)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH RFC 1/8] arm: make SWIOTLB available
Date: Fri, 2 Aug 2013 08:13:40 -0400	[thread overview]
Message-ID: <20130802121340.GH24540@konrad-lan.dumpdata.com> (raw)
In-Reply-To: <alpine.DEB.2.02.1308021250050.4893@kaball.uk.xensource.com>

On Fri, Aug 02, 2013 at 12:59:00PM +0100, Stefano Stabellini wrote:
> On Wed, 31 Jul 2013, Konrad Rzeszutek Wilk wrote:
> > Stefano Stabellini <stefano.stabellini@eu.citrix.com> wrote:
> > >Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> > >CC: will.deacon at arm.com
> > >CC: linux at arm.linux.org.uk
> > >---
> > > arch/arm/Kconfig                   |    7 +++++++
> > > arch/arm/include/asm/dma-mapping.h |   24 ++++++++++++++++++++++++
> > > 2 files changed, 31 insertions(+), 0 deletions(-)
> > >
> > >diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > >index ba412e0..05125ab 100644
> > >--- a/arch/arm/Kconfig
> > >+++ b/arch/arm/Kconfig
> > >@@ -1832,6 +1832,13 @@ config CC_STACKPROTECTOR
> > > 	  neutralized via a kernel panic.
> > > 	  This feature requires gcc version 4.2 or above.
> > > 
> > >+config SWIOTLB
> > >+	def_bool y
> > >+	select NEED_SG_DMA_LENGTH
> > >+
> > >+config IOMMU_HELPER
> > >+	def_bool SWIOTLB
> > >+
> > 
> > Could you explain the purpose of these two a bit more please? 
> 
> SWIOTLB is not available on arm at the moment.
> We need to make it available, otherwise SWIOTLB_XEN won't be able to
> select it.
> 
> Similarly, IOMMU_HELPER is another lib Kconfig symbol needed by SWIOTLB
> to compile.

I was more curious about the NEED_SG_DMA_LENGTH and IOMMU_HELPER.
I think the NEED_SG_DMA_LENGTH is optional? Or does SWIOTLB complain
about? I do recall seeing a patch for this at some point but it was
malformed. It was just changing SWIOTLB to use a macro for
sg->dma_length or such.

But the IOMMU_HELPER? That seems odds as the DMA API (which as you know
is what SWIOTLB hooks up to) is _below_ the IOMMU API.  Ah, it is 
'iommu_is_span_boundary' function.  Gotcha.

Could you mention that in the git commit please? Just say that SWIOTLB
uses some of the common code that IOMMU API uses - which is in the
lib/iommu_helper.c hence the need for that.

And for the NEED_SG_DMA_LENGTH let me dig up the patch at some point and
send it your way so you can make it part of this series.

WARNING: multiple messages have this Message-ID (diff)
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: xen-devel@lists.xensource.com, linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, Ian.Campbell@citrix.com,
	will.deacon@arm.com, linux@arm.linux.org.uk
Subject: Re: [PATCH RFC 1/8] arm: make SWIOTLB available
Date: Fri, 2 Aug 2013 08:13:40 -0400	[thread overview]
Message-ID: <20130802121340.GH24540@konrad-lan.dumpdata.com> (raw)
In-Reply-To: <alpine.DEB.2.02.1308021250050.4893@kaball.uk.xensource.com>

On Fri, Aug 02, 2013 at 12:59:00PM +0100, Stefano Stabellini wrote:
> On Wed, 31 Jul 2013, Konrad Rzeszutek Wilk wrote:
> > Stefano Stabellini <stefano.stabellini@eu.citrix.com> wrote:
> > >Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> > >CC: will.deacon@arm.com
> > >CC: linux@arm.linux.org.uk
> > >---
> > > arch/arm/Kconfig                   |    7 +++++++
> > > arch/arm/include/asm/dma-mapping.h |   24 ++++++++++++++++++++++++
> > > 2 files changed, 31 insertions(+), 0 deletions(-)
> > >
> > >diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > >index ba412e0..05125ab 100644
> > >--- a/arch/arm/Kconfig
> > >+++ b/arch/arm/Kconfig
> > >@@ -1832,6 +1832,13 @@ config CC_STACKPROTECTOR
> > > 	  neutralized via a kernel panic.
> > > 	  This feature requires gcc version 4.2 or above.
> > > 
> > >+config SWIOTLB
> > >+	def_bool y
> > >+	select NEED_SG_DMA_LENGTH
> > >+
> > >+config IOMMU_HELPER
> > >+	def_bool SWIOTLB
> > >+
> > 
> > Could you explain the purpose of these two a bit more please? 
> 
> SWIOTLB is not available on arm at the moment.
> We need to make it available, otherwise SWIOTLB_XEN won't be able to
> select it.
> 
> Similarly, IOMMU_HELPER is another lib Kconfig symbol needed by SWIOTLB
> to compile.

I was more curious about the NEED_SG_DMA_LENGTH and IOMMU_HELPER.
I think the NEED_SG_DMA_LENGTH is optional? Or does SWIOTLB complain
about? I do recall seeing a patch for this at some point but it was
malformed. It was just changing SWIOTLB to use a macro for
sg->dma_length or such.

But the IOMMU_HELPER? That seems odds as the DMA API (which as you know
is what SWIOTLB hooks up to) is _below_ the IOMMU API.  Ah, it is 
'iommu_is_span_boundary' function.  Gotcha.

Could you mention that in the git commit please? Just say that SWIOTLB
uses some of the common code that IOMMU API uses - which is in the
lib/iommu_helper.c hence the need for that.

And for the NEED_SG_DMA_LENGTH let me dig up the patch at some point and
send it your way so you can make it part of this series.



WARNING: multiple messages have this Message-ID (diff)
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: xen-devel@lists.xensource.com, linux@arm.linux.org.uk,
	Ian.Campbell@citrix.com, will.deacon@arm.com,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH RFC 1/8] arm: make SWIOTLB available
Date: Fri, 2 Aug 2013 08:13:40 -0400	[thread overview]
Message-ID: <20130802121340.GH24540@konrad-lan.dumpdata.com> (raw)
In-Reply-To: <alpine.DEB.2.02.1308021250050.4893@kaball.uk.xensource.com>

On Fri, Aug 02, 2013 at 12:59:00PM +0100, Stefano Stabellini wrote:
> On Wed, 31 Jul 2013, Konrad Rzeszutek Wilk wrote:
> > Stefano Stabellini <stefano.stabellini@eu.citrix.com> wrote:
> > >Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
> > >CC: will.deacon@arm.com
> > >CC: linux@arm.linux.org.uk
> > >---
> > > arch/arm/Kconfig                   |    7 +++++++
> > > arch/arm/include/asm/dma-mapping.h |   24 ++++++++++++++++++++++++
> > > 2 files changed, 31 insertions(+), 0 deletions(-)
> > >
> > >diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
> > >index ba412e0..05125ab 100644
> > >--- a/arch/arm/Kconfig
> > >+++ b/arch/arm/Kconfig
> > >@@ -1832,6 +1832,13 @@ config CC_STACKPROTECTOR
> > > 	  neutralized via a kernel panic.
> > > 	  This feature requires gcc version 4.2 or above.
> > > 
> > >+config SWIOTLB
> > >+	def_bool y
> > >+	select NEED_SG_DMA_LENGTH
> > >+
> > >+config IOMMU_HELPER
> > >+	def_bool SWIOTLB
> > >+
> > 
> > Could you explain the purpose of these two a bit more please? 
> 
> SWIOTLB is not available on arm at the moment.
> We need to make it available, otherwise SWIOTLB_XEN won't be able to
> select it.
> 
> Similarly, IOMMU_HELPER is another lib Kconfig symbol needed by SWIOTLB
> to compile.

I was more curious about the NEED_SG_DMA_LENGTH and IOMMU_HELPER.
I think the NEED_SG_DMA_LENGTH is optional? Or does SWIOTLB complain
about? I do recall seeing a patch for this at some point but it was
malformed. It was just changing SWIOTLB to use a macro for
sg->dma_length or such.

But the IOMMU_HELPER? That seems odds as the DMA API (which as you know
is what SWIOTLB hooks up to) is _below_ the IOMMU API.  Ah, it is 
'iommu_is_span_boundary' function.  Gotcha.

Could you mention that in the git commit please? Just say that SWIOTLB
uses some of the common code that IOMMU API uses - which is in the
lib/iommu_helper.c hence the need for that.

And for the NEED_SG_DMA_LENGTH let me dig up the patch at some point and
send it your way so you can make it part of this series.

  reply	other threads:[~2013-08-02 12:13 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-31 17:44 [PATCH RFC 0/8] enable swiotlb-xen on arm and arm64 Stefano Stabellini
2013-07-31 17:44 ` Stefano Stabellini
2013-07-31 17:44 ` Stefano Stabellini
2013-07-31 17:45 ` [PATCH RFC 1/8] arm: make SWIOTLB available Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-08-01  0:32   ` Konrad Rzeszutek Wilk
2013-08-01  0:32     ` Konrad Rzeszutek Wilk
2013-08-01  0:32     ` Konrad Rzeszutek Wilk
2013-08-02 11:59     ` Stefano Stabellini
2013-08-02 11:59       ` Stefano Stabellini
2013-08-02 11:59       ` Stefano Stabellini
2013-08-02 12:13       ` Konrad Rzeszutek Wilk [this message]
2013-08-02 12:13         ` Konrad Rzeszutek Wilk
2013-08-02 12:13         ` Konrad Rzeszutek Wilk
2013-08-02 12:18         ` Stefano Stabellini
2013-08-02 12:18           ` Stefano Stabellini
2013-08-02 12:18           ` Stefano Stabellini
2013-08-01 11:09   ` Russell King - ARM Linux
2013-08-01 11:09     ` Russell King - ARM Linux
2013-08-02 12:09     ` Stefano Stabellini
2013-08-02 12:09       ` Stefano Stabellini
2013-08-02 12:09       ` Stefano Stabellini
2013-07-31 17:45 ` [PATCH RFC 2/8] arm: introduce a global dma_ops pointer Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 17:45 ` [PATCH RFC 3/8] arm64: do not initialize arm64_swiotlb if dma_ops is already set Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 17:45 ` [PATCH RFC 4/8] xen/arm,arm64: move Xen initialization earlier Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-08-01  0:35   ` Konrad Rzeszutek Wilk
2013-08-01  0:35     ` Konrad Rzeszutek Wilk
2013-08-01  0:35     ` Konrad Rzeszutek Wilk
2013-07-31 17:45 ` [PATCH RFC 5/8] xen: introduce XENMEM_get_dma_buf and xen_put_dma_buf Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-08-01  0:36   ` Konrad Rzeszutek Wilk
2013-08-01  0:36     ` Konrad Rzeszutek Wilk
2013-08-01  0:36     ` Konrad Rzeszutek Wilk
2013-08-01 15:13     ` Stefano Stabellini
2013-08-01 15:13       ` Stefano Stabellini
2013-08-01 15:13       ` Stefano Stabellini
2013-07-31 17:45 ` [PATCH RFC 6/8] xen: make xen_create_contiguous_region return the dma address Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-08-01 11:34   ` David Vrabel
2013-08-01 11:34     ` David Vrabel
2013-08-01 11:34     ` David Vrabel
2013-07-31 17:45 ` [PATCH RFC 7/8] swiotlb-xen: support autotranslate guests Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 19:03   ` Stefano Stabellini
2013-07-31 19:03     ` Stefano Stabellini
2013-07-31 19:03     ` Stefano Stabellini
2013-08-02 12:37   ` Konrad Rzeszutek Wilk
2013-08-02 12:37     ` Konrad Rzeszutek Wilk
2013-08-02 12:37     ` Konrad Rzeszutek Wilk
2013-08-02 16:12     ` Stefano Stabellini
2013-08-02 16:12       ` Stefano Stabellini
2013-08-02 16:12       ` Stefano Stabellini
2013-07-31 17:45 ` [PATCH RFC 8/8] xen/arm,arm64: enable SWIOTLB_XEN Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-07-31 17:45   ` Stefano Stabellini
2013-08-02 12:40   ` Konrad Rzeszutek Wilk
2013-08-02 12:40     ` Konrad Rzeszutek Wilk
2013-08-02 16:25     ` Stefano Stabellini
2013-08-02 16:25       ` Stefano Stabellini
2013-08-02 16:25       ` Stefano Stabellini
2013-07-31 19:44 ` [PATCH RFC 0/8] enable swiotlb-xen on arm and arm64 Stefano Stabellini
2013-07-31 19:44   ` Stefano Stabellini
2013-07-31 19:44   ` Stefano Stabellini

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=20130802121340.GH24540@konrad-lan.dumpdata.com \
    --to=konrad.wilk@oracle.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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 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.