Hi Saravana,
On Mon, Apr 5, 2021 at 1:01 PM Saravana Kannan saravanak@google.com wrote:
On Sun, Apr 4, 2021 at 8:14 PM Ilya Lipnitskiy ilya.lipnitskiy@gmail.com wrote:
[<vendor>,]nr-gpios property is used by some GPIO drivers[0] to indicate the number of GPIOs present on a system, not define a GPIO. nr-gpios is not configured by #gpio-cells and can't be parsed along with other "*-gpios" properties.
scripts/dtc/checks.c also has a special case for nr-gpio{s}. However, nr-gpio is not really special, so we only need to fix nr-gpios suffix here.
The only example of this that I see is "snps,nr-gpios".
arch/arm64/boot/dts/apm/apm-shadowcat.dtsi uses "apm,nr-gpios", with parsing code in drivers/gpio/gpio-xgene-sb.c. There is also code in drivers/gpio/gpio-adnp.c and drivers/gpio/gpio-mockup.c using "nr-gpios" without any vendor prefix.
I personally don't think causing regressions is good for any reason, so I think we need to fix this in stable releases. The patch can be reverted when nr-gpios is no longer special. The logic here should also be aligned with scripts/dtc/checks.c, I actually submitted a patch to warn about "nr-gpios" only and not "nr-gpio" in dtc as well: https://www.spinics.net/lists/devicetree-compiler/msg03619.html
Ilya