Thread (7 messages) read the whole thread 7 messages, 3 authors, 2024-07-15

RE: [PATCH 1/3] dt-bindings: pinctrl: Add support for Xilinx Versal platform

From: "Potthuri, Sai Krishna" <sai.krishna.potthuri@amd.com>
Date: 2024-07-15 09:40:49
Also in: linux-devicetree, linux-gpio, lkml

Hi Rob,
-----Original Message-----
From: Rob Herring <robh@kernel.org>
Sent: Friday, July 12, 2024 4:06 AM
To: Potthuri, Sai Krishna <sai.krishna.potthuri@amd.com>
Cc: Linus Walleij <redacted>; Simek, Michal
[off-list ref]; Krzysztof Kozlowski
[off-list ref]; Conor Dooley [off-list ref];
Buddhabhatti, Jay [off-list ref]; Dhaval Shah
[off-list ref]; Kundanala, Praveen Teja
[off-list ref]; Greg Kroah-Hartman
[off-list ref]; linux-arm-kernel@lists.infradead.org; linux-
kernel@vger.kernel.org; linux-gpio@vger.kernel.org;
devicetree@vger.kernel.org; saikrishna12468@gmail.com; git (AMD-Xilinx)
[off-list ref]
Subject: Re: [PATCH 1/3] dt-bindings: pinctrl: Add support for Xilinx Versal
platform

On Thu, Jul 11, 2024 at 04:03:15PM +0530, Sai Krishna Potthuri wrote:
quoted
Add Xilinx Versal compatible string and corresponding groups, function
and pins properties to support pin controller features on Versal platform.

Signed-off-by: Sai Krishna Potthuri <sai.krishna.potthuri@amd.com>
---
 .../bindings/pinctrl/xlnx,zynqmp-pinctrl.yaml | 509
+++++++++++-------
 1 file changed, 329 insertions(+), 180 deletions(-)

diff --git
a/Documentation/devicetree/bindings/pinctrl/xlnx,zynqmp-pinctrl.yaml
b/Documentation/devicetree/bindings/pinctrl/xlnx,zynqmp-pinctrl.yaml
index ce66fd15ff9c..68c378b17f49 100644
---
a/Documentation/devicetree/bindings/pinctrl/xlnx,zynqmp-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/xlnx,zynqmp-pinctrl.ya
+++ ml
@@ -28,7 +28,9 @@ description: |

 properties:
   compatible:
-    const: xlnx,zynqmp-pinctrl
+    enum:
+      - xlnx,zynqmp-pinctrl
+      - xlnx,versal-pinctrl

 patternProperties:
   '^(.*-)?(default|gpio-grp)$':
@@ -46,196 +48,334 @@ patternProperties:
             description:
               List of pins to select (either this or "groups" must be specified)
             items:
-              pattern: '^MIO([0-9]|[1-6][0-9]|7[0-7])$'
+              allOf:
+                - if:
+                    properties:
+                      compatible:
+                        contains:
+                          const: xlnx,zynqmp-pinctrl
+                  then:
+                    pattern: '^MIO([0-9]|[1-6][0-9]|7[0-7])$'
+                  else:
+                    pattern: '^((LPD|PMC)_)?MIO([0-9]|[1-6][0-9]|7[0-7])$'
Did you test whether this works? It doesn't because the schema is
nonsense. The schema applies to a property's value, but the "if" schema
applies to a node. And it's not even the node you are at, but the parent
node. IOW, there is no "compatible" in this node.

The 'else' schema covers both cases, so I'd just change the pattern and be
done with it.
Ok, got it. Realized now that while testing i used group which is common for
both the platforms, might be that is the reason it did not flagged any issue.
However, based on the rest of the patch, you should just do a new schema
doc. There's little overlap of the values.
Ok, will create a new binding document for Versal platform.

Regards
Sai Krishna
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help