Re: [PATCH 4/5] gpio: of: Add support to have multiple gpios in gpio-hog

From: Laxman Dewangan
Date: Thu Mar 17 2016 - 13:58:03 EST



On Thursday 17 March 2016 09:16 PM, Rob Herring wrote:
On Thu, Mar 10, 2016 at 05:23:55PM +0530, Laxman Dewangan wrote:
On this case, we have already property "line-name" and passed the name
of the gpio via this property.
The property names is "line-name" which is good for one string. We can
support other property "line-names" with multiple string per GPIO index.

line-names = "wlan-reset", "wlan-enable";
Then what happens when someone wants to selectively disable gpio hogs?

status = "okay", "disabled", "okay";

While I often push things to fewer nodes and more compact descriptions,
I don't think that is the right direction in this case.

I dont think we need to support the individual gpio to be enable/disable by status.
We need to support the status property at node level only. if individual gpio need to be enabled/disabled by status then it need to break in different hog nodes.

This is same as like we have in pincontrol where we can provide the list of pin names for some configuration under same node.


There is currently a discussion about the future bindings for subnodes in GPIO
controller nodes. Please have a look at these two mail threads:

"Device tree binding documentation for gpio-switch"
"gpio: of: Add support to have multiple gpios in gpio-hog"
Second one is this patch only. Is it by intention?

The binding details about the gpio-switch and names are given by property
"lable". I think property "label" is standard way of going forward i.e. I
post similar patch for gpio-keys device name from DT after got review
comment.

So here, we can have the gpio names under property "label" or "labels".
label is standard. labels you just made up.

Yaah, lables for plural only. Otherwise no issue with "label".


Or am I missing anything?
The point is the more one off changes I see that are all inter-related,
the less willing I am to accept any that don't consider all the cases.
The inter-relationship here is how do we describe gpio lines that don't
otherwise have a connection to another node and how to deal with them if
that changes.