public inbox for linux-arm-kernel@lists.infradead.org
 help / color / mirror / Atom feed
From: mark.rutland@arm.com (Mark Rutland)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/3] Docs: dt: Add PCI MSI map bindings
Date: Mon, 7 Sep 2015 18:56:43 +0100	[thread overview]
Message-ID: <20150907175643.GB18079@leverpostej> (raw)
In-Reply-To: <55B5E8C1.4030707@arm.com>

> > +PCI root complex
> > +================
> > +
> > +Optional properties
> > +-------------------
> > +
> > +- msi-map: Maps a Requester ID to an MSI controller and associated
> > +  msi-specifier data. The property is an arbitrary number of tuples of
> > +  (rid-base,msi-controller,msi-base,length), where:
> > +
> > +  * rid-base is a single cell describing the first RID matched by the entry.
> > +
> > +  * msi-controller is a single phandle to an MSI controller
> > +
> > +  * msi-base is an msi-specifier describing the msi-specifier produced for the
> > +    first RID matched by the entry.
> > +
> > +  * length is a single cell describing how many consecutive RIDs are matched
> > +    following the rid-base.
> > +
> > +  Any RID r in the interval [rid-base, rid-base + length) is associated with
> > +  the listed msi-controller, with the msi-specifier (r - rid-base + msi-base).
> > +
> > +- msi-map-mask: A mask to be applied to each Requester ID prior to being mapped
> > +  to an msi-specifier per the msi-map property.
> > +
> > +- msi-parent: Describes the MSI parent of the root complex itself. Where
> > +  the root complex and MSI controller do not pass sideband data with MSI
> > +  writes, this property may be used to describe the MSI controller(s)
> > +  used by PCI devices under the root complex, if defined as such in the
> > +  binding for the root complex.
> 
> Right, this is where I'd expect some details about #msi-cells. Is it
> meant to be ignored? The lack of symmetry between the PCI and non-PCI
> use cases feels a bit inelegant (not to mention that it precludes having
> an unified parser for both cases).

I would expect that the msi-parent's #msi-cells could be non-zero.

As I see it, there are three possible interpretations (and the choice
between these would be specific to a PCI root complex):

(1) Devices under the root complex generate MSIs via the MSI parent,
    using common sideband data described in the msi cells (and therefore
    cannot be distingushed from each other).

(2) The root complex itself generates MSIs via the MSI parent, with any
    sideband data described in the msi cells.

(3) Both the root complex and devices underneath it generate MSIs via
    the MSI parent, using common sideband data described in the msi
    cells (and therefore cannot be distinguished from each other).

Of these, (1) is the common case today, though (2) would be more in
keeping with how this style of property usually works.

I'm not sure how to capture that.

Thanks,
Mark.

  parent reply	other threads:[~2015-09-07 17:56 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-07-23 16:52 [PATCH 0/3] Generic PCI MSI + IOMMU topology bindings Mark Rutland
2015-07-23 16:52 ` [PATCH 1/3] Docs: dt: add generic MSI bindings Mark Rutland
2015-07-23 18:26   ` David Daney
2015-07-24  7:04     ` Marc Zyngier
2015-07-27  8:02   ` Marc Zyngier
2015-07-27  9:46     ` Mark Rutland
2015-08-03 10:44       ` Marc Zyngier
2015-08-05 16:51   ` Mark Rutland
2015-08-06  7:56     ` Marc Zyngier
2015-08-24 10:17     ` Mark Rutland
2015-08-24 13:37       ` Rob Herring
2015-08-24 13:47         ` Mark Rutland
2015-07-23 16:52 ` [PATCH 2/3] Docs: dt: Add PCI MSI map bindings Mark Rutland
2015-07-24 23:27   ` Chalamarla, Tirumalesh
2015-07-27  9:16     ` Mark Rutland
2015-07-27  8:16   ` Marc Zyngier
2015-09-04 22:33     ` David Daney
2015-09-07 18:05       ` Mark Rutland
2015-09-08 15:53         ` Stuart Yoder
2015-09-07 17:56     ` Mark Rutland [this message]
2015-08-05 16:39   ` Varun Sethi
2015-08-06 17:38     ` Mark Rutland
2015-08-08 15:06       ` Varun Sethi
     [not found]   ` <CALRxmdA32xiSX7DDKAJPLR8=bh_9j-6MN124u4KjYGRT8bAKNg@mail.gmail.com>
2015-08-05 19:53     ` Stuart Yoder
2015-08-06 18:14       ` Mark Rutland
2015-08-06 19:46         ` Stuart Yoder
2015-07-23 16:52 ` [PATCH 3/3] Docs: dt: add PCI IOMMU " Mark Rutland
2015-07-24 12:23   ` Robin Murphy
2015-07-24 13:26     ` Mark Rutland

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=20150907175643.GB18079@leverpostej \
    --to=mark.rutland@arm.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox