devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: Tony Lindgren <tony@atomide.com>
Cc: Stephen Warren <swarren@nvidia.com>,
	Stephen Warren <swarren@wwwdotorg.org>,
	device-tree <devicetree-discuss@lists.ozlabs.org>,
	Prabhakar Lad <prabhakar.csengg@gmail.com>,
	linus.walleij@linaro.org,
	LAK <linux-arm-kernel@lists.infradead.org>
Subject: Re: Query on pinctrl usage for DT nodes
Date: Tue, 23 Apr 2013 09:42:51 +0200	[thread overview]
Message-ID: <51763B7B.707@ti.com> (raw)
In-Reply-To: <20130416213232.GU10155@atomide.com>

On 04/16/2013 11:32 PM, Tony Lindgren wrote:
> * Peter Ujfalusi <peter.ujfalusi@ti.com> [130415 01:30]:
>> On 04/10/2013 10:34 PM, Tony Lindgren wrote:
>>> Yeah how about just change the pintctrl-single,bits register
>>> naming to be register + bit?  Something like 0xdeadbeef.0 and
>>> 0xdeadbeef.1 and so on.
>>
>> Something like this might work I think. It is going to be a bit tricky IMHO
>> since we might need span out new 'register' every time a device requests for a
>> new pinctrl-single,bits for already used register in the
>> pinctrl-single,bit-per-mux area. In this way we still can make sure that
>> certain bit are only used by a single driver.
> 
> OK. If it's one bit per mux type register we should be able to create
> the right amount of entries based on the submask in pinctrs-single,bit?

Right now it seams to be true that we have one bit per mux (in DEVCONF0 on
OMAP3 for example). So that would work fine, but There could be different
registers around with more than one bit per mux.

Another way to deal with this is to:
in case of pinctrl-single,bit-per-mux we assume one bit per mux and create
entries based on the pinctrl-single,function-mask's bits.

In case we have more than one bit for the mux in the register we could have
optional property stating the number of different muxes handled by the register.

One bit per mux type:

control_devconf0: pinmux@48002274 {
        compatible = "pinctrl-single";
        reg = <0x48002274 4>;   /* Single register */
        #address-cells = <1>;
        #size-cells = <0>;
        pinctrl-single,bit-per-mux;
        pinctrl-single,register-width = <32>;
        pinctrl-single,function-mask = <0x5F>;
};

Results six entries.

control_devconf0: pinmux@48002274 {
        compatible = "pinctrl-single";
        reg = <0x48002274 4>;   /* Single register */
        #address-cells = <1>;
        #size-cells = <0>;
        pinctrl-single,bit-per-mux;
        pinctrl-single,functions-in-register = <3>;
        pinctrl-single,register-width = <32>;
        pinctrl-single,function-mask = <0x5F>;
};

Will results three entries.

In both cases we still need to test overlaps in the handled bits.

-- 
Péter

  reply	other threads:[~2013-04-23  7:42 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-03  9:16 Query on pinctrl usage for DT nodes Prabhakar Lad
     [not found] ` <CA+V-a8uiPwsAD--OHFAE=i2ed+-wbXm4p2deZXr92+Zv6GDS1w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-04-03 16:44   ` Stephen Warren
     [not found]     ` <515C5C76.3080009-3lzwWm7+Weoh9ZMKESR00Q@public.gmane.org>
2013-04-03 18:38       ` Tony Lindgren
     [not found]         ` <20130403183803.GA10155-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2013-04-03 18:42           ` Tony Lindgren
2013-04-15  8:19             ` Peter Ujfalusi
     [not found]               ` <516BB818.3060603-l0cyMroinI0@public.gmane.org>
2013-04-15 16:40                 ` Stephen Warren
2013-04-16  7:18                   ` Peter Ujfalusi
2013-04-08 13:12       ` Prabhakar Lad
     [not found]         ` <CA+V-a8t3wtP77DdeUoQHKMjAuWmV+ude+1J3UjJmMTqobgStjA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-04-08 17:24           ` Stephen Warren
2013-04-10  8:12             ` Prabhakar Lad
2013-04-10 17:32               ` Stephen Warren
2013-04-10 20:34                 ` Tony Lindgren
2013-04-15  5:09                   ` Prabhakar Lad
2013-04-15  6:42                     ` Prabhakar Lad
2013-04-15  8:26                   ` Peter Ujfalusi
     [not found]                     ` <516BB99F.2080502-l0cyMroinI0@public.gmane.org>
2013-04-16 21:32                       ` Tony Lindgren
2013-04-23  7:42                         ` Peter Ujfalusi [this message]
     [not found]                           ` <51763B7B.707-l0cyMroinI0@public.gmane.org>
2013-04-23 18:17                             ` Tony Lindgren
     [not found]                               ` <20130423181753.GK10155-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2013-05-21 14:16                                 ` Manjunathappa, Prakash

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=51763B7B.707@ti.com \
    --to=peter.ujfalusi@ti.com \
    --cc=devicetree-discuss@lists.ozlabs.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=prabhakar.csengg@gmail.com \
    --cc=swarren@nvidia.com \
    --cc=swarren@wwwdotorg.org \
    --cc=tony@atomide.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;
as well as URLs for NNTP newsgroup(s).