All of lore.kernel.org
 help / color / mirror / Atom feed
From: Robin Murphy <robin.murphy-5wv7dgnIgG8@public.gmane.org>
To: Joerg Roedel <joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
Cc: "laurent.pinchart+renesas-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org"
	<laurent.pinchart+renesas-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>,
	"arnd-r2nGTMty4D4@public.gmane.org"
	<arnd-r2nGTMty4D4@public.gmane.org>,
	Catalin Marinas <Catalin.Marinas-5wv7dgnIgG8@public.gmane.org>,
	Will Deacon <Will.Deacon-5wv7dgnIgG8@public.gmane.org>,
	"iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org"
	<iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>,
	"djkurtz-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org"
	<djkurtz-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>,
	"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
	<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
	"thunder.leizhen-hv44wF8Li93QT0dZR+AlfA@public.gmane.org"
	<thunder.leizhen-hv44wF8Li93QT0dZR+AlfA@public.gmane.org>,
	"yingjoe.chen-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org"
	<yingjoe.chen-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org>,
	"treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org"
	<treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	"yong.wu-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org"
	<yong.wu-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org>
Subject: Re: [PATCH v4 0/4] arm64: IOMMU-backed DMA mapping
Date: Mon, 20 Jul 2015 18:23:35 +0100	[thread overview]
Message-ID: <55AD2E97.1040901@arm.com> (raw)
In-Reply-To: <20150720152637.GD10969-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>

Hi Joerg,

On 20/07/15 16:26, Joerg Roedel wrote:
> On Thu, Jul 16, 2015 at 07:40:11PM +0100, Robin Murphy wrote:
>>   arch/arm64/Kconfig                   |   1 +
>>   arch/arm64/include/asm/dma-mapping.h |  15 +-
>>   arch/arm64/mm/dma-mapping.c          | 452 +++++++++++++++++++++++++++++
>
> What happened to the plan to merge this with the existing iommu-based
> dma-api implementation for 32 bit ARM?

The issue currently is that there are a bunch of drivers using the 
exported arm_iommu_* functions directly. From what I can tell, they seem 
like they could probably all be converted to using default domains 
and/or the new domain type abstractions via the core IOMMU API, which 
would then allow killing off dma_iommu_mapping and rewriting the 
arch/arm implementation to use the new shared code. I don't currently 
have any 32-bit platform to test with, so I'm a little dubious of taking 
that all on myself right now.

In the meantime on arm64, DMA mapping ops are needed for SMMUv3 platform 
device support, the Mediatek M4U patches and my own SMMUv2 work, so it 
would be very useful to get the arm64 and common code in as a first 
step, then look at cleaning up arch/arm for 4.4 without dangling 
dependencies.

Robin.

>
>
> 	Joerg
>

WARNING: multiple messages have this Message-ID (diff)
From: robin.murphy@arm.com (Robin Murphy)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 0/4] arm64: IOMMU-backed DMA mapping
Date: Mon, 20 Jul 2015 18:23:35 +0100	[thread overview]
Message-ID: <55AD2E97.1040901@arm.com> (raw)
In-Reply-To: <20150720152637.GD10969@8bytes.org>

Hi Joerg,

On 20/07/15 16:26, Joerg Roedel wrote:
> On Thu, Jul 16, 2015 at 07:40:11PM +0100, Robin Murphy wrote:
>>   arch/arm64/Kconfig                   |   1 +
>>   arch/arm64/include/asm/dma-mapping.h |  15 +-
>>   arch/arm64/mm/dma-mapping.c          | 452 +++++++++++++++++++++++++++++
>
> What happened to the plan to merge this with the existing iommu-based
> dma-api implementation for 32 bit ARM?

The issue currently is that there are a bunch of drivers using the 
exported arm_iommu_* functions directly. From what I can tell, they seem 
like they could probably all be converted to using default domains 
and/or the new domain type abstractions via the core IOMMU API, which 
would then allow killing off dma_iommu_mapping and rewriting the 
arch/arm implementation to use the new shared code. I don't currently 
have any 32-bit platform to test with, so I'm a little dubious of taking 
that all on myself right now.

