All of lore.kernel.org
 help / color / mirror / Atom feed
From: Trent Piepho <tpiepho@impinj.com>
To: "l.stach@pengutronix.de" <l.stach@pengutronix.de>,
	"andrew.smirnov@gmail.com" <andrew.smirnov@gmail.com>
Cc: "aisheng.dong@nxp.com" <aisheng.dong@nxp.com>,
	"hongxing.zhu@nxp.com" <hongxing.zhu@nxp.com>,
	"cphealy@gmail.com" <cphealy@gmail.com>,
	"linux-imx@nxp.com" <linux-imx@nxp.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"lorenzo.pieralisi@arm.com" <lorenzo.pieralisi@arm.com>,
	"fabio.estevam@nxp.com" <fabio.estevam@nxp.com>,
	"robh@kernel.org" <robh@kernel.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	"bhelgaas@google.com" <bhelgaas@google.com>,
	"leonard.crestez@nxp.com" <leonard.crestez@nxp.com>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>
Subject: Re: [PATCH v3 3/3] PCI: imx6: Add support for i.MX8MQ
Date: Thu, 20 Dec 2018 01:22:51 +0000	[thread overview]
Message-ID: <1545268969.22930.77.camel@impinj.com> (raw)
In-Reply-To: <CAHQ1cqEMxxo9JGN5be4XQWAtPz7nC2JyLCr3qasnD5QK7_hOYQ@mail.gmail.com>

On Wed, 2018-12-19 at 16:47 -0800, Andrey Smirnov wrote:
> 
> > > This series initially added explicit offsets but I suggested a single
> > > "controller-id" because:
> > >   * There are multiple bit and byte offsets
> > >   * Other imx8 SOCs also have 2x pcie with other bit/byte offsets
> > > 
> > > Hiding this behind a compatible string and single "controller-id" seem
> > > preferable to elaborating register maps in dt bindings. It also makes
> > > upgrades simpler: if features are added which use other bits there is no
> > > need to describe them in DT and deal with compatibility headaches.
> > 
> > You already have an id for the controllers: the address. Use that if
> > you don't want to put the register offsets in DT.
> > 
> 
> Lucas, are you on board with this?

Does address here mean the address from the controller's reg property?
 
How do you map that address to the controller's index?  A giant table
of every soc so the soc type plus controller register address pair than
can be looked up in the driver?

I.e., on iMX8MQ the controller at 0x33800000 is controller 0 and so on
for every possible SoC address combination?

Not really a fan of that.

The situation here is that some registers for these controllers are
interleaved, right?  I.e., there's one register somewhere where bit 0
means enable controller 0 and bit 1 means enable controller 1 and so
on.

Isn't cell-index already the standard device tree property for this
kind of setup?

I know cell-index was historically also (ab)used in an attempt to
provide a fixed kernel device enumeration order, something now handled
better by chosen node aliases.



WARNING: multiple messages have this Message-ID (diff)
From: Trent Piepho <tpiepho@impinj.com>
To: "l.stach@pengutronix.de" <l.stach@pengutronix.de>,
	"andrew.smirnov@gmail.com" <andrew.smirnov@gmail.com>
Cc: "aisheng.dong@nxp.com" <aisheng.dong@nxp.com>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"lorenzo.pieralisi@arm.com" <lorenzo.pieralisi@arm.com>,
	"hongxing.zhu@nxp.com" <hongxing.zhu@nxp.com>,
	"robh@kernel.org" <robh@kernel.org>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"bhelgaas@google.com" <bhelgaas@google.com>,
	"linux-imx@nxp.com" <linux-imx@nxp.com>,
	"fabio.estevam@nxp.com" <fabio.estevam@nxp.com>,
	"leonard.crestez@nxp.com" <leonard.crestez@nxp.com>,
	"cphealy@gmail.com" <cphealy@gmail.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v3 3/3] PCI: imx6: Add support for i.MX8MQ
Date: Thu, 20 Dec 2018 01:22:51 +0000	[thread overview]
Message-ID: <1545268969.22930.77.camel@impinj.com> (raw)
In-Reply-To: <CAHQ1cqEMxxo9JGN5be4XQWAtPz7nC2JyLCr3qasnD5QK7_hOYQ@mail.gmail.com>

