All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>
Cc: "jroedel-l3A5Bk7waGM@public.gmane.org"
	<jroedel-l3A5Bk7waGM@public.gmane.org>,
	Heiko Stuebner <heiko-4mtYJXux2i+zQB+pC5nmwQ@public.gmane.org>,
	"arnd-r2nGTMty4D4@public.gmane.org"
	<arnd-r2nGTMty4D4@public.gmane.org>,
	"iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org"
	<iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>,
	Alexandre Courbot
	<acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>,
	"laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org"
	<laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>,
	"Varun.Sethi-KZfg59tc24xl57MIdRCFDg@public.gmane.org"
	<Varun.Sethi-KZfg59tc24xl57MIdRCFDg@public.gmane.org>,
	"dwmw2-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org"
	<dwmw2-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>,
	"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
	<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>
Subject: Re: [PATCH v6 8/8] arm: dma-mapping: plumb our iommu mapping ops into arch_setup_dma_ops
Date: Thu, 15 Jan 2015 09:28:44 +0100	[thread overview]
Message-ID: <20150115082843.GB30799@ulmo> (raw)
In-Reply-To: <20150114104610.GC4050-5wv7dgnIgG8@public.gmane.org>


[-- Attachment #1.1: Type: text/plain, Size: 3025 bytes --]

On Wed, Jan 14, 2015 at 10:46:10AM +0000, Will Deacon wrote:
> On Wed, Jan 14, 2015 at 09:00:24AM +0000, Alexandre Courbot wrote:
[...]
> > 2) Say you want to use the IOMMU API in your driver, and have an iommu 
> > property in your device's DT node. If by chance your IOMMU is registered 
> > early, you will already have a mapping automatically created even before 
> > your probe function is called. Can this be avoided? Is it even safe?
> 
> Currently, I think you have to either teardown the ops manually or return
> an error from of_xlate. Thierry was also looking at this sort of thing,
> so it might be worth talking to him.

I already explained in earlier threads why I think this is a bad idea.
It's completely unnatural for any driver to manually tear down something
that it didn't want set up in the first place. It also means that you
have to carefully audit any users of these IOMMU APIs to make sure that
they do tear down. That doesn't sound like a good incremental approach,
as evidenced by the breakage that Alex and Heiko have encountered.

The solution for me has been to completely side-step the issue and not
register the IOMMU with the new mechanism at all. That is, there's no
.of_xlate() implementation, which means that the ARM DMA API glue won't
try to be smart and use the IOMMU in ways it's not meant to be used.
This has several advantages, such as that I can also use the regular
driver model for suspend/resume of the IOMMU, and I get to enjoy the
benefits of devres in the IOMMU driver. Probe ordering is still a tiny
issue, but we can easily solve that using explicit initcall ordering
(which really isn't any worse than IOMMU_OF_DECLARE()).

Ideally of course I could use deferred probing to solve that. Hiroshi
and I posted patches to implement that over a year ago[0], but it was
mostly ignored after some, in my opinion, fruitful discussion.

That patch requires drivers to explicitly call iommu_attach() to
advertise that they want to use the IOMMU. This was done because a
previous attempt to call iommu_attach() from the driver core was
rejected on the sole argument that "it doesn't belong in the core",
without further explanation.

Note that with that approach things all happen at driver probe time, so
we can simply return -EPROBE_DEFER when the IOMMU isn't ready yet. At
the same time the IOMMU can be a regular driver just like any of the
other resource providers like clocks, regulators, etc.

That all said, I'm fine with the current situation, too. Nobody can
force the Tegra SMMU driver to register via IOMMU_OF_DECLARE() and I'm
actively recommending the use of the IOMMU API directly. That way we
get the control we need for drivers where it matters most (i.e. where
close control of the address space and switching of address spaces per
process are needed). Any other drivers, like USB or SDMMC simply use
the DMA API and get their buffers from a contiguous pool.

Thierry

[0]: https://lkml.org/lkml/2014/6/26/476

[-- Attachment #1.2: Type: application/pgp-signature, Size: 819 bytes --]

[-- Attachment #2: Type: text/plain, Size: 0 bytes --]



WARNING: multiple messages have this Message-ID (diff)
From: thierry.reding@gmail.com (Thierry Reding)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v6 8/8] arm: dma-mapping: plumb our iommu mapping ops into arch_setup_dma_ops
Date: Thu, 15 Jan 2015 09:28:44 +0100	[thread overview]
Message-ID: <20150115082843.GB30799@ulmo> (raw)
In-Reply-To: <20150114104610.GC4050@arm.com>

On Wed, Jan 14, 2015 at 10:46:10AM +0000, Will Deacon wrote:
> On Wed, Jan 14, 2015 at 09:00:24AM +0000, Alexandre Courbot wrote:
[...]
> > 2) Say you want to use the IOMMU API in your driver, and have an iommu 
> > property in your device's DT node. If by chance your IOMMU is registered 
> > early, you will already have a mapping automatically created even before 
> > your probe function is called. Can this be avoided? Is it even safe?
> 
> Currently, I think you have to either teardown the ops manually or return
> an error from of_xlate. Thierry was also looking at this sort of thing,
> so it might be worth talking to him.

I already explained in earlier threads why I think this is a bad idea.
It's completely unnatural for any driver to manually tear down something
that it didn't want set up in the first place. It also means that you
have to carefully audit any users of these IOMMU APIs to make sure that
they do tear down. That doesn't sound like a good incremental approach,
as evidenced by the breakage that Alex and Heiko have encountered.

The solution for me has been to completely side-step the issue and not
register the IOMMU with the new mechanism at all. That is, there's no
.of_xlate() implementation, which means that the ARM DMA API glue won't
try to be smart and use the IOMMU in ways it's not meant to be used.
This has several advantages, such as that I can also use the regular
driver model for suspend/resume of the IOMMU, and I get to enjoy the
benefits of devres in the IOMMU driver. Probe ordering is still a tiny
issue, but we can easily solve that using explicit initcall ordering
(which really isn't any worse than IOMMU_OF_DECLARE()).

Ideally of course I could use deferred probing to solve that. Hiroshi
and I posted patches to implement that over a year ago[0], but it was
mostly ignored after some, in my opinion, fruitful discussion.

That patch requires drivers to explicitly call iommu_attach() to
advertise that they want to use the IOMMU. This was done because a
previous attempt to call iommu_attach() from the driver core was
rejected on the sole argument that "it doesn't belong in the core",
without further explanation.

Note that with that approach things all happen at driver probe time, so
we can simply return -EPROBE_DEFER when the IOMMU isn't ready yet. At
the same time the IOMMU can be a regular driver just like any of the
other resource providers like clocks, regulators, etc.

That all said, I'm fine with the current situation, too. Nobody can
force the Tegra SMMU driver to register via IOMMU_OF_DECLARE() and I'm
actively recommending the use of the IOMMU API directly. That way we
get the control we need for drivers where it matters most (i.e. where
close control of the address space and switching of address spaces per
process are needed). Any other drivers, like USB or SDMMC simply use
the DMA API and get their buffers from a contiguous pool.

Thierry

[0]: https://lkml.org/lkml/2014/6/26/476
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20150115/7220303e/attachment.sig>

  parent reply	other threads:[~2015-01-15  8:28 UTC|newest]

Thread overview: 220+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-01 16:57 [PATCH v6 0/8] Introduce automatic DMA configuration for IOMMU masters Will Deacon
2014-12-01 16:57 ` Will Deacon
     [not found] ` <1417453034-21379-1-git-send-email-will.deacon-5wv7dgnIgG8@public.gmane.org>
2014-12-01 16:57   ` [PATCH v6 1/8] iommu: provide early initialisation hook for IOMMU drivers Will Deacon
2014-12-01 16:57     ` Will Deacon
     [not found]     ` <1417453034-21379-2-git-send-email-will.deacon-5wv7dgnIgG8@public.gmane.org>
2014-12-01 23:54       ` Rob Herring
2014-12-01 23:54         ` Rob Herring
     [not found]         ` <CAL_JsqKHvh9KSTYrrs1Pts5Kg=8dA1V6NiW57_2vdDH173qQGg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-12-02  9:23           ` Marek Szyprowski
2014-12-02  9:23             ` Marek Szyprowski
     [not found]             ` <547D84F4.8030204-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2014-12-02  9:36               ` Arnd Bergmann
2014-12-02  9:36                 ` Arnd Bergmann
2014-12-02  9:43                 ` Will Deacon
2014-12-02  9:43                   ` Will Deacon
2014-12-02 12:05                 ` Thierry Reding
2014-12-02 12:05                   ` Thierry Reding
2014-12-02 14:16           ` Grant Likely
2014-12-02 14:16             ` Grant Likely
     [not found]             ` <CACxGe6vyMkyE9ZRj_FQzi19ESEo7OV_RQoVV65xBYpdQV8cRGQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-12-03 19:57               ` Arnd Bergmann
2014-12-03 19:57                 ` Arnd Bergmann
2014-12-04  9:49                 ` Will Deacon
2014-12-04  9:49                   ` Will Deacon
     [not found]                   ` <20141204094953.GA13224-5wv7dgnIgG8@public.gmane.org>
2014-12-04 10:10                     ` Arnd Bergmann
2014-12-04 10:10                       ` Arnd Bergmann
2014-12-04 10:21                       ` Will Deacon
2014-12-04 10:21                         ` Will Deacon
     [not found]                         ` <20141204102127.GF13224-5wv7dgnIgG8@public.gmane.org>
2014-12-04 11:19                           ` Arnd Bergmann
2014-12-04 11:19                             ` Arnd Bergmann
2014-12-04 11:25                             ` Grant Likely
2014-12-04 11:25                               ` Grant Likely
     [not found]                               ` <CACxGe6v4ZVHHGcc3Lhp8+FgKakyCkJFRAT2ufj-3DGWa=wmGkA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-12-04 11:52                                 ` Will Deacon
2014-12-04 11:52                                   ` Will Deacon
     [not found]                                   ` <20141204115254.GF14519-5wv7dgnIgG8@public.gmane.org>
2014-12-04 12:43                                     ` Grant Likely
2014-12-04 12:43                                       ` Grant Likely
2014-12-04 12:26                 ` Robin Murphy
2014-12-04 12:26                   ` Robin Murphy
     [not found]                   ` <54805312.6000402-5wv7dgnIgG8@public.gmane.org>
2014-12-04 12:42                     ` Grant Likely
2014-12-04 12:42                       ` Grant Likely
     [not found]                       ` <CACxGe6uR5J4Cjdh_xYhBPoQRgeYwHPv5=AnuRmQKSD3yZrMK9Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-12-04 13:43                         ` Robin Murphy
2014-12-04 13:43                           ` Robin Murphy
     [not found]                           ` <54806504.20507-5wv7dgnIgG8@public.gmane.org>
2014-12-04 13:58                             ` Grant Likely
2014-12-04 13:58                               ` Grant Likely
2014-12-04 14:49                             ` Thierry Reding
2014-12-04 14:49                               ` Thierry Reding
     [not found]                               ` <20141204144925.GB31464-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2014-12-04 17:42                                 ` Robin Murphy
2014-12-04 17:42                                   ` Robin Murphy
     [not found]                                   ` <54809D09.2050406-5wv7dgnIgG8@public.gmane.org>
2014-12-04 17:58                                     ` Grant Likely
2014-12-04 17:58                                       ` Grant Likely
     [not found]                                       ` <CACxGe6tpFHdP1-5NWiNVAqzXx-diN1xfRbu0AQDyVJ6AU_4RXg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-12-04 19:42                                         ` Robin Murphy
2014-12-04 19:42                                           ` Robin Murphy
     [not found]                                           ` <5480B924.2010205-5wv7dgnIgG8@public.gmane.org>
2014-12-05 12:10                                             ` Will Deacon
2014-12-05 12:10                                               ` Will Deacon
     [not found]                                               ` <20141205121037.GI1630-5wv7dgnIgG8@public.gmane.org>
2014-12-05 12:21                                                 ` Arnd Bergmann
2014-12-05 12:21                                                   ` Arnd Bergmann
2014-12-05 12:35                                                 ` Robin Murphy
2014-12-05 12:35                                                   ` Robin Murphy
     [not found]                                                   ` <5481A688.4030606-5wv7dgnIgG8@public.gmane.org>
2014-12-05 13:06                                                     ` Grant Likely
2014-12-05 13:06                                                       ` Grant Likely
     [not found]                                                       ` <CACxGe6vppOQj-hJnqEEtLwDuSr4bzcbTgEFj8=x4ULu=yxswpg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-12-05 13:18                                                         ` Thierry Reding
2014-12-05 13:18                                                           ` Thierry Reding
     [not found]                                                           ` <20141205131815.GA18747-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2014-12-05 13:21                                                             ` Grant Likely
2014-12-05 13:21                                                               ` Grant Likely
     [not found]                                                               ` <CACxGe6vqstoCBiJ7TLvhNt+40TUJRB2ORoRKKtorhM-ETHXu0A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-12-05 13:31                                                                 ` Thierry Reding
2014-12-05 13:31                                                                   ` Thierry Reding
2014-12-05 13:49                                                             ` Marek Szyprowski
2014-12-05 13:49                                                               ` Marek Szyprowski
2014-12-04 12:51                     ` Arnd Bergmann
2014-12-04 12:51                       ` Arnd Bergmann
2014-12-02 10:30         ` Pantelis Antoniou
2014-12-02 10:30           ` Pantelis Antoniou
2014-12-01 16:57   ` [PATCH v6 2/8] dma-mapping: replace set_arch_dma_coherent_ops with arch_setup_dma_ops Will Deacon
2014-12-01 16:57     ` Will Deacon
     [not found]     ` <1417453034-21379-3-git-send-email-will.deacon-5wv7dgnIgG8@public.gmane.org>
2014-12-01 22:58       ` Rob Herring
2014-12-01 22:58         ` Rob Herring
     [not found]         ` <CAL_JsqLtN3euwXHM4BzYxkXsgE=Dmn05aXzL+kr_8x23voneZA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-12-02  9:16           ` Arnd Bergmann
2014-12-02  9:16             ` Arnd Bergmann
2014-12-01 16:57   ` [PATCH v6 3/8] iommu: add new iommu_ops callback for adding an OF device Will Deacon
2014-12-01 16:57     ` Will Deacon
2014-12-01 16:57   ` [PATCH v6 4/8] iommu: provide helper function to configure an IOMMU for an of master Will Deacon
2014-12-01 16:57     ` Will Deacon
2014-12-01 16:57   ` [PATCH v6 5/8] iommu: fix initialization without 'add_device' callback Will Deacon
2014-12-01 16:57     ` Will Deacon
2014-12-01 16:57   ` [PATCH v6 6/8] dma-mapping: detect and configure IOMMU in of_dma_configure Will Deacon
2014-12-01 16:57     ` Will Deacon
     [not found]     ` <1417453034-21379-7-git-send-email-will.deacon-5wv7dgnIgG8@public.gmane.org>
2014-12-01 23:06       ` Rob Herring
2014-12-01 23:06         ` Rob Herring
2014-12-10 14:52       ` Rob Clark
2014-12-10 14:52         ` Rob Clark
     [not found]         ` <CAF6AEGs6dZauq1QxY_OqBPUs0xHYjjGTi+H7Vm-mNvJtmTAHRA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-12-10 15:08           ` Will Deacon
2014-12-10 15:08             ` Will Deacon
     [not found]             ` <20141210150853.GH23639-5wv7dgnIgG8@public.gmane.org>
2014-12-10 15:54               ` Robin Murphy
2014-12-10 15:54                 ` Robin Murphy
     [not found]                 ` <54886CA2.3040406-5wv7dgnIgG8@public.gmane.org>
2014-12-10 15:56                   ` Laurent Pinchart
2014-12-10 15:56                     ` Laurent Pinchart
2014-12-14 15:49               ` Laurent Pinchart
2014-12-14 15:49                 ` Laurent Pinchart
2014-12-14 15:59                 ` Laurent Pinchart
2014-12-14 15:59                   ` Laurent Pinchart
2014-12-15 17:10                   ` Will Deacon
2014-12-15 17:10                     ` Will Deacon
2014-12-15 16:40                 ` Will Deacon
2014-12-15 16:40                   ` Will Deacon
     [not found]                   ` <20141215164041.GN20738-5wv7dgnIgG8@public.gmane.org>
2014-12-15 17:16                     ` Laurent Pinchart
2014-12-15 17:16                       ` Laurent Pinchart
2014-12-15 18:09                       ` Will Deacon
2014-12-15 18:09                         ` Will Deacon
     [not found]                         ` <20141215180933.GW20738-5wv7dgnIgG8@public.gmane.org>
2014-12-16 12:08                           ` Arnd Bergmann
2014-12-16 12:08                             ` Arnd Bergmann
2014-12-17 12:09                             ` Will Deacon
2014-12-17 12:09                               ` Will Deacon
     [not found]                               ` <20141217120948.GB870-5wv7dgnIgG8@public.gmane.org>
2014-12-17 14:15                                 ` Arnd Bergmann
2014-12-17 14:15                                   ` Arnd Bergmann
2014-12-17 14:45                                   ` Will Deacon
2014-12-17 14:45                                     ` Will Deacon
2014-12-17 15:35                                     ` Arnd Bergmann
2014-12-17 15:35                                       ` Arnd Bergmann
2014-12-17 17:17                                       ` Will Deacon
2014-12-17 17:17                                         ` Will Deacon
     [not found]                                         ` <20141217171752.GB30307-5wv7dgnIgG8@public.gmane.org>
2014-12-17 19:48                                           ` Arnd Bergmann
2014-12-17 19:48                                             ` Arnd Bergmann
2014-12-21 10:04                                             ` Will Deacon
2014-12-21 10:04                                               ` Will Deacon
     [not found]                                               ` <20141221100451.GA23242-5wv7dgnIgG8@public.gmane.org>
2014-12-22 13:36                                                 ` Arnd Bergmann
2014-12-22 13:36                                                   ` Arnd Bergmann
2015-01-07 18:57                                                   ` Will Deacon
2015-01-07 18:57                                                     ` Will Deacon
     [not found]                                                     ` <20150107185704.GV7485-5wv7dgnIgG8@public.gmane.org>
2015-01-07 19:29                                                       ` Arnd Bergmann
2015-01-07 19:29                                                         ` Arnd Bergmann
2015-01-08 10:53                                                         ` Will Deacon
2015-01-08 10:53                                                           ` Will Deacon
2014-12-17 14:27                                 ` Robin Murphy
2014-12-17 14:27                                   ` Robin Murphy
     [not found]                                   ` <549192D2.10008-5wv7dgnIgG8@public.gmane.org>
2014-12-17 15:01                                     ` Will Deacon
2014-12-17 15:01                                       ` Will Deacon
     [not found]                                       ` <20141217150158.GF870-5wv7dgnIgG8@public.gmane.org>
2014-12-17 15:38                                         ` Arnd Bergmann
2014-12-17 15:38                                           ` Arnd Bergmann
2014-12-17 17:20                                           ` Will Deacon
2014-12-17 17:20                                             ` Will Deacon
2014-12-17  0:05                           ` Laurent Pinchart
2014-12-17  0:05                             ` Laurent Pinchart
2014-12-14 15:51       ` Laurent Pinchart
2014-12-14 15:51         ` Laurent Pinchart
2014-12-15 11:32         ` Will Deacon
2014-12-15 11:32           ` Will Deacon
     [not found]           ` <20141215113252.GH20738-5wv7dgnIgG8@public.gmane.org>
2014-12-17  0:19             ` Laurent Pinchart
2014-12-17  0:19               ` Laurent Pinchart
2014-12-17 11:14               ` Will Deacon
2014-12-17 11:14                 ` Will Deacon
2014-12-01 16:57   ` [PATCH v6 7/8] arm: call iommu_init before of_platform_populate Will Deacon
2014-12-01 16:57     ` Will Deacon
2014-12-01 16:57   ` [PATCH v6 8/8] arm: dma-mapping: plumb our iommu mapping ops into arch_setup_dma_ops Will Deacon
2014-12-01 16:57     ` Will Deacon
     [not found]     ` <1417453034-21379-9-git-send-email-will.deacon-5wv7dgnIgG8@public.gmane.org>
2015-01-14  9:00       ` Alexandre Courbot
2015-01-14  9:00         ` Alexandre Courbot
     [not found]         ` <54B63028.3090701-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-01-14 10:46           ` Will Deacon
2015-01-14 10:46             ` Will Deacon
2015-01-14 13:51             ` Heiko Stübner
2015-01-14 13:51               ` Heiko Stübner
2015-01-14 19:17               ` Will Deacon
2015-01-14 19:17                 ` Will Deacon
     [not found]                 ` <20150114191749.GL4050-5wv7dgnIgG8@public.gmane.org>
2015-01-15  8:30                   ` Thierry Reding
2015-01-15  8:30                     ` Thierry Reding
2015-01-15 11:13                     ` Will Deacon
2015-01-15 11:13                       ` Will Deacon
     [not found]             ` <20150114104610.GC4050-5wv7dgnIgG8@public.gmane.org>
2015-01-15  2:57               ` Alexandre Courbot
2015-01-15  2:57                 ` Alexandre Courbot
2015-01-15  8:28               ` Thierry Reding [this message]
2015-01-15  8:28                 ` Thierry Reding
2015-01-15 11:12                 ` Will Deacon
2015-01-15 11:12                   ` Will Deacon
     [not found]                   ` <20150115111211.GF23475-5wv7dgnIgG8@public.gmane.org>
2015-01-15 23:18                     ` Laurent Pinchart
2015-01-15 23:18                       ` Laurent Pinchart
2015-01-18  6:54                       ` Alexandre Courbot
2015-01-18  6:54                         ` Alexandre Courbot
     [not found]                         ` <54BB58AA.5070407-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org>
2015-01-18 11:18                           ` Laurent Pinchart
2015-01-18 11:18                             ` Laurent Pinchart
2015-01-19 11:12                             ` Will Deacon
2015-01-19 11:12                               ` Will Deacon
     [not found]                               ` <20150119111202.GD32131-5wv7dgnIgG8@public.gmane.org>
2015-01-19 11:34                                 ` Laurent Pinchart
2015-01-19 11:34                                   ` Laurent Pinchart
2015-01-19 12:31                                   ` Thierry Reding
2015-01-19 12:31                                     ` Thierry Reding
     [not found]                                     ` <20150119123058.GA7312-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2015-01-20 15:14                                       ` Laurent Pinchart
2015-01-20 15:14                                         ` Laurent Pinchart
2015-01-20 15:19                                         ` Will Deacon
2015-01-20 15:19                                           ` Will Deacon
     [not found]                                           ` <20150120151910.GD1549-5wv7dgnIgG8@public.gmane.org>
2015-01-20 15:21                                             ` Will Deacon
2015-01-20 15:21                                               ` Will Deacon
2015-01-20 15:35                                             ` Laurent Pinchart
2015-01-20 15:35                                               ` Laurent Pinchart
2015-01-19 12:43                             ` Thierry Reding
2015-01-19 12:43                               ` Thierry Reding
     [not found]                               ` <20150119124305.GC7312-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2015-01-19 12:50                                 ` Will Deacon
2015-01-19 12:50                                   ` Will Deacon
     [not found]                                   ` <20150119125051.GI32131-5wv7dgnIgG8@public.gmane.org>
2015-01-19 13:36                                     ` Thierry Reding
2015-01-19 13:36                                       ` Thierry Reding
     [not found]                                       ` <20150119133633.GA23778-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2015-01-20 13:50                                         ` Laurent Pinchart
2015-01-20 13:50                                           ` Laurent Pinchart
2015-01-19 16:13                             ` Arnd Bergmann
2015-01-19 16:13                               ` Arnd Bergmann
2015-01-20 16:41                               ` Laurent Pinchart
2015-01-20 16:41                                 ` Laurent Pinchart
2015-01-19 12:36                       ` Thierry Reding
2015-01-19 12:36                         ` Thierry Reding
     [not found]                         ` <20150119123623.GB7312-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2015-01-19 15:52                           ` Arnd Bergmann
2015-01-19 15:52                             ` Arnd Bergmann
2015-01-19 16:21                             ` Thierry Reding
2015-01-19 16:21                               ` Thierry Reding
     [not found]                               ` <20150119162111.GA7751-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2015-01-19 17:02                                 ` Arnd Bergmann
2015-01-19 17:02                                   ` Arnd Bergmann
2015-01-20 13:47                                 ` Laurent Pinchart
2015-01-20 13:47                                   ` Laurent Pinchart
2015-01-19 12:49                       ` Thierry Reding
2015-01-19 12:49                         ` Thierry Reding
     [not found]                         ` <20150119124934.GD7312-AwZRO8vwLAwmlAP/+Wk3EA@public.gmane.org>
2015-01-20 14:05                           ` Laurent Pinchart
2015-01-20 14:05                             ` Laurent Pinchart
2014-12-05  7:12   ` [PATCH v6 0/8] Introduce automatic DMA configuration for IOMMU masters Olof Johansson
2014-12-05  7:12     ` Olof Johansson
     [not found]     ` <CAOesGMg9BpL3AyDjuAvH_H5fOm-uga+_CZuJZ5p8zpHpJLg0qA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-12-05 12:11       ` Will Deacon
2014-12-05 12:11         ` Will Deacon
2014-12-15  0:24   ` [PATCH/RFC] iommu/ipmmu-vmsa: Use DT-based instantiation Laurent Pinchart
2014-12-15  0:24     ` Laurent Pinchart

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=20150115082843.GB30799@ulmo \
    --to=thierry.reding-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=Varun.Sethi-KZfg59tc24xl57MIdRCFDg@public.gmane.org \
    --cc=acourbot-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org \
    --cc=arnd-r2nGTMty4D4@public.gmane.org \
    --cc=dwmw2-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org \
    --cc=heiko-4mtYJXux2i+zQB+pC5nmwQ@public.gmane.org \
    --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=jroedel-l3A5Bk7waGM@public.gmane.org \
    --cc=laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=will.deacon-5wv7dgnIgG8@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.