In the meantime on arm64, DMA mapping ops are needed for SMMUv3 platform 
device support, the Mediatek M4U patches and my own SMMUv2 work, so it 
would be very useful to get the arm64 and common code in as a first 
step, then look at cleaning up arch/arm for 4.4 without dangling 
dependencies.

Robin.

>
>
> 	Joerg
>

  parent reply	other threads:[~2015-07-20 17:23 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-16 18:40 [PATCH v4 0/4] arm64: IOMMU-backed DMA mapping Robin Murphy
2015-07-16 18:40 ` Robin Murphy
     [not found] ` <cover.1437070995.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2015-07-16 18:40   ` [PATCH v4 1/4] iommu/iova: Avoid over-allocating when size-aligned Robin Murphy
2015-07-16 18:40     ` Robin Murphy
     [not found]     ` <35cb877828b570db84e89684ef76308cd1857f0c.1437070995.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2015-07-28 13:31       ` David Woodhouse
2015-07-28 13:31         ` David Woodhouse
2015-07-16 18:40   ` [PATCH v4 2/4] iommu: Implement common IOMMU ops for DMA mapping Robin Murphy
2015-07-16 18:40     ` Robin Murphy
     [not found]     ` <00fb13713dc8a69dc32b859f9311e70d78fb0c7a.1437070995.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2015-07-28 16:45       ` Catalin Marinas
2015-07-28 16:45         ` Catalin Marinas
2015-07-16 18:40   ` [PATCH v4 3/4] arm64: Add IOMMU dma_ops Robin Murphy
2015-07-16 18:40     ` Robin Murphy
     [not found]     ` <f51a6dfad1367107b07ca43624a990a62f3d4f3c.1437070995.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2015-07-28 17:27       ` Catalin Marinas
2015-07-28 17:27         ` Catalin Marinas
2015-07-16 18:40   ` [PATCH v4 4/4] arm64: Hook up " Robin Murphy
2015-07-16 18:40     ` Robin Murphy
     [not found]     ` <fecbcc50e62ae86639c886ab86e4ec067d52b16a.1437070995.git.robin.murphy-5wv7dgnIgG8@public.gmane.org>
2015-07-28 17:30       ` Catalin Marinas
2015-07-28 17:30         ` Catalin Marinas
2015-07-20 15:26   ` [PATCH v4 0/4] arm64: IOMMU-backed DMA mapping Joerg Roedel
2015-07-20 15:26     ` Joerg Roedel
     [not found]     ` <20150720152637.GD10969-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
2015-07-20 17:23       ` Robin Murphy [this message]
2015-07-20 17:23         ` Robin Murphy
     [not found]         ` <55AD2E97.1040901-5wv7dgnIgG8@public.gmane.org>
2015-07-28 12:46           ` Will Deacon
2015-07-28 12:46             ` Will Deacon

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=55AD2E97.1040901@arm.com \
    --to=robin.murphy-5wv7dgnigg8@public.gmane.org \
    --cc=Catalin.Marinas-5wv7dgnIgG8@public.gmane.org \
    --cc=Will.Deacon-5wv7dgnIgG8@public.gmane.org \
    --cc=arnd-r2nGTMty4D4@public.gmane.org \
    --cc=djkurtz-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org \
    --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=joro-zLv9SwRftAIdnm+yROfE0A@public.gmane.org \
    --cc=laurent.pinchart+renesas-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=thunder.leizhen-hv44wF8Li93QT0dZR+AlfA@public.gmane.org \
    --cc=treding-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=yingjoe.chen-NuS5LvNUpcJWk0Htik3J/w@public.gmane.org \
    --cc=yong.wu-NuS5LvNUpcJWk0Htik3J/w@public.gmane.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.