On Wed, 2018-12-19 at 16:47 -0800, Andrey Smirnov wrote:
> 
> > > This series initially added explicit offsets but I suggested a single
> > > "controller-id" because:
> > >   * There are multiple bit and byte offsets
> > >   * Other imx8 SOCs also have 2x pcie with other bit/byte offsets
> > > 
> > > Hiding this behind a compatible string and single "controller-id" seem
> > > preferable to elaborating register maps in dt bindings. It also makes
> > > upgrades simpler: if features are added which use other bits there is no
> > > need to describe them in DT and deal with compatibility headaches.
> > 
> > You already have an id for the controllers: the address. Use that if
> > you don't want to put the register offsets in DT.
> > 
> 
> Lucas, are you on board with this?

Does address here mean the address from the controller's reg property?
 
How do you map that address to the controller's index?  A giant table
of every soc so the soc type plus controller register address pair than
can be looked up in the driver?

I.e., on iMX8MQ the controller at 0x33800000 is controller 0 and so on
for every possible SoC address combination?

Not really a fan of that.

The situation here is that some registers for these controllers are
interleaved, right?  I.e., there's one register somewhere where bit 0
means enable controller 0 and bit 1 means enable controller 1 and so
on.

Isn't cell-index already the standard device tree property for this
kind of setup?

I know cell-index was historically also (ab)used in an attempt to
provide a fixed kernel device enumeration order, something now handled
better by chosen node aliases.


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2018-12-20  1:22 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-18  4:06 [PATCH v3 0/3] PCIE support for i.MX8MQ Andrey Smirnov
2018-12-18  4:06 ` Andrey Smirnov
2018-12-18  4:07 ` [PATCH v3 1/3] PCI: imx6: introduce drvdata Andrey Smirnov
2018-12-18  4:07   ` Andrey Smirnov
2018-12-18  4:07 ` [PATCH v3 2/3] PCI: imx6: Mark PHY functions as i.MX6 specific Andrey Smirnov
2018-12-18  4:07   ` Andrey Smirnov
2018-12-18  4:07 ` [PATCH v3 3/3] PCI: imx6: Add support for i.MX8MQ Andrey Smirnov
2018-12-18  4:07   ` Andrey Smirnov
2018-12-18  9:34   ` Leonard Crestez
2018-12-18  9:34     ` Leonard Crestez
2018-12-18  9:34     ` Leonard Crestez
2018-12-18 18:14     ` Andrey Smirnov
2018-12-18 18:14       ` Andrey Smirnov
2018-12-18 18:14       ` Andrey Smirnov
2018-12-18 15:15   ` Rob Herring
2018-12-18 15:15     ` Rob Herring
2018-12-18 18:09     ` Leonard Crestez
2018-12-18 18:09       ` Leonard Crestez
2018-12-18 18:09       ` Leonard Crestez
2018-12-18 21:10       ` Rob Herring
2018-12-18 21:10         ` Rob Herring
2018-12-18 21:10         ` Rob Herring
2018-12-20  0:47         ` Andrey Smirnov
2018-12-20  0:47           ` Andrey Smirnov
2018-12-20  0:47           ` Andrey Smirnov
2018-12-20  1:22           ` Trent Piepho [this message]
2018-12-20  1:22             ` Trent Piepho
2018-12-20  1:22             ` Trent Piepho
2018-12-20 13:49             ` Leonard Crestez
2018-12-20 13:49               ` Leonard Crestez
2018-12-20 13:49               ` Leonard Crestez
2018-12-20 15:00             ` Rob Herring
2018-12-20 15:00               ` Rob Herring
2018-12-20 15:00               ` Rob Herring
2018-12-20 15:04       ` Rob Herring
2018-12-20 15:04         ` Rob Herring
2018-12-20 15:04         ` Rob Herring

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=1545268969.22930.77.camel@impinj.com \
    --to=tpiepho@impinj.com \
    --cc=aisheng.dong@nxp.com \
    --cc=andrew.smirnov@gmail.com \
    --cc=bhelgaas@google.com \
    --cc=cphealy@gmail.com \
    --cc=devicetree@vger.kernel.org \
    --cc=fabio.estevam@nxp.com \
    --cc=hongxing.zhu@nxp.com \
    --cc=l.stach@pengutronix.de \
    --cc=leonard.crestez@nxp.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-imx@nxp.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lorenzo.pieralisi@arm.com \
    --cc=robh@kernel.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.