All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thierry Reding <thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>
Cc: Mark Rutland <Mark.Rutland-5wv7dgnIgG8@public.gmane.org>,
	Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>,
	Varun Sethi <varun.sethi-KZfg59tc24xl57MIdRCFDg@public.gmane.org>,
	Stephen Warren <swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>,
	Marc Zyngier <Marc.Zyngier-5wv7dgnIgG8@public.gmane.org>,
	Dave P Martin <Dave.Martin-5wv7dgnIgG8@public.gmane.org>,
	"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Pawel Moll <Pawel.Moll-5wv7dgnIgG8@public.gmane.org>,
	Ian Campbell
	<ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>,
	Grant Grundler <grundler-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org>,
	linux-arm-msm
	<linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
	"linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Cho KyongHo <pullip.cho-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>,
	"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
	<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
	Linux Kernel Mailing List
	<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org"
	<iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org>,
	Kumar Gala <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
Subject: Re: [PATCH v4] devicetree: Add generic IOMMU device tree bindings
Date: Mon, 14 Jul 2014 08:15:34 +0200	[thread overview]
Message-ID: <20140714061532.GB2081@ulmo> (raw)
In-Reply-To: <201407121422.02078.arnd-r2nGTMty4D4@public.gmane.org>


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

On Sat, Jul 12, 2014 at 02:22:01PM +0200, Arnd Bergmann wrote:
> On Saturday 12 July 2014, Rob Clark wrote:
> > >> Was there actually a good reason for having the device link to the
> > >> iommu rather than the other way around?  How much would people hate it
> > >> if I just ignore the generic bindings and use something that works for
> > >> me instead.  I mean, it isn't exactly like there is going to be .dts
> > >> re-use across different SoC's..  and at least with current IOMMU API
> > >> some sort of of_get_named_iommu() API doesn't really make sense.
> > >
> > > The thing is, if you end up ignoring the generic binding then we have two
> > > IOMMUs using the same (ARM SMMU) binding and it begs the question as to
> > > which is the more generic! I know we're keen to get this merged, but merging
> > > something that people won't use and calling it generic doesn't seem ideal
> > > either. We do, however, desperately need a generic binding.
> > 
> > yeah, ignoring the generic binding is not my first choice.  I'd rather
> > have something that works well for everyone.  But I wasn't really sure
> > if the current proposal was arbitrary, or if there are some
> > conflicting requirements between different platforms.
> 
> The common case that needs to be simple is attaching one (master) device
> to an IOMMU using the shared global context for the purposes of implementing
> the dma-mapping API.
> 
> The way that Thierry's binding does that is the obvious solution to this,
> and it mirrors what we do in practically every other subsystem.

That wasn't really the intention, though. We shouldn't be designing
bindings to work well in one use-case or another. My motivation for
doing it this way was that I think it naturally models the flow of
master IDs. They originate within the masters and flow towards the
IOMMU device. In other words, they are a property of the masters so
quite literally should be described in the device tree nodes of the
masters.

Thierry

[-- 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 v4] devicetree: Add generic IOMMU device tree bindings
Date: Mon, 14 Jul 2014 08:15:34 +0200	[thread overview]
Message-ID: <20140714061532.GB2081@ulmo> (raw)
In-Reply-To: <201407121422.02078.arnd@arndb.de>

On Sat, Jul 12, 2014 at 02:22:01PM +0200, Arnd Bergmann wrote:
> On Saturday 12 July 2014, Rob Clark wrote:
> > >> Was there actually a good reason for having the device link to the
> > >> iommu rather than the other way around?  How much would people hate it
> > >> if I just ignore the generic bindings and use something that works for
> > >> me instead.  I mean, it isn't exactly like there is going to be .dts
> > >> re-use across different SoC's..  and at least with current IOMMU API
> > >> some sort of of_get_named_iommu() API doesn't really make sense.
> > >
> > > The thing is, if you end up ignoring the generic binding then we have two
> > > IOMMUs using the same (ARM SMMU) binding and it begs the question as to
> > > which is the more generic! I know we're keen to get this merged, but merging
> > > something that people won't use and calling it generic doesn't seem ideal
> > > either. We do, however, desperately need a generic binding.
> > 
> > yeah, ignoring the generic binding is not my first choice.  I'd rather
> > have something that works well for everyone.  But I wasn't really sure
> > if the current proposal was arbitrary, or if there are some
> > conflicting requirements between different platforms.
> 
> The common case that needs to be simple is attaching one (master) device
> to an IOMMU using the shared global context for the purposes of implementing
> the dma-mapping API.
> 
> The way that Thierry's binding does that is the obvious solution to this,
> and it mirrors what we do in practically every other subsystem.

That wasn't really the intention, though. We shouldn't be designing
bindings to work well in one use-case or another. My motivation for
doing it this way was that I think it naturally models the flow of
master IDs. They originate within the masters and flow towards the
IOMMU device. In other words, they are a property of the masters so
quite literally should be described in the device tree nodes of the
masters.

Thierry
-------------- 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/20140714/378e34f9/attachment.sig>

WARNING: multiple messages have this Message-ID (diff)
From: Thierry Reding <thierry.reding@gmail.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Rob Clark <robdclark@gmail.com>,
	Will Deacon <will.deacon@arm.com>,
	Rob Herring <robh+dt@kernel.org>, Pawel Moll <Pawel.Moll@arm.com>,
	Mark Rutland <Mark.Rutland@arm.com>,
	Ian Campbell <ijc+devicetree@hellion.org.uk>,
	Kumar Gala <galak@codeaurora.org>,
	Stephen Warren <swarren@wwwdotorg.org>,
	Joerg Roedel <joro@8bytes.org>,
	Olav Haugan <ohaugan@codeaurora.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	Grant Grundler <grundler@chromium.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Marc Zyngier <Marc.Zyngier@arm.com>,
	"iommu@lists.linux-foundation.org"
	<iommu@lists.linux-foundation.org>,
	"linux-tegra@vger.kernel.org" <linux-tegra@vger.kernel.org>,
	Varun Sethi <varun.sethi@freescale.com>,
	Cho KyongHo <pullip.cho@samsung.com>,
	Dave P Martin <Dave.Martin@arm.com>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	Hiroshi Doyu <hdoyu@nvidia.com>,
	linux-arm-msm <linux-arm-msm@vger.kernel.org>
Subject: Re: [PATCH v4] devicetree: Add generic IOMMU device tree bindings
Date: Mon, 14 Jul 2014 08:15:34 +0200	[thread overview]
Message-ID: <20140714061532.GB2081@ulmo> (raw)
In-Reply-To: <201407121422.02078.arnd@arndb.de>

[-- Attachment #1: Type: text/plain, Size: 2018 bytes --]

On Sat, Jul 12, 2014 at 02:22:01PM +0200, Arnd Bergmann wrote:
> On Saturday 12 July 2014, Rob Clark wrote:
> > >> Was there actually a good reason for having the device link to the
> > >> iommu rather than the other way around?  How much would people hate it
> > >> if I just ignore the generic bindings and use something that works for
> > >> me instead.  I mean, it isn't exactly like there is going to be .dts
> > >> re-use across different SoC's..  and at least with current IOMMU API
> > >> some sort of of_get_named_iommu() API doesn't really make sense.
> > >
> > > The thing is, if you end up ignoring the generic binding then we have two
> > > IOMMUs using the same (ARM SMMU) binding and it begs the question as to
> > > which is the more generic! I know we're keen to get this merged, but merging
> > > something that people won't use and calling it generic doesn't seem ideal
> > > either. We do, however, desperately need a generic binding.
> > 
> > yeah, ignoring the generic binding is not my first choice.  I'd rather
> > have something that works well for everyone.  But I wasn't really sure
> > if the current proposal was arbitrary, or if there are some
> > conflicting requirements between different platforms.
> 
> The common case that needs to be simple is attaching one (master) device
> to an IOMMU using the shared global context for the purposes of implementing
> the dma-mapping API.
> 
> The way that Thierry's binding does that is the obvious solution to this,
> and it mirrors what we do in practically every other subsystem.

That wasn't really the intention, though. We shouldn't be designing
bindings to work well in one use-case or another. My motivation for
doing it this way was that I think it naturally models the flow of
master IDs. They originate within the masters and flow towards the
IOMMU device. In other words, they are a property of the masters so
quite literally should be described in the device tree nodes of the
masters.

Thierry

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

  parent reply	other threads:[~2014-07-14  6:15 UTC|newest]

Thread overview: 126+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-04 15:29 [PATCH v4] devicetree: Add generic IOMMU device tree bindings Thierry Reding
2014-07-04 15:29 ` Thierry Reding
2014-07-04 15:29 ` Thierry Reding
     [not found] ` <1404487757-18829-1-git-send-email-thierry.reding-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-07-09 13:40   ` Will Deacon
2014-07-09 13:40     ` Will Deacon
2014-07-09 13:40     ` Will Deacon
     [not found]     ` <20140709134050.GN9485-5wv7dgnIgG8@public.gmane.org>
2014-07-09 14:21       ` Thierry Reding
2014-07-09 14:21         ` Thierry Reding
2014-07-09 14:21         ` Thierry Reding
2014-07-09 18:10         ` Will Deacon
2014-07-09 18:10           ` Will Deacon
2014-07-09 18:10           ` Will Deacon
     [not found]           ` <20140709181048.GX9485-5wv7dgnIgG8@public.gmane.org>
2014-07-10  9:49             ` Thierry Reding
2014-07-10  9:49               ` Thierry Reding
2014-07-10  9:49               ` Thierry Reding
2014-07-10 10:23               ` Will Deacon
2014-07-10 10:23                 ` Will Deacon
2014-07-10 10:23                 ` Will Deacon
     [not found]                 ` <20140710102334.GG2449-5wv7dgnIgG8@public.gmane.org>
2014-07-10 10:57                   ` Thierry Reding
2014-07-10 10:57                     ` Thierry Reding
2014-07-10 10:57                     ` Thierry Reding
2014-07-10 12:38                     ` Will Deacon
2014-07-10 12:38                       ` Will Deacon
2014-07-10 12:38                       ` Will Deacon
2014-07-11 20:55   ` Rob Clark
2014-07-11 20:55     ` Rob Clark
2014-07-11 20:55     ` Rob Clark
     [not found]     ` <CAF6AEGv2P_Uq8CHgm1YdaUeMSNdH62ZwjLnT83Fr5GnxEAhTMw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-07-12  9:39       ` Will Deacon
2014-07-12  9:39         ` Will Deacon
2014-07-12  9:39         ` Will Deacon
     [not found]         ` <20140712093917.GD18601-5wv7dgnIgG8@public.gmane.org>
2014-07-12 11:26           ` Rob Clark
2014-07-12 11:26             ` Rob Clark
2014-07-12 11:26             ` Rob Clark
     [not found]             ` <CAF6AEGutHp+3f3iPA+jjaRkqq=5T_vytZ_ESoSqsQ4RHZ8F8yQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-07-12 12:22               ` Arnd Bergmann
2014-07-12 12:22                 ` Arnd Bergmann
2014-07-12 12:22                 ` Arnd Bergmann
     [not found]                 ` <201407121422.02078.arnd-r2nGTMty4D4@public.gmane.org>
2014-07-12 12:57                   ` Rob Clark
2014-07-12 12:57                     ` Rob Clark
2014-07-12 12:57                     ` Rob Clark
     [not found]                     ` <CAF6AEGs7=3UByP2DLm-uwU03wr7M14x2t-0hLX-VPJ6_eZbU3g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-07-13  9:43                       ` Will Deacon
2014-07-13  9:43                         ` Will Deacon
2014-07-13  9:43                         ` Will Deacon
     [not found]                         ` <20140713094341.GB23235-5wv7dgnIgG8@public.gmane.org>
2014-07-13 11:43                           ` Rob Clark
2014-07-13 11:43                             ` Rob Clark
2014-07-13 11:43                             ` Rob Clark
2014-07-16  1:25                             ` Olav Haugan
2014-07-16  1:25                               ` Olav Haugan
2014-07-16  1:25                               ` Olav Haugan
     [not found]                               ` <53C5D480.3030409-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2014-07-16 10:10                                 ` Will Deacon
2014-07-16 10:10                                   ` Will Deacon
2014-07-16 10:10                                   ` Will Deacon
2014-07-16 20:24                                 ` Rob Clark
2014-07-16 20:24                                   ` Rob Clark
2014-07-16 20:24                                   ` Rob Clark
2014-07-14  6:44                         ` Thierry Reding
2014-07-14  6:44                           ` Thierry Reding
2014-07-14  6:44                           ` Thierry Reding
2014-07-14 10:08                           ` Will Deacon
2014-07-14 10:08                             ` Will Deacon
2014-07-14 10:08                             ` Will Deacon
2014-07-14  6:24                       ` Thierry Reding
2014-07-14  6:24                         ` Thierry Reding
2014-07-14  6:24                         ` Thierry Reding
2014-07-14 10:13                         ` Rob Clark
2014-07-14 10:13                           ` Rob Clark
2014-07-14 10:13                           ` Rob Clark
2014-07-14  6:15                   ` Thierry Reding [this message]
2014-07-14  6:15                     ` Thierry Reding
2014-07-14  6:15                     ` Thierry Reding
2014-07-30 11:04   ` Will Deacon
2014-07-30 11:04     ` Will Deacon
2014-07-30 11:04     ` Will Deacon
     [not found]     ` <20140730110425.GI12239-5wv7dgnIgG8@public.gmane.org>
2014-07-30 13:23       ` Thierry Reding
2014-07-30 13:23         ` Thierry Reding
2014-07-30 13:23         ` Thierry Reding
2014-07-30 13:33         ` Joerg Roedel
2014-07-30 13:33           ` Joerg Roedel
2014-07-30 13:33           ` Joerg Roedel
     [not found]           ` <20140730133309.GF9809-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
2014-07-30 17:37             ` Olof Johansson
2014-07-30 17:37               ` Olof Johansson
2014-07-30 17:37               ` Olof Johansson
2014-07-30 14:30         ` Will Deacon
2014-07-30 14:30           ` Will Deacon
2014-07-30 14:30           ` Will Deacon
     [not found]           ` <20140730143037.GD8989-5wv7dgnIgG8@public.gmane.org>
2014-07-30 18:08             ` Rob Herring
2014-07-30 18:08               ` Rob Herring
2014-07-30 18:08               ` Rob Herring
2014-07-30 20:11         ` Arnd Bergmann
2014-07-30 20:11           ` Arnd Bergmann
2014-07-30 20:11           ` Arnd Bergmann
2014-07-30 15:26   ` Mark Rutland
2014-07-30 15:26     ` Mark Rutland
2014-07-30 15:26     ` Mark Rutland
2014-07-30 17:35     ` Olof Johansson
2014-07-30 17:35       ` Olof Johansson
2014-07-30 17:35       ` Olof Johansson
     [not found]       ` <CAOesGMi3zM1-cqmeGddJ69RNXx0ktFm_zXO_yq7N0EeA3HNrUQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-07-30 18:18         ` Mark Rutland
2014-07-30 18:18           ` Mark Rutland
2014-07-30 18:18           ` Mark Rutland
2014-07-31 10:09           ` Thierry Reding
2014-07-31 10:09             ` Thierry Reding
2014-07-31 10:09             ` Thierry Reding
2014-07-31 10:50             ` Mark Rutland
2014-07-31 10:50               ` Mark Rutland
2014-07-31 10:50               ` Mark Rutland
2014-07-31 11:14               ` Thierry Reding
2014-07-31 11:14                 ` Thierry Reding
2014-07-31 11:14                 ` Thierry Reding
2014-07-31  9:51         ` Thierry Reding
2014-07-31  9:51           ` Thierry Reding
2014-07-31  9:51           ` Thierry Reding
2014-07-31  8:39     ` Thierry Reding
2014-07-31  8:39       ` Thierry Reding
2014-07-31  8:39       ` Thierry Reding
2014-07-31  9:22       ` Mark Rutland
2014-07-31  9:22         ` Mark Rutland
2014-07-31  9:22         ` Mark Rutland
2014-07-31 10:18         ` Thierry Reding
2014-07-31 10:18           ` Thierry Reding
2014-07-31 10:18           ` Thierry Reding
2014-07-31 10:23           ` Joerg Roedel
2014-07-31 10:23             ` Joerg Roedel
2014-07-31 10:23             ` Joerg Roedel
     [not found]             ` <20140731102351.GJ9809-zLv9SwRftAIdnm+yROfE0A@public.gmane.org>
2014-07-31 10:46               ` Thierry Reding
2014-07-31 10:46                 ` Thierry Reding
2014-07-31 10:46                 ` Thierry Reding

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=20140714061532.GB2081@ulmo \
    --to=thierry.reding-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=Dave.Martin-5wv7dgnIgG8@public.gmane.org \
    --cc=Marc.Zyngier-5wv7dgnIgG8@public.gmane.org \
    --cc=Mark.Rutland-5wv7dgnIgG8@public.gmane.org \
    --cc=Pawel.Moll-5wv7dgnIgG8@public.gmane.org \
    --cc=arnd-r2nGTMty4D4@public.gmane.org \
    --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
    --cc=grundler-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org \
    --cc=ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org \
    --cc=iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org \
    --cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
    --cc=linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=pullip.cho-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \
    --cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
    --cc=swarren-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org \
    --cc=varun.sethi-KZfg59tc24xl57MIdRCFDg@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.