From: Stephen Warren <swarren@nvidia.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Linus Walleij <linus.walleij@linaro.org>,
Jamie Iles <jamie@jamieiles.com>,
Grant Likely <grant.likely@secretlab.ca>,
Colin Cross <ccross@android.com>,
Erik Gilling <konkers@android.com>,
Olof Johansson <olof@lixom.net>,
Russell King <linux@arm.linux.org.uk>,
"devicetree-discuss@lists.ozlabs.org"
<devicetree-discuss@lists.ozlabs.org>,
"linux-tegra@vger.kernel.org" <linux-tegra@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Belisko Marek <marek.belisko@gmail.com>,
Shawn Guo <shawn.guo@freescale.com>,
Sergei Shtylyov <sshtylyov@mvista.com>
Subject: RE: [RFC PATCH v2 06/13] docs/dt: Document nvidia,tegra20-pinmux binding
Date: Wed, 17 Aug 2011 23:36:38 -0700 [thread overview]
Message-ID: <74CDBE0F657A3D45AFBB94109FB122FF04AF6F3063@HQMAIL01.nvidia.com> (raw)
In-Reply-To: <201108171337.26166.arnd@arndb.de>
Arnd Bergmann wrote at Wednesday, August 17, 2011 5:37 AM:
...
> > > > +Each mux pin group is represented as a sub-node of the nvidia,mux-groups node.
> > > > +The name of the sub-node should be the name of the mux pingroup. The following
> > > > +names are valid:
> > > > +
> > > > + ata
> > > > + atb
> > > > + atc
> > > > + atd
> > > > + ate
> > > > + cdev1
> > > > + cdev2
> > > > ...
> > >
> > > I noticed that each board you define has a complete list of these. Would
> > > it be possible to move a generic list into a tegra20-pinmux.dtsi file and
> > > just override the pins in the per-board .dts file that require some special
> > > setup?
> >
> > I'm not sure how much commonality there will really be.
> >
> > Certainly, many boards are based off our reference designs and so will
> > have many similarities that could be shared.
> >
> > That said, comparing even tegra-harmony.dts and tegra-seaboard.dts shows
> > a lot of differences. It seems a lot less error-prone to just completely
> > describe the entire pinmux state in each board's .dts file, rather than
> > trying to represent half the information as default in the SoC .dtsi file,
> > and just the diff in the board .dts file. I suppose perhaps if we put the
> > hardware's own default settings in tegra20.dtsi, that'd make sense, since
> > people are presumably reasonably aware of the delta relative to that.
> >
> > We'd need to add new properties to override defaults, like:
> >
> > nvidia,tristate --> nvidia,drive
> > nvidia,pull-* --> nvidia,no-pull
>
> The split I had in mind is more to the effect that the .dtsi file
> describes the set of pins that is there with their names and addresses,
> while the board specific file describes how they are set up. Does that
> make sense? I think I'm still missing some essential aspect of what the
> pinmux code actually does ;-)
>
> I now saw that you have the full description in the
> arch/arm/mach-tegra/pinmux-t2-tables.c and arch/arm/mach-tegra/pinmux.c
> files, with all the names again, and apparently your patch set leaves
> these around. Do you think it's possible to actually move the static
> tables from there into the device tree and do the entire setup based
> on that?
Ah, so you're looking for tegra20.dtsi to define the set pin groups that
can be configured, and tegra-harmony.dts to provide the configuration for
each of those pingroups.
As you see from my patches, I had assumed that the Tegra pinmux driver
would be what ended up defining the available pin groups, the register
addresses and fields for those groups, just like it does today. The DT
would only provide the configuration for each group. That's the reason
I didn't understand your questions the first time around.
So yes, I think we could represent the set of available pin groups in
tegra20.dtsi; it's just some data tables. I don't think this provides as
much benefit as moving the per-board configuration data into DT though,
because it changes only per SoC generation, not per board.
Still, putting the list of pingroups in tegra20.dtsi does move that data
out of the kernel, although it bloats each DTB with almost static data
that'll take a bunch of time to parse. It's worth considering though.
I'm unclear how to resolve where the best location for the data is though;
should we just go ahead and move it from the pinmux driver to DT right now,
or discuss more or ...?
--
nvpublic
next prev parent reply other threads:[~2011-08-18 6:37 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-15 20:28 [RFC PATCH v2 00/13] arm/tegra: Initialize GPIO & pinmux from DT Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 01/13] arm/tegra: Prep boards for gpio/pinmux conversion to pdevs Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 02/13] arm/tegra: Avoid duplicate gpio/pinmux devices with dt Stephen Warren
2011-08-16 20:46 ` Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 03/13] arm/tegra: board-dt: Add AUXDATA for tegra-gpio and tegra-pinmux Stephen Warren
2011-08-16 3:30 ` Shawn Guo
2011-08-16 20:24 ` Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 04/13] docs/dt: Document nvidia,tegra20-gpio's nvidia,enabled-gpios property Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 05/13] arm/dt: Tegra: Add nvidia,gpios property to GPIO controller Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 06/13] docs/dt: Document nvidia,tegra20-pinmux binding Stephen Warren
2011-08-16 3:48 ` Shawn Guo
2011-08-16 13:51 ` Arnd Bergmann
2011-08-16 17:32 ` Stephen Warren
2011-08-17 6:02 ` Shawn Guo
2011-08-17 6:17 ` Shawn Guo
2011-08-17 11:37 ` Arnd Bergmann
2011-08-17 11:43 ` Jamie Iles
2011-08-18 6:36 ` Stephen Warren [this message]
2011-08-15 20:28 ` [RFC PATCH v2 07/13] arm/dt: Tegra: Add pinmux node Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 08/13] gpio/tegra: Convert to a platform device Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 09/13] gpio/tegra: Add device tree support Stephen Warren
2011-08-16 3:39 ` Shawn Guo
2011-08-15 20:28 ` [RFC PATCH v2 10/13] arm/tegra: Convert pinmux driver to a platform device Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 11/13] arm/tegra: Add device tree support to pinmux driver Stephen Warren
2011-08-16 3:45 ` Shawn Guo
2011-08-23 23:35 ` Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 12/13] arm/tegra: board-dt: Remove dependency on non-dt pinmux functions Stephen Warren
2011-08-15 20:28 ` [RFC PATCH v2 13/13] arm/tegra: Remove temporary gpio/pinmux registration workaround Stephen Warren
2011-08-16 13:09 ` [RFC PATCH v2 00/13] arm/tegra: Initialize GPIO & pinmux from DT Arnd Bergmann
2011-08-16 14:01 ` Linus Walleij
2011-08-16 14:37 ` Arnd Bergmann
2011-08-16 14:45 ` Linus Walleij
2011-08-16 17:12 ` Stephen Warren
2011-08-17 11:23 ` Arnd Bergmann
2011-08-18 6:22 ` Stephen Warren
2011-08-18 9:15 ` Arnd Bergmann
2011-08-23 12:51 ` Linus Walleij
2011-08-23 18:49 ` Stephen Warren
2011-08-23 20:00 ` Linus Walleij
2011-08-22 19:56 ` Stephen Warren
2011-08-22 22:56 ` Olof Johansson
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=74CDBE0F657A3D45AFBB94109FB122FF04AF6F3063@HQMAIL01.nvidia.com \
--to=swarren@nvidia.com \
--cc=arnd@arndb.de \
--cc=ccross@android.com \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=grant.likely@secretlab.ca \
--cc=jamie@jamieiles.com \
--cc=konkers@android.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=marek.belisko@gmail.com \
--cc=olof@lixom.net \
--cc=shawn.guo@freescale.com \
--cc=sshtylyov@mvista.com \
/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
all inboxes | Powered by JetHome®