Devicetree
 help / color / mirror / Atom feed
* [PATCH v2] dt-bindings: pinctrl: Convert TI DA850 pupd to DT schema
@ 2026-08-11 11:10 Eduard Bostina
  2026-08-11 18:06 ` Rob Herring
  0 siblings, 1 reply; 2+ messages in thread
From: Eduard Bostina @ 2026-08-11 11:10 UTC (permalink / raw)
  To: Conor Dooley, devicetree, Eduard Bostina, Krzysztof Kozlowski,
	Linus Walleij, linux-gpio, linux-kernel, Rob Herring
  Cc: daniel.baluta, simona.toaca, goledhruva, m-chawdhry

Convert the Texas Instruments DA850/OMAP-L138/AM18x pullup/down
controller bindings to DT schema.

Signed-off-by: Eduard Bostina <egbostina@gmail.com>
---
Changes in v2:
- Excluded the 'phandle' property from the pin group node pattern so
  it is no longer validated as a pin configuration node. This fixes
  the 'make dt_binding_check' failure.

Link to v1:
https://lore.kernel.org/all/20260811092057.687155-1-egbostina@gmail.com/

 .../bindings/pinctrl/ti,da850-pupd.txt        | 55 --------------
 .../bindings/pinctrl/ti,da850-pupd.yaml       | 74 +++++++++++++++++++
 2 files changed, 74 insertions(+), 55 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.txt
 create mode 100644 Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.yaml

diff --git a/Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.txt b/Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.txt
deleted file mode 100644
index 7f2980567c9f..000000000000
--- a/Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.txt
+++ /dev/null
@@ -1,55 +0,0 @@
-* Pin configuration for TI DA850/OMAP-L138/AM18x
-
-These SoCs have a separate controller for setting bias (internal pullup/down).
-Bias can only be selected for groups rather than individual pins.
-
-Required Properties:
-
-  - compatible: Must be "ti,da850-pupd"
-  - reg: Base address and length of the memory resource used by the pullup/down
-    controller hardware module.
-
-The controller node also acts as a container for pin group configuration nodes.
-The names of these groups are ignored.
-
-Pin Group Node Properties:
-
-- groups: An array of strings, each string containing the name of a pin group.
-          Valid names are "cp0".."cp31".
-
-The pin configuration parameters use the generic pinconf bindings defined in
-pinctrl-bindings.txt in this directory. The supported parameters are
-bias-disable, bias-pull-up, bias-pull-down.
-
-
-Example
--------
-
-In common dtsi file:
-
-	pinconf: pin-controller@22c00c {
-		compatible = "ti,da850-pupd";
-		reg = <0x22c00c 0x8>;
-	};
-
-In board-specific file:
-
-	&pinconf {
-		pinctrl-0 = <&pinconf_bias_groups>;
-		pinctrl-names = "default";
-
-		pinconf_bias_groups: bias-groups {
-			pull-up {
-				groups = "cp30", "cp31";
-				bias-pull-up;
-			};
-			pull-down {
-				groups = "cp29", "cp28";
-				bias-pull-down;
-			};
-			disable {
-				groups = "cp27", "cp26";
-				bias-disable;
-			};
-		};
-	};
diff --git a/Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.yaml b/Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.yaml
new file mode 100644
index 000000000000..059da050e611
--- /dev/null
+++ b/Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.yaml
@@ -0,0 +1,74 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pinctrl/ti,da850-pupd.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Texas Instruments DA850/OMAP-L138/AM18x Pin Configuration
+
+maintainers:
+  - Eduard Bostina <egbostina@gmail.com>
+
+description:
+  These SoCs have a separate controller for setting bias (internal pullup/down).
+  Bias can only be selected for groups rather than individual pins.
+  The controller node also acts as a container for pin group configuration nodes.
+  The names of these groups are ignored.
+
+properties:
+  compatible:
+    const: ti,da850-pupd
+
+  reg:
+    maxItems: 1
+
+  pinctrl-0: true
+  pinctrl-names: true
+
+patternProperties:
+  "-groups$":
+    type: object
+    additionalProperties: false
+    patternProperties:
+      "^(?!phandle$)[a-zA-Z0-9_-]+$":
+        $ref: /schemas/pinctrl/pincfg-node.yaml#
+        properties:
+          groups:
+            $ref: /schemas/types.yaml#/definitions/string-array
+            description: An array of strings containing the name of a pin group.
+            items:
+              pattern: "^cp([0-9]|[1-2][0-9]|3[0-1])$"
+          bias-disable: true
+          bias-pull-up: true
+          bias-pull-down: true
+        unevaluatedProperties: false
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+examples:
+  - |
+    pinconf: pin-controller@22c00c {
+        compatible = "ti,da850-pupd";
+        reg = <0x22c00c 0x8>;
+        pinctrl-0 = <&pinconf_bias_groups>;
+        pinctrl-names = "default";
+
+        pinconf_bias_groups: bias-groups {
+            pull-up {
+                groups = "cp30", "cp31";
+                bias-pull-up;
+            };
+            pull-down {
+                groups = "cp29", "cp28";
+                bias-pull-down;
+            };
+            disable {
+                groups = "cp27", "cp26";
+                bias-disable;
+            };
+        };
+    };
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v2] dt-bindings: pinctrl: Convert TI DA850 pupd to DT schema
  2026-08-11 11:10 [PATCH v2] dt-bindings: pinctrl: Convert TI DA850 pupd to DT schema Eduard Bostina
@ 2026-08-11 18:06 ` Rob Herring
  0 siblings, 0 replies; 2+ messages in thread
From: Rob Herring @ 2026-08-11 18:06 UTC (permalink / raw)
  To: Eduard Bostina
  Cc: Conor Dooley, devicetree, Krzysztof Kozlowski, Linus Walleij,
	linux-gpio, linux-kernel, daniel.baluta, simona.toaca, goledhruva,
	m-chawdhry

On Tue, Aug 11, 2026 at 11:10:23AM +0000, Eduard Bostina wrote:
> Convert the Texas Instruments DA850/OMAP-L138/AM18x pullup/down
> controller bindings to DT schema.
> 
> Signed-off-by: Eduard Bostina <egbostina@gmail.com>
> ---
> Changes in v2:
> - Excluded the 'phandle' property from the pin group node pattern so
>   it is no longer validated as a pin configuration node. This fixes
>   the 'make dt_binding_check' failure.
> 
> Link to v1:
> https://lore.kernel.org/all/20260811092057.687155-1-egbostina@gmail.com/
> 
>  .../bindings/pinctrl/ti,da850-pupd.txt        | 55 --------------
>  .../bindings/pinctrl/ti,da850-pupd.yaml       | 74 +++++++++++++++++++
>  2 files changed, 74 insertions(+), 55 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.txt
>  create mode 100644 Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.yaml


> diff --git a/Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.yaml b/Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.yaml
> new file mode 100644
> index 000000000000..059da050e611
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/pinctrl/ti,da850-pupd.yaml
> @@ -0,0 +1,74 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/pinctrl/ti,da850-pupd.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Texas Instruments DA850/OMAP-L138/AM18x Pin Configuration
> +
> +maintainers:
> +  - Eduard Bostina <egbostina@gmail.com>
> +
> +description:
> +  These SoCs have a separate controller for setting bias (internal pullup/down).
> +  Bias can only be selected for groups rather than individual pins.
> +  The controller node also acts as a container for pin group configuration nodes.
> +  The names of these groups are ignored.
> +
> +properties:
> +  compatible:
> +    const: ti,da850-pupd
> +
> +  reg:
> +    maxItems: 1
> +
> +  pinctrl-0: true
> +  pinctrl-names: true
> +
> +patternProperties:
> +  "-groups$":
> +    type: object
> +    additionalProperties: false
> +    patternProperties:
> +      "^(?!phandle$)[a-zA-Z0-9_-]+$":

Looks like '^(disable|pull-(up|down))$' would work here. Actual users 
only have 'disable'.


> +        $ref: /schemas/pinctrl/pincfg-node.yaml#
> +        properties:
> +          groups:
> +            $ref: /schemas/types.yaml#/definitions/string-array
> +            description: An array of strings containing the name of a pin group.
> +            items:
> +              pattern: "^cp([0-9]|[1-2][0-9]|3[0-1])$"
> +          bias-disable: true
> +          bias-pull-up: true
> +          bias-pull-down: true
> +        unevaluatedProperties: false

Better to use 'additionalProperties: false' here since you listed the 
only valid properties.

> +
> +required:
> +  - compatible
> +  - reg
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    pinconf: pin-controller@22c00c {
> +        compatible = "ti,da850-pupd";
> +        reg = <0x22c00c 0x8>;
> +        pinctrl-0 = <&pinconf_bias_groups>;
> +        pinctrl-names = "default";
> +
> +        pinconf_bias_groups: bias-groups {
> +            pull-up {
> +                groups = "cp30", "cp31";
> +                bias-pull-up;
> +            };
> +            pull-down {
> +                groups = "cp29", "cp28";
> +                bias-pull-down;
> +            };
> +            disable {
> +                groups = "cp27", "cp26";
> +                bias-disable;
> +            };
> +        };
> +    };
> -- 
> 2.43.0
> 
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-08-11 18:06 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-11 11:10 [PATCH v2] dt-bindings: pinctrl: Convert TI DA850 pupd to DT schema Eduard Bostina
2026-08-11 18:06 ` Rob Herring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox