All of lore.kernel.org
 help / color / mirror / Atom feed
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: Pinmux bindings proposal V2
Date: Fri, 3 Feb 2012 13:05:45 -0800	[thread overview]
Message-ID: <20120203210545.GE1426@atomide.com> (raw)
In-Reply-To: <CAA+hA=QFB7x0yv65LMuLx1exmiUAuB98D+9Fyyk9oeVu+7F2QQ@mail.gmail.com>

* Dong Aisheng <dongas86@gmail.com> [120203 09:42]:
> On Sat, Feb 4, 2012 at 1:32 AM, Tony Lindgren <tony@atomide.com> wrote:
> > * Dong Aisheng <dongas86@gmail.com> [120202 11:36]:
> >>
> >> Actually i think i'd rather do not use config property, then i could
> >> be more compact:
> >> (anyway it's another issue and is flexible to be controlled by #pinmux-cells)
> >> pinctrl_usdhc4: pinconfig-usdhc4 {
> >> ? ? ? ? /* 0: pin 1: group */
> >> ? ? ? ? mux-entity = <0>;
> >> ? ? ? ? func-name = "usdhc4func";
> >> ? ? ? ? grp-name = "usdhc4grp";
> >
> > The func-name and grp-name should be optional here.
> > This mux entry is already the group, and can be used as
> > the group name.
> For the case i discussed here, the mux entry is PIN.
> (the mux-entity value is 0).
> we introduce this value here for treating all pins is one group.
> When do map parsing, only one pinmux map will be created.
> So we need a grp-name.
> And we also need a func-name here for construct pinmux map.

Sounds like a similar setup I have, I do not need any func-name
or grp-name though.. The group name is already unique with
pinconfig-usdhc4 in your example?
 
> > And the function name can be generated
> > dynamically in most cases. I'm currently using np->full_name
> > of the driver claiming these pins as the function name.
>
> Why i did not use np->name as function name is because the np->name
> can be different
> while actually these nodes may represent the same function but just
> different pins, so the function name should be same.

I used a function name based on the group name initially
(pinconfig-usdhc4 in your example), then renamed it to the
np->full_name of the device requesting the mux when the
mux was found ;)

> >> ? ? ? ? mux =
> >> ? ? ? ? ? ? ? ? <MX6Q_SD4_CMD ?0 MX6Q_USDHC_PAD_CTRL>
> >> ? ? ? ? ? ? ? ? <MX6Q_SD4_CLK ?0 MX6Q_USDHC_PAD_CTRL>
> >> ? ? ? ? ? ? ? ? <MX6Q_SD4_DAT0 1 MX6Q_USDHC_PAD_CTRL>
> >> ? ? ? ? ? ? ? ? <MX6Q_SD4_DAT1 1 MX6Q_USDHC_PAD_CTRL>
> >> ? ? ? ? ? ? ? ? <MX6Q_SD4_DAT2 1 MX6Q_USDHC_PAD_CTRL>
> >> ? ? ? ? ? ? ? ? <MX6Q_SD4_DAT3 1 MX6Q_USDHC_PAD_CTRL>
> >> ? ? ? ? ? ? ? ? <MX6Q_SD4_DAT4 1 MX6Q_USDHC_PAD_CTRL>
> >> ? ? ? ? ? ? ? ? <MX6Q_SD4_DAT5 1 MX6Q_USDHC_PAD_CTRL>
> >> ? ? ? ? ? ? ? ? <MX6Q_SD4_DAT6 1 MX6Q_USDHC_PAD_CTRL>
> >> ? ? ? ? ? ? ? ? <MX6Q_SD4_DAT7 1 MX6Q_USDHC_PAD_CTRL>;
> >> };
> >
> > For listing basic pins this format works fine for me. It seems
> > to have low overhead for parsing. And the width of the array
> > can be driver specific.
> >
> > Looks like it's the binding for altenative states that's still a
> > bit open..
> >
> Yes, it does not have states support.
> 
> > So how about let's first standardize on the mux format above?
> >
> I'm afraid it may be hard for us to standardize the mux format for a
> standard binding in pinctrl core due to  hw difference.

Yes the width would have to be hardare specific for the array.

> I'm think the new way which i sent in this thread after the mail you replied.
> You can refer to them to see if it's reasonable for you too.

Hmm, sorry now I'm confused. Got a link for that mail as so
many have been posted?

Regards,

Tony

WARNING: multiple messages have this Message-ID (diff)
From: Tony Lindgren <tony@atomide.com>
To: Dong Aisheng <dongas86@gmail.com>
Cc: Stephen Warren <swarren@nvidia.com>,
	Shawn Guo <shawn.guo@linaro.org>,
	Dong Aisheng-B29396 <B29396@freescale.com>,
	"Linus Walleij (linus.walleij@linaro.org)"
	<linus.walleij@linaro.org>,
	"Sascha Hauer (s.hauer@pengutronix.de)" <s.hauer@pengutronix.de>,
	"rob.herring@calxeda.com" <rob.herring@calxeda.com>,
	"kernel@pengutronix.de" <kernel@pengutronix.de>,
	"cjb@laptop.org" <cjb@laptop.org>,
	"Simon Glass (sjg@chromium.org)" <sjg@chromium.org>,
	Thomas Abraham <thomas.abraham@linaro.org>,
	"Grant Likely (grant.likely@secretlab.ca)"
	<grant.likely@secretlab.ca>,
	"devicetree-discuss@lists.ozlabs.org"
	<devicetree-discuss@lists.ozlabs.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: Pinmux bindings proposal V2
Date: Fri, 3 Feb 2012 13:05:45 -0800	[thread overview]
Message-ID: <20120203210545.GE1426@atomide.com> (raw)
In-Reply-To: <CAA+hA=QFB7x0yv65LMuLx1exmiUAuB98D+9Fyyk9oeVu+7F2QQ@mail.gmail.com>

* Dong Aisheng <dongas86@gmail.com> [120203 09:42]:
> On Sat, Feb 4, 2012 at 1:32 AM, Tony Lindgren <tony@atomide.com> wrote:
> > * Dong Aisheng <dongas86@gmail.com> [120202 11:36]:
> >>
> >> Actually i think i'd rather do not use config property, then i could
> >> be more compact:
> >> (anyway it's another issue and is flexible to be controlled by #pinmux-cells)
> >> pinctrl_usdhc4: pinconfig-usdhc4 {
> >>         /* 0: pin 1: group */
> >>         mux-entity = <0>;
> >>         func-name = "usdhc4func";
> >>         grp-name = "usdhc4grp";
> >
> > The func-name and grp-name should be optional here.
> > This mux entry is already the group, and can be used as
> > the group name.
> For the case i discussed here, the mux entry is PIN.
> (the mux-entity value is 0).
> we introduce this value here for treating all pins is one group.
> When do map parsing, only one pinmux map will be created.
> So we need a grp-name.
> And we also need a func-name here for construct pinmux map.

Sounds like a similar setup I have, I do not need any func-name
or grp-name though.. The group name is already unique with
pinconfig-usdhc4 in your example?
 
> > And the function name can be generated
> > dynamically in most cases. I'm currently using np->full_name
> > of the driver claiming these pins as the function name.
>
> Why i did not use np->name as function name is because the np->name
> can be different
> while actually these nodes may represent the same function but just
> different pins, so the function name should be same.

I used a function name based on the group name initially
(pinconfig-usdhc4 in your example), then renamed it to the
np->full_name of the device requesting the mux when the
mux was found ;)

> >>         mux =
> >>                 <MX6Q_SD4_CMD  0 MX6Q_USDHC_PAD_CTRL>
> >>                 <MX6Q_SD4_CLK  0 MX6Q_USDHC_PAD_CTRL>
> >>                 <MX6Q_SD4_DAT0 1 MX6Q_USDHC_PAD_CTRL>
> >>                 <MX6Q_SD4_DAT1 1 MX6Q_USDHC_PAD_CTRL>
> >>                 <MX6Q_SD4_DAT2 1 MX6Q_USDHC_PAD_CTRL>
> >>                 <MX6Q_SD4_DAT3 1 MX6Q_USDHC_PAD_CTRL>
> >>                 <MX6Q_SD4_DAT4 1 MX6Q_USDHC_PAD_CTRL>
> >>                 <MX6Q_SD4_DAT5 1 MX6Q_USDHC_PAD_CTRL>
> >>                 <MX6Q_SD4_DAT6 1 MX6Q_USDHC_PAD_CTRL>
> >>                 <MX6Q_SD4_DAT7 1 MX6Q_USDHC_PAD_CTRL>;
> >> };
> >
> > For listing basic pins this format works fine for me. It seems
> > to have low overhead for parsing. And the width of the array
> > can be driver specific.
> >
> > Looks like it's the binding for altenative states that's still a
> > bit open..
> >
> Yes, it does not have states support.
> 
> > So how about let's first standardize on the mux format above?
> >
> I'm afraid it may be hard for us to standardize the mux format for a
> standard binding in pinctrl core due to  hw difference.

Yes the width would have to be hardare specific for the array.

> I'm think the new way which i sent in this thread after the mail you replied.
> You can refer to them to see if it's reasonable for you too.

Hmm, sorry now I'm confused. Got a link for that mail as so
many have been posted?

Regards,

Tony

  reply	other threads:[~2012-02-03 21:05 UTC|newest]

Thread overview: 146+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-20 22:22 Pinmux bindings proposal V2 Stephen Warren
2012-01-20 22:22 ` Stephen Warren
2012-01-23 21:00 ` Tony Lindgren
2012-01-23 21:00   ` Tony Lindgren
2012-01-23 21:00   ` Tony Lindgren
2012-01-23 23:08   ` Stephen Warren
2012-01-23 23:08     ` Stephen Warren
2012-01-23 23:08     ` Stephen Warren
2012-01-24  1:20     ` Tony Lindgren
2012-01-24  1:20       ` Tony Lindgren
2012-01-24  1:20       ` Tony Lindgren
2012-01-24 22:29       ` Stephen Warren
2012-01-24 22:29         ` Stephen Warren
2012-01-24 22:29         ` Stephen Warren
2012-01-25  0:04         ` Tony Lindgren
2012-01-25  0:04           ` Tony Lindgren
2012-01-26 19:33           ` Stephen Warren
2012-01-26 19:33             ` Stephen Warren
2012-01-26 19:33             ` Stephen Warren
2012-01-27  2:08             ` Tony Lindgren
2012-01-27  2:08               ` Tony Lindgren
2012-01-27  6:57               ` Shawn Guo
2012-01-27  6:57                 ` Shawn Guo
2012-01-27  6:57                 ` Shawn Guo
2012-01-27 17:05                 ` Tony Lindgren
2012-01-27 17:05                   ` Tony Lindgren
2012-01-27 17:05                   ` Tony Lindgren
2012-01-30  1:56                   ` Shawn Guo
2012-01-30  1:56                     ` Shawn Guo
2012-01-30  1:56                     ` Shawn Guo
2012-01-30 17:20                     ` Tony Lindgren
2012-01-30 17:20                       ` Tony Lindgren
2012-01-30 17:20                       ` Tony Lindgren
2012-01-31  1:32                       ` Shawn Guo
2012-01-31  1:32                         ` Shawn Guo
2012-01-31  2:29                         ` Tony Lindgren
2012-01-31  2:29                           ` Tony Lindgren
2012-01-31  2:29                           ` Tony Lindgren
2012-01-31 14:35                           ` Reg pinmux driver for OMAP based SoC- AM335X Mohammed, Afzal
2012-01-31 17:05                             ` Tony Lindgren
2012-01-31 17:05                               ` Tony Lindgren
2012-02-01 10:04                               ` Hiremath, Vaibhav
2012-02-01 10:04                                 ` Hiremath, Vaibhav
2012-02-01 18:14                                 ` Tony Lindgren
2012-02-01 18:14                                   ` Tony Lindgren
2012-02-03 20:57                                   ` Tony Lindgren
2012-02-03 20:57                                     ` Tony Lindgren
2012-02-01 11:00                               ` Mohammed, Afzal
2012-02-01 11:00                                 ` Mohammed, Afzal
2012-02-01  5:36                           ` Pinmux bindings proposal V2 Shawn Guo
2012-02-01  5:36                             ` Shawn Guo
2012-02-01  5:36                             ` Shawn Guo
2012-01-27 17:36               ` Stephen Warren
2012-01-27 17:36                 ` Stephen Warren
2012-01-27 17:36                 ` Stephen Warren
2012-01-27 17:42                 ` Tony Lindgren
2012-01-27 17:42                   ` Tony Lindgren
2012-01-27 17:42                   ` Tony Lindgren
2012-01-26  9:36   ` Shawn Guo
2012-01-26  9:36     ` Shawn Guo
2012-01-26  9:36     ` Shawn Guo
2012-01-26 17:51     ` Tony Lindgren
2012-01-26 17:51       ` Tony Lindgren
2012-01-26 17:51       ` Tony Lindgren
2012-01-27  7:19       ` Shawn Guo
2012-01-27  7:19         ` Shawn Guo
2012-01-27  7:19         ` Shawn Guo
2012-01-27 17:16         ` Tony Lindgren
2012-01-27 17:16           ` Tony Lindgren
2012-01-27 17:16           ` Tony Lindgren
2012-01-30  2:10           ` Shawn Guo
2012-01-30  2:10             ` Shawn Guo
2012-01-30  2:10             ` Shawn Guo
2012-01-30 17:43             ` Tony Lindgren
2012-01-30 17:43               ` Tony Lindgren
2012-01-30 17:43               ` Tony Lindgren
2012-01-31  1:07               ` Shawn Guo
2012-01-31  1:07                 ` Shawn Guo
2012-01-31  1:07                 ` Shawn Guo
2012-01-26  9:24 ` Shawn Guo
2012-01-26  9:24   ` Shawn Guo
2012-01-26 17:42 ` Simon Glass
2012-01-26 17:42   ` Simon Glass
2012-01-27  2:21   ` Tony Lindgren
2012-01-27  2:21     ` Tony Lindgren
2012-01-27  2:21     ` Tony Lindgren
2012-01-27 15:43     ` Simon Glass
2012-01-27 15:43       ` Simon Glass
2012-01-27 17:37       ` Tony Lindgren
2012-01-27 17:37         ` Tony Lindgren
2012-01-27 17:37         ` Tony Lindgren
2012-01-27 17:51         ` Stephen Warren
2012-01-27 17:51           ` Stephen Warren
2012-01-27 17:51           ` Stephen Warren
2012-01-27 18:10           ` Tony Lindgren
2012-01-27 18:10             ` Tony Lindgren
2012-01-27 18:10             ` Tony Lindgren
2012-01-30  3:27           ` Shawn Guo
2012-01-30  3:27             ` Shawn Guo
2012-01-30  3:27             ` Shawn Guo
2012-01-30  3:13       ` Shawn Guo
2012-01-30  3:13         ` Shawn Guo
2012-01-30 17:49         ` Tony Lindgren
2012-01-30 17:49           ` Tony Lindgren
2012-01-30 17:49           ` Tony Lindgren
2012-01-27 17:38     ` Stephen Warren
2012-01-27 17:38       ` Stephen Warren
2012-01-27 17:38       ` Stephen Warren
2012-01-27 17:29   ` Stephen Warren
2012-01-27 17:29     ` Stephen Warren
2012-01-27 17:29     ` Stephen Warren
2012-01-30  2:31     ` Shawn Guo
2012-01-30  2:31       ` Shawn Guo
2012-01-30  2:31       ` Shawn Guo
2012-02-01 14:35 ` Shawn Guo
2012-02-01 14:35   ` Shawn Guo
2012-02-02 18:36   ` Stephen Warren
2012-02-02 18:36     ` Stephen Warren
2012-02-02 18:36     ` Stephen Warren
2012-02-02 20:07     ` Dong Aisheng
2012-02-02 20:07       ` Dong Aisheng
2012-02-02 20:07       ` Dong Aisheng
2012-02-03 14:02       ` Shawn Guo
2012-02-03 14:02         ` Shawn Guo
2012-02-03 14:02         ` Shawn Guo
2012-02-03 17:21         ` Dong Aisheng
2012-02-03 17:21           ` Dong Aisheng
2012-02-03 17:21           ` Dong Aisheng
2012-02-03 17:32       ` Tony Lindgren
2012-02-03 17:32         ` Tony Lindgren
2012-02-03 17:32         ` Tony Lindgren
2012-02-03 18:13         ` Dong Aisheng
2012-02-03 18:13           ` Dong Aisheng
2012-02-03 18:13           ` Dong Aisheng
2012-02-03 21:05           ` Tony Lindgren [this message]
2012-02-03 21:05             ` Tony Lindgren
2012-02-04 16:55             ` Dong Aisheng
2012-02-04 16:55               ` Dong Aisheng
2012-02-04 17:15               ` Tony Lindgren
2012-02-04 17:15                 ` Tony Lindgren
2012-02-04 17:15                 ` Tony Lindgren
2012-02-03  8:46     ` Shawn Guo
2012-02-03  8:46       ` Shawn Guo
2012-02-13 19:58 ` Stephen Warren
2012-02-13 19:58   ` Stephen Warren
2012-02-13 19:58   ` Stephen Warren

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=20120203210545.GE1426@atomide.com \
    --to=tony@atomide.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 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.