[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250416150847.3422218-1-Frank.Li@nxp.com>
Date: Wed, 16 Apr 2025 11:08:46 -0400
From: Frank Li <Frank.Li@....com>
To: Dong Aisheng <aisheng.dong@....com>,
Fabio Estevam <festevam@...il.com>,
Shawn Guo <shawnguo@...nel.org>,
Jacky Bai <ping.bai@....com>,
Pengutronix Kernel Team <kernel@...gutronix.de>,
NXP S32 Linux Team <s32@....com>,
Linus Walleij <linus.walleij@...aro.org>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
linux-gpio@...r.kernel.org (open list:PIN CONTROLLER - FREESCALE),
devicetree@...r.kernel.org (open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS),
linux-kernel@...r.kernel.org (open list)
Cc: imx@...ts.linux.dev
Subject: [PATCH v2 1/1] dt-bindings: pinctrl: convert fsl,vf610-pinctrl.txt to yaml format
Convert fsl,vf610-pinctrl.txt to yaml format.
Additional changes:
- subnode name force pattern to 'grp$' to align other imx chips.
Reviewed-by: Rob Herring (Arm) <robh@...nel.org>
Signed-off-by: Frank Li <Frank.Li@....com>
---
change from v1 to v2
- add dual license
- add Rob's reviewed-by tag
---
.../bindings/pinctrl/fsl,vf610-iomuxc.yaml | 83 +++++++++++++++++++
.../bindings/pinctrl/fsl,vf610-pinctrl.txt | 41 ---------
2 files changed, 83 insertions(+), 41 deletions(-)
create mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,vf610-iomuxc.yaml
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,vf610-pinctrl.txt
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,vf610-iomuxc.yaml b/Documentation/devicetree/bindings/pinctrl/fsl,vf610-iomuxc.yaml
new file mode 100644
index 0000000000000..3e13587df3107
--- /dev/null
+++ b/Documentation/devicetree/bindings/pinctrl/fsl,vf610-iomuxc.yaml
@@ -0,0 +1,83 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pinctrl/fsl,vf610-iomuxc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Freescale Vybrid VF610 IOMUX Controller
+
+description:
+ Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
+ and usage.
+
+maintainers:
+ - Frank Li <Frank.Li@....com>
+
+properties:
+ compatible:
+ const: fsl,vf610-iomuxc
+
+ reg:
+ maxItems: 1
+
+patternProperties:
+ 'grp$':
+ type: object
+ description:
+ Pinctrl node's client devices use subnodes for desired pin configuration.
+ Client device subnodes use below standard properties.
+
+ properties:
+ fsl,pins:
+ description:
+ two integers array, represents a group of pins mux and config setting.
+ The format is fsl,pins = <PIN_FUNC_ID CONFIG>, PIN_FUNC_ID is a pin
+ working on a specific function, CONFIG is the pad setting value such
+ as pull-up, speed, ode for this pin. Please refer to Vybrid VF610
+ datasheet for the valid pad config settings.
+ $ref: /schemas/types.yaml#/definitions/uint32-matrix
+ items:
+ items:
+ - description:
+ PIN_FUN_ID refer to vf610-pinfunc.h in device tree source folder
+ for all available PIN_FUNC_ID for Vybrid VF610.
+ - description: |
+ CONFIG bits definition is
+ PAD_CTL_SPEED_LOW (1 << 12)
+ PAD_CTL_SPEED_MED (2 << 12)
+ PAD_CTL_SPEED_HIGH (3 << 12)
+ PAD_CTL_SRE_FAST (1 << 11)
+ PAD_CTL_SRE_SLOW (0 << 11)
+ PAD_CTL_ODE (1 << 10)
+ PAD_CTL_HYS (1 << 9)
+ PAD_CTL_DSE_DISABLE (0 << 6)
+ PAD_CTL_DSE_150ohm (1 << 6)
+ PAD_CTL_DSE_75ohm (2 << 6)
+ PAD_CTL_DSE_50ohm (3 << 6)
+ PAD_CTL_DSE_37ohm (4 << 6)
+ PAD_CTL_DSE_30ohm (5 << 6)
+ PAD_CTL_DSE_25ohm (6 << 6)
+ PAD_CTL_DSE_20ohm (7 << 6)
+ PAD_CTL_PUS_100K_DOWN (0 << 4)
+ PAD_CTL_PUS_47K_UP (1 << 4)
+ PAD_CTL_PUS_100K_UP (2 << 4)
+ PAD_CTL_PUS_22K_UP (3 << 4)
+ PAD_CTL_PKE (1 << 3)
+ PAD_CTL_PUE (1 << 2)
+ PAD_CTL_OBE_ENABLE (1 << 1)
+ PAD_CTL_IBE_ENABLE (1 << 0)
+ PAD_CTL_OBE_IBE_ENABLE (3 << 0)
+
+ required:
+ - fsl,pins
+
+ additionalProperties: false
+
+required:
+ - compatible
+ - reg
+
+allOf:
+ - $ref: pinctrl.yaml#
+
+unevaluatedProperties: false
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,vf610-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,vf610-pinctrl.txt
deleted file mode 100644
index ddcdeb697c292..0000000000000
--- a/Documentation/devicetree/bindings/pinctrl/fsl,vf610-pinctrl.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-Freescale Vybrid VF610 IOMUX Controller
-
-Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
-and usage.
-
-Required properties:
-- compatible: "fsl,vf610-iomuxc"
-- fsl,pins: two integers array, represents a group of pins mux and config
- setting. The format is fsl,pins = <PIN_FUNC_ID CONFIG>, PIN_FUNC_ID is
- a pin working on a specific function, CONFIG is the pad setting value
- such as pull-up, speed, ode for this pin. Please refer to Vybrid VF610
- datasheet for the valid pad config settings.
-
-CONFIG bits definition:
-PAD_CTL_SPEED_LOW (1 << 12)
-PAD_CTL_SPEED_MED (2 << 12)
-PAD_CTL_SPEED_HIGH (3 << 12)
-PAD_CTL_SRE_FAST (1 << 11)
-PAD_CTL_SRE_SLOW (0 << 11)
-PAD_CTL_ODE (1 << 10)
-PAD_CTL_HYS (1 << 9)
-PAD_CTL_DSE_DISABLE (0 << 6)
-PAD_CTL_DSE_150ohm (1 << 6)
-PAD_CTL_DSE_75ohm (2 << 6)
-PAD_CTL_DSE_50ohm (3 << 6)
-PAD_CTL_DSE_37ohm (4 << 6)
-PAD_CTL_DSE_30ohm (5 << 6)
-PAD_CTL_DSE_25ohm (6 << 6)
-PAD_CTL_DSE_20ohm (7 << 6)
-PAD_CTL_PUS_100K_DOWN (0 << 4)
-PAD_CTL_PUS_47K_UP (1 << 4)
-PAD_CTL_PUS_100K_UP (2 << 4)
-PAD_CTL_PUS_22K_UP (3 << 4)
-PAD_CTL_PKE (1 << 3)
-PAD_CTL_PUE (1 << 2)
-PAD_CTL_OBE_ENABLE (1 << 1)
-PAD_CTL_IBE_ENABLE (1 << 0)
-PAD_CTL_OBE_IBE_ENABLE (3 << 0)
-
-Please refer to vf610-pinfunc.h in device tree source folder
-for all available PIN_FUNC_ID for Vybrid VF610.
--
2.34.1
Powered by blists - more mailing lists