On Tue, Apr 06, 2021 at 06:24:21PM -0700, Saravana Kannan wrote:
On Tue, Apr 6, 2021 at 6:10 PM Rob Herring robh@kernel.org wrote:
On Tue, Apr 6, 2021 at 7:46 PM Saravana Kannan saravanak@google.com wrote:
On Tue, Apr 6, 2021 at 5:34 PM Rob Herring robh@kernel.org wrote:
On Tue, Apr 06, 2021 at 04:09:10PM -0700, Saravana Kannan wrote:
On Mon, Apr 5, 2021 at 3:26 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.
nr-gpios without the "<vendor>," prefix is not allowed by the DT spec[1], so only add exception for the ",nr-gpios" suffix and let the error message continue being printed for non-compliant implementations.
[0]: nr-gpios is referenced in Documentation/devicetree/bindings/gpio:
- gpio-adnp.txt
- gpio-xgene-sb.txt
- gpio-xlp.txt
- snps,dw-apb-gpio.yaml
[1]: Link: https://github.com/devicetree-org/dt-schema/blob/cb53a16a1eb3e2169ce170c071e...
Fixes errors such as: OF: /palmbus@300000/gpio@600: could not find phandle
Fixes: 7f00be96f125 ("of: property: Add device link support for interrupt-parent, dmas and -gpio(s)") Signed-off-by: Ilya Lipnitskiy ilya.lipnitskiy@gmail.com Cc: Saravana Kannan saravanak@google.com Cc: stable@vger.kernel.org # 5.5.x
drivers/of/property.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/drivers/of/property.c b/drivers/of/property.c index 2046ae311322..1793303e84ac 100644 --- a/drivers/of/property.c +++ b/drivers/of/property.c @@ -1281,7 +1281,16 @@ DEFINE_SIMPLE_PROP(pinctrl7, "pinctrl-7", NULL) DEFINE_SIMPLE_PROP(pinctrl8, "pinctrl-8", NULL) DEFINE_SUFFIX_PROP(regulators, "-supply", NULL) DEFINE_SUFFIX_PROP(gpio, "-gpio", "#gpio-cells") -DEFINE_SUFFIX_PROP(gpios, "-gpios", "#gpio-cells")
+static struct device_node *parse_gpios(struct device_node *np,
const char *prop_name, int index)
+{
if (!strcmp_suffix(prop_name, ",nr-gpios"))
return NULL;
Ah I somehow missed this patch. This gives a blanked exception for vendor,nr-gpios. I'd prefer explicit exceptions for all the instances of ",nr-gpios" we are grandfathering in. Any future additions should be rejected. Can we do that please?
Rob, you okay with making this list more explicit?
Not the kernel's job IMO. A schema is the right way to handle that.
Ok, that's fine by me. Btw, let's land this in driver-core? I've made changes there and this might cause conflicts. Not sure.
It merges with linux-next fine. You'll need to resend this to Greg if you want to do that.
Reviewed-by: Rob Herring robh@kernel.org
Hi Greg,
Can you pull this into driver-core please? I touch this file a lot and might need to do so again if any fw_devlink=on issues come up. So trying to preemptively avoid conflicts.
Pull what? I'm totally lost in this thread, sorry...
If you need me to apply something, you at least need to cc: me on it :)
thanks,
gre gk-h