From: Ray Jui <rjui-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
To: Pramod Kumar <pramodku-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>,
Linus Walleij
<linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Cc: Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
Pawel Moll <pawel.moll-5wv7dgnIgG8@public.gmane.org>,
Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>,
Ian Campbell
<ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org>,
Kumar Gala <galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
Scott Branden <sbranden-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>,
Russell King <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>,
"linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
bcm-kernel-feedback-list
<bcm-kernel-feedback-list-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>,
Jason Uy <jasonuy-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>,
Masahiro Yamada
<yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.org>,
Thomas Gleixner <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>,
Laurent Pinchart
<laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>,
"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
"linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Jonas Gorski <jogo-p3rKhJxN3npAfugRpC6u6w@public.gmane.org>
Subject: Re: [PATCH 07/11] pinctrl: use ngpios propety from DT
Date: Wed, 28 Oct 2015 08:39:47 -0700 [thread overview]
Message-ID: <5630EC43.6080900@broadcom.com> (raw)
In-Reply-To: <0C803592FC378B4E83922050AB46442A2AD742F0-HXj2mutaA2qau4nib9vn7Zr/X4hKkxxPpWgKQ6/u3Fg@public.gmane.org>
On 10/28/2015 4:52 AM, Pramod Kumar wrote:
> Hi Linus,
>
>> -----Original Message-----
>> From: Linus Walleij [mailto:linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org]
>> Sent: 27 October 2015 15:22
>> To: Pramod Kumar
>> Cc: Rob Herring; Pawel Moll; Mark Rutland; Ian Campbell; Kumar Gala; Ray Jui;
>> Scott Branden; Russell King; linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org; bcm-kernel-feedback-
>> list; Jason Uy; Masahiro Yamada; Thomas Gleixner; Laurent Pinchart;
>> devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org; linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org; linux-
>> kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org; Jonas Gorski
>> Subject: Re: [PATCH 07/11] pinctrl: use ngpios propety from DT
>>
>> On Mon, Oct 19, 2015 at 7:43 AM, Pramod Kumar <pramodku-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
>> wrote:
>>
>>> Since identical hardware is used in several instances and all pins are
>>> not routed to pinctrl hence getting total number of gpios from DT make
>>> more sense hence stop using total number of gpios pins from drivers
>>> and extract it from DT.
>>>
>>> Signed-off-by: Pramod Kumar <pramodku-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
>>> Reviewed-by: Ray Jui <rjui-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
>>> Reviewed-by: Scott Branden <sbranden-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
>>
>> This patch is wrong.
>>
>> Keep this per-compatible code, and only overrid the ngpios if and only if:
>>
>> - The ngpios is set in the DT node
>> - The ngpios in the DT node is *smaller* than the hardware
>> defined number of GPIOs.
>>
>> ngpios is for restricting the number of available lines due to routing etc, not to
>> define what the hardware has, because the hardware most certainly have all the
>> lines, it's just that you're not using all of them.
>>
>> Yours,
>> Linus Walleij
>
> I discussed with ASIC team regarding this iProc GPIO block. They use a library to create the GPIOs block where "total number of GPIO pins( let say N) in GPIO block" is used as an parameter.
> Library uses a construct for *a* GPIO pin. This gets instantiated N times to create a complete GPIO block with N pins.
Just to confirm, N can be *any number*, and when it exceeds 32,
additional registers will be created by the library, correct? I think
that's what I saw with Cygnus, where 3 instances of this GPIO controller
was used, with two of them less supporting less than 32 GPIOs and one of
them (ASIU) supporting 146 GPIOs, in which case, 5 register banks are
used with 0x200 segment each.
>
> All iProc based SoCs uses this library. So I'm not sure whether attaching "total number of GPIOs pins" to compatible-string make sense in this case.
The closest I can think of is to tie a very large number of N to the
"brcm,iproc-gpio" compatible string for all new iProc SoCs, but even
that, one can argue how large is *large*
> I personally feel that passing this number from the DT makes more sense here. Any iProc based future as well as current SoCs would be able to use this driver without any change.
>
> Please advise us in this case.
>
> Regards,
> Pramod
>
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2015-10-28 15:39 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-19 5:43 [PATCH 00/11] Generalized broadcom cygnus gpio driver Pramod Kumar
2015-10-19 5:43 ` [PATCH 01/11] dt-bindings: pinctrl: Optional DT property to support pin mappings Pramod Kumar
2015-10-22 18:45 ` Rob Herring
2015-10-27 9:43 ` Linus Walleij
2015-10-19 5:43 ` [PATCH 02/11] pinctrl: Remove GPIO to Pinctrl pin mapping from driver Pramod Kumar
2015-10-27 9:45 ` Linus Walleij
2015-10-19 5:43 ` [PATCH 04/11] dt-binding: Add new compatible string for gpio controller driver Pramod Kumar
2015-10-22 18:40 ` Rob Herring
2015-10-27 9:49 ` Linus Walleij
2015-10-19 5:43 ` [PATCH 05/11] dt-binding: Add ngpios property to GPIO controller node Pramod Kumar
2015-10-22 18:43 ` Rob Herring
[not found] ` <CAL_Jsq+Xwf7==J1LLnUDtj-cgJWRizbKXcYtwfEe5iv8VS-Uwg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-22 18:52 ` Ray Jui
2015-10-22 23:41 ` Rob Herring
2015-10-23 9:08 ` Laurent Pinchart
2015-10-23 11:51 ` Rob Herring
2015-10-23 13:02 ` Laurent Pinchart
2015-10-23 16:08 ` Ray Jui
[not found] ` <562A5B75.7010804-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2015-10-26 17:08 ` Pramod Kumar
2015-10-26 17:12 ` Ray Jui
2015-10-26 18:06 ` Pramod Kumar
[not found] ` <0C803592FC378B4E83922050AB46442A2AD729D4-HXj2mutaA2qau4nib9vn7Zr/X4hKkxxPpWgKQ6/u3Fg@public.gmane.org>
2015-10-26 18:08 ` Ray Jui
2015-10-27 9:41 ` Linus Walleij
2015-10-28 5:14 ` Pramod Kumar
2015-10-19 5:43 ` [PATCH 06/11] dts: define ngpios property in gpio controller's node Pramod Kumar
2015-10-19 5:43 ` [PATCH 07/11] pinctrl: use ngpios propety from DT Pramod Kumar
2015-10-27 9:51 ` Linus Walleij
[not found] ` <CACRpkdY1GDs6ypqCiY3iiv3DkfnHchnY+bWPoCqU=_sgn9f5vQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-10-28 11:52 ` Pramod Kumar
[not found] ` <0C803592FC378B4E83922050AB46442A2AD742F0-HXj2mutaA2qau4nib9vn7Zr/X4hKkxxPpWgKQ6/u3Fg@public.gmane.org>
2015-10-28 15:39 ` Ray Jui [this message]
2015-10-29 14:36 ` Linus Walleij
2015-10-29 14:47 ` Jonas Gorski
2015-10-30 11:06 ` Linus Walleij
[not found] ` <1445233398-27129-1-git-send-email-pramodku-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2015-10-19 5:43 ` [PATCH 03/11] dts: pinctrl: Add GPIO to Pinctrl pin mapping in DT Pramod Kumar
[not found] ` <1445233398-27129-4-git-send-email-pramodku-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2015-10-27 9:46 ` Linus Walleij
2015-11-18 18:39 ` Florian Fainelli
2015-11-19 3:34 ` Pramod Kumar
2015-10-19 5:43 ` [PATCH 08/11] pinctrl: Add new compatible string to GPIO controller driver Pramod Kumar
[not found] ` <1445233398-27129-9-git-send-email-pramodku-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
2015-10-27 9:54 ` Linus Walleij
2015-10-19 5:43 ` [PATCH 09/11] gpio: Rename func/macro/var to IP-block,iproc Pramod Kumar
2015-10-19 5:43 ` [PATCH 10/11] Documentation: Rename gpio controller name from cygnus to iproc Pramod Kumar
2015-10-22 18:41 ` Rob Herring
2015-10-19 5:43 ` [PATCH 11/11] pinctrl: Rename gpio driver " Pramod Kumar
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=5630EC43.6080900@broadcom.com \
--to=rjui-dy08kvg/lbpwk0htik3j/w@public.gmane.org \
--cc=bcm-kernel-feedback-list-dY08KVG/lbpWk0Htik3J/w@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=galak-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=ijc+devicetree-KcIKpvwj1kUDXYZnReoRVg@public.gmane.org \
--cc=jasonuy-dY08KVG/lbpWk0Htik3J/w@public.gmane.org \
--cc=jogo-p3rKhJxN3npAfugRpC6u6w@public.gmane.org \
--cc=laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org \
--cc=linus.walleij-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org \
--cc=mark.rutland-5wv7dgnIgG8@public.gmane.org \
--cc=pawel.moll-5wv7dgnIgG8@public.gmane.org \
--cc=pramodku-dY08KVG/lbpWk0Htik3J/w@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
--cc=sbranden-dY08KVG/lbpWk0Htik3J/w@public.gmane.org \
--cc=tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org \
--cc=yamada.masahiro-uWyLwvC0a2jby3iVrkZq2A@public.gmane.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 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).