All of lore.kernel.org
 help / color / mirror / Atom feed
From: swarren@wwwdotorg.org (Stephen Warren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 5/9] document: devicetree: bind pinconf with pin-single
Date: Thu, 01 Nov 2012 12:04:16 -0600	[thread overview]
Message-ID: <5092B9A0.9000204@wwwdotorg.org> (raw)
In-Reply-To: <1351724661-29050-6-git-send-email-haojian.zhuang@gmail.com>

On 10/31/2012 05:04 PM, Haojian Zhuang wrote:
> Add comments with pinconf & gpio range in the document of
> pinctrl-single.

I'd tend to suggest separating the series to add GPIO range support and
pinconf support, especially since didn't Tony suggest a separate driver
for pinconf? Perhaps that was just for non-generic properties.

> +++ b/Documentation/devicetree/bindings/pinctrl/pinctrl-single.txt

> +- pinctrl-single,gpio-ranges : gpio range list of phandles.
> +  Must be present if gpio range phandle is specified.
> +  This property should be existing in .dtsi files for those silicons.
> +
> +- pinctrl-single,gpio : array with gpio range start, size & register
> +  offset. Must be present if gpio range phandle is specified.
> +  This property should be existing in .dts files for those boards.
> +
> +- pinctrl-single,gpio-func : gpio function value in the pinmux register.
> +  Must be present if gpio range phandle is specified.
> +  This property should be existing in .dts files for those boards.

I don't see any reason why pinctrl-single,gpio or
pinctrl-single,gpio-func are board-specific rather than SoC-specific.
Surely it's the Soc HW construction that defines how the pinctrl and
GPIO modules relate to each-other? I would simply remove the last
sentence from each of the three descriptions above.

Also, isn't this list a list of properties for the main pinctrl-single
node itself? I think you should split the list up as follows:

1) A description of the main node
2) A list of required and optional properties for the main node
3) A description of what a GPIO range node is
4) A list of required and optional properties for a GPIO range node.

I think that would explain the whole structure a lot more clearly.

Oh, and why not just get rid of the pinctrl-single,gpio-ranges property
entirely, and simply make the GPIO range definitions be child nodes of
the pinctrl-single node? That would require them to either be named
according to some scheme or have some compatible property to
differentiate them from any other nodes, but I think that's workable.

> @@ -42,6 +77,15 @@ Where 0xdc is the offset from the pinctrl register base address for the
>  device pinctrl register, 0x18 is the desired value, and 0xff is the sub mask to
>  be used when applying this change to the register.
>  
> +In case pinctrl device supports gpio function, it needs to define gpio range.
> +All the phandles of gpio range list should be set in below:
> +
> +	pinctrl-single,gpio-ranges = <[phandle of gpio range]>;
> +
> +	[phandle of gpio range]: {

That's a label, not a phandle. The reference to the label gets compiled
to a phandle in the DTB. The node name is missing. you should probably
just use an example label and re-write the last 3 lines as:

	pinctrl-single,gpio-ranges = <&range0>;

	range0: range0 {

  reply	other threads:[~2012-11-01 18:04 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-31 23:04 [PATCH v3 0/9]: pinctrl-single support DT Haojian Zhuang
2012-10-31 23:04 ` [PATCH v3 1/9] ARM: mmp: select pinctrl driver Haojian Zhuang
2012-10-31 23:04 ` [PATCH v3 2/9] pinctrl: single: support gpio request and free Haojian Zhuang
2012-10-31 23:04 ` [PATCH v3 3/9] pinctrl: single: support pinconf generic Haojian Zhuang
2012-11-01  0:44   ` Tony Lindgren
2012-11-07  7:27     ` [PATCH 08/10] " Haojian Zhuang
2012-10-31 23:04 ` [PATCH v3 4/9] ARM: dts: support pinctrl single in pxa910 Haojian Zhuang
2012-10-31 23:04 ` [PATCH v3 5/9] document: devicetree: bind pinconf with pin-single Haojian Zhuang
2012-11-01 18:04   ` Stephen Warren [this message]
2012-11-02 16:37     ` Tony Lindgren
2012-11-07 15:04     ` Haojian Zhuang
2012-10-31 23:04 ` [PATCH v3 6/9] tty: pxa: configure pin Haojian Zhuang
2012-10-31 23:04 ` [PATCH v3 7/9] i2c: pxa: use devm_kzalloc Haojian Zhuang
2012-10-31 23:04 ` [PATCH v3 8/9] i2c: pxa: configure pinmux Haojian Zhuang
2012-10-31 23:04 ` [PATCH v3 9/9] pinctrl: single: dump pinmux register value Haojian Zhuang
2012-11-01  0:47   ` Tony Lindgren
2012-11-01  5:48     ` Haojian Zhuang
2012-11-06 14:39       ` Linus Walleij

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=5092B9A0.9000204@wwwdotorg.org \
    --to=swarren@wwwdotorg.org \
    --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.