* [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: Convert i.MX35/5x/6 to YAML
@ 2024-10-15 23:20 Marek Vasut
2024-10-16 6:58 ` [PATCH] dt-bindings: pinctrl: fsl, imx6ul-pinctrl: " Alexander Stein
2024-10-16 17:26 ` [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: " Rob Herring
0 siblings, 2 replies; 6+ messages in thread
From: Marek Vasut @ 2024-10-15 23:20 UTC (permalink / raw)
To: devicetree
Cc: Marek Vasut, Conor Dooley, Dong Aisheng, Fabio Estevam, Jacky Bai,
Krzysztof Kozlowski, Linus Walleij, Pengutronix Kernel Team,
Rob Herring, Sascha Hauer, Shawn Guo, imx, kernel,
linux-arm-kernel, linux-gpio
The IOMUXC controller description is almost identical on i.MX35/5x/6 SoCs,
except for the configuration bits which differ across SoCs. Rename the
fsl,imx6ul-pinctrl.yaml to fsl,imx35-pinctrl.yaml, fill in compatible
strings for the other SoCs and fill in the various bits into desciption.
This way, i.MX35/5x/6 series SoCs can all be converted to YAML DT. Remove
the old text DT bindings description.
Signed-off-by: Marek Vasut <marex@denx.de>
---
Cc: Conor Dooley <conor+dt@kernel.org>
Cc: Dong Aisheng <aisheng.dong@nxp.com>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Jacky Bai <ping.bai@nxp.com>
Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
Cc: Linus Walleij <linus.walleij@linaro.org>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Rob Herring <robh@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Shawn Guo <shawnguo@kernel.org>
Cc: devicetree@vger.kernel.org
Cc: imx@lists.linux.dev
Cc: kernel@dh-electronics.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-gpio@vger.kernel.org
---
.../bindings/pinctrl/fsl,imx35-pinctrl.txt | 33 --------
...ul-pinctrl.yaml => fsl,imx35-pinctrl.yaml} | 79 +++++++++++++++++--
.../bindings/pinctrl/fsl,imx50-pinctrl.txt | 32 --------
.../bindings/pinctrl/fsl,imx51-pinctrl.txt | 32 --------
.../bindings/pinctrl/fsl,imx53-pinctrl.txt | 32 --------
.../bindings/pinctrl/fsl,imx6dl-pinctrl.txt | 38 ---------
.../bindings/pinctrl/fsl,imx6q-pinctrl.txt | 38 ---------
.../bindings/pinctrl/fsl,imx6sl-pinctrl.txt | 39 ---------
.../bindings/pinctrl/fsl,imx6sll-pinctrl.txt | 40 ----------
.../bindings/pinctrl/fsl,imx6sx-pinctrl.txt | 36 ---------
10 files changed, 72 insertions(+), 327 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.txt
rename Documentation/devicetree/bindings/pinctrl/{fsl,imx6ul-pinctrl.yaml => fsl,imx35-pinctrl.yaml} (51%)
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx50-pinctrl.txt
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx51-pinctrl.txt
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx53-pinctrl.txt
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6dl-pinctrl.txt
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6q-pinctrl.txt
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6sl-pinctrl.txt
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6sll-pinctrl.txt
delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6sx-pinctrl.txt
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.txt
deleted file mode 100644
index c083dfd25db93..0000000000000
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.txt
+++ /dev/null
@@ -1,33 +0,0 @@
-* Freescale IMX35 IOMUX Controller
-
-Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
-and usage.
-
-Required properties:
-- compatible: "fsl,imx35-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 like
- pull-up for this pin. Please refer to imx35 datasheet for the valid pad
- config settings.
-
-CONFIG bits definition:
-PAD_CTL_DRIVE_VOLAGAGE_18 (1 << 13)
-PAD_CTL_DRIVE_VOLAGAGE_33 (0 << 13)
-PAD_CTL_HYS (1 << 8)
-PAD_CTL_PKE (1 << 7)
-PAD_CTL_PUE (1 << 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_ODE_CMOS (0 << 3)
-PAD_CTL_ODE_OPENDRAIN (1 << 3)
-PAD_CTL_DSE_NOMINAL (0 << 1)
-PAD_CTL_DSE_HIGH (1 << 1)
-PAD_CTL_DSE_MAX (2 << 1)
-PAD_CTL_SRE_FAST (1 << 0)
-PAD_CTL_SRE_SLOW (0 << 0)
-
-Refer to imx35-pinfunc.h in device tree source folder for all available
-imx35 PIN_FUNC_ID.
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx6ul-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.yaml
similarity index 51%
rename from Documentation/devicetree/bindings/pinctrl/fsl,imx6ul-pinctrl.yaml
rename to Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.yaml
index 906b264a9e3cd..780d5fe0137e5 100644
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx6ul-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.yaml
@@ -1,10 +1,10 @@
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
-$id: http://devicetree.org/schemas/pinctrl/fsl,imx6ul-pinctrl.yaml#
+$id: http://devicetree.org/schemas/pinctrl/fsl,imx35-pinctrl.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
-title: Freescale IMX6UL IOMUX Controller
+title: Freescale IMX35/IMX5x/IMX6 IOMUX Controller
maintainers:
- Dong Aisheng <aisheng.dong@nxp.com>
@@ -19,6 +19,15 @@ allOf:
properties:
compatible:
enum:
+ - fsl,imx35-iomuxc
+ - fsl,imx50-iomuxc
+ - fsl,imx51-iomuxc
+ - fsl,imx53-iomuxc
+ - fsl,imx6dl-iomuxc
+ - fsl,imx6q-iomuxc
+ - fsl,imx6sl-iomuxc
+ - fsl,imx6sll-iomuxc
+ - fsl,imx6sx-iomuxc
- fsl,imx6ul-iomuxc
- fsl,imx6ull-iomuxc-snvs
@@ -39,9 +48,9 @@ patternProperties:
each entry consists of 6 integers and represents the mux and config
setting for one pin. The first 5 integers <mux_reg conf_reg input_reg
mux_val input_val> are specified using a PIN_FUNC_ID macro, which can
- be found in <arch/arm/boot/dts/imx6ul-pinfunc.h>. The last integer
+ be found in <arch/arm/boot/dts/nxp/imx/imx*-pinfunc.h>. The last integer
CONFIG is the pad setting value like pull-up on this pin. Please
- refer to i.MX6UL Reference Manual for detailed CONFIG settings.
+ refer to matching i.MX Reference Manual for detailed CONFIG settings.
$ref: /schemas/types.yaml#/definitions/uint32-matrix
items:
items:
@@ -56,7 +65,41 @@ patternProperties:
- description: |
"input_val" indicates the select input value to be applied.
- description: |
- "pad_setting" indicates the pad configuration value to be applied:
+ "pad_setting" indicates the pad configuration value to be applied.
+ Common i.MX35
+ PAD_CTL_DRIVE_VOLAGAGE_18 (1 << 13)
+ PAD_CTL_DRIVE_VOLAGAGE_33 (0 << 13)
+ PAD_CTL_HYS (1 << 8)
+ PAD_CTL_PKE (1 << 7)
+ PAD_CTL_PUE (1 << 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_ODE_CMOS (0 << 3)
+ PAD_CTL_ODE_OPENDRAIN (1 << 3)
+ PAD_CTL_DSE_NOMINAL (0 << 1)
+ PAD_CTL_DSE_HIGH (1 << 1)
+ PAD_CTL_DSE_MAX (2 << 1)
+ PAD_CTL_SRE_FAST (1 << 0)
+ PAD_CTL_SRE_SLOW (0 << 0)
+ Common i.MX50/i.MX51/i.MX53 bits
+ PAD_CTL_HVE (1 << 13)
+ PAD_CTL_HYS (1 << 8)
+ PAD_CTL_PKE (1 << 7)
+ PAD_CTL_PUE (1 << 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_ODE (1 << 3)
+ PAD_CTL_DSE_LOW (0 << 1)
+ PAD_CTL_DSE_MED (1 << 1)
+ PAD_CTL_DSE_HIGH (2 << 1)
+ PAD_CTL_DSE_MAX (3 << 1)
+ PAD_CTL_SRE_FAST (1 << 0)
+ PAD_CTL_SRE_SLOW (0 << 0)
+ Common i.MX6 bits
PAD_CTL_HYS (1 << 16)
PAD_CTL_PUS_100K_DOWN (0 << 14)
PAD_CTL_PUS_47K_UP (1 << 14)
@@ -69,6 +112,11 @@ patternProperties:
PAD_CTL_SPEED_MED (1 << 6)
PAD_CTL_SPEED_HIGH (3 << 6)
PAD_CTL_DSE_DISABLE (0 << 3)
+ PAD_CTL_SRE_FAST (1 << 0)
+ PAD_CTL_SRE_SLOW (0 << 0)
+ i.MX6SL/MX6SLL specific bits
+ PAD_CTL_LVE (1 << 22) (MX6SL/SLL only)
+ i.MX6SLL/i.MX6SX/i.MX6UL/i.MX6ULL specific bits
PAD_CTL_DSE_260ohm (1 << 3)
PAD_CTL_DSE_130ohm (2 << 3)
PAD_CTL_DSE_87ohm (3 << 3)
@@ -76,8 +124,14 @@ patternProperties:
PAD_CTL_DSE_52ohm (5 << 3)
PAD_CTL_DSE_43ohm (6 << 3)
PAD_CTL_DSE_37ohm (7 << 3)
- PAD_CTL_SRE_FAST (1 << 0)
- PAD_CTL_SRE_SLOW (0 << 0)
+ i.MX6DL/i.MX6Q/i.MX6SL specific bits
+ PAD_CTL_DSE_240ohm (1 << 3)
+ PAD_CTL_DSE_120ohm (2 << 3)
+ PAD_CTL_DSE_80ohm (3 << 3)
+ PAD_CTL_DSE_60ohm (4 << 3)
+ PAD_CTL_DSE_48ohm (5 << 3)
+ PAD_CTL_DSE_40ohm (6 << 3)
+ PAD_CTL_DSE_34ohm (7 << 3)
required:
- fsl,pins
@@ -114,3 +168,14 @@ examples:
>;
};
};
+ - |
+ iomuxc_mx6q: pinctrl@20e0000 {
+ compatible = "fsl,imx6q-iomuxc";
+ reg = <0x20e0000 0x4000>;
+
+ pinctrl_uart4: uart4grp {
+ fsl,pins =
+ <0x288 0x658 0x000 0x3 0x0 0x140>,
+ <0x28c 0x65c 0x938 0x3 0x3 0x140>;
+ };
+ };
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx50-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,imx50-pinctrl.txt
deleted file mode 100644
index 6da01d619d33e..0000000000000
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx50-pinctrl.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-* Freescale IMX50 IOMUX Controller
-
-Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
-and usage.
-
-Required properties:
-- compatible: "fsl,imx50-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 like
- pull-up for this pin. Please refer to imx50 datasheet for the valid pad
- config settings.
-
-CONFIG bits definition:
-PAD_CTL_HVE (1 << 13)
-PAD_CTL_HYS (1 << 8)
-PAD_CTL_PKE (1 << 7)
-PAD_CTL_PUE (1 << 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_ODE (1 << 3)
-PAD_CTL_DSE_LOW (0 << 1)
-PAD_CTL_DSE_MED (1 << 1)
-PAD_CTL_DSE_HIGH (2 << 1)
-PAD_CTL_DSE_MAX (3 << 1)
-PAD_CTL_SRE_FAST (1 << 0)
-PAD_CTL_SRE_SLOW (0 << 0)
-
-Refer to imx50-pinfunc.h in device tree source folder for all available
-imx50 PIN_FUNC_ID.
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx51-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,imx51-pinctrl.txt
deleted file mode 100644
index 4d1408fcc99cf..0000000000000
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx51-pinctrl.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-* Freescale IMX51 IOMUX Controller
-
-Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
-and usage.
-
-Required properties:
-- compatible: "fsl,imx51-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 like
- pull-up for this pin. Please refer to imx51 datasheet for the valid pad
- config settings.
-
-CONFIG bits definition:
-PAD_CTL_HVE (1 << 13)
-PAD_CTL_HYS (1 << 8)
-PAD_CTL_PKE (1 << 7)
-PAD_CTL_PUE (1 << 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_ODE (1 << 3)
-PAD_CTL_DSE_LOW (0 << 1)
-PAD_CTL_DSE_MED (1 << 1)
-PAD_CTL_DSE_HIGH (2 << 1)
-PAD_CTL_DSE_MAX (3 << 1)
-PAD_CTL_SRE_FAST (1 << 0)
-PAD_CTL_SRE_SLOW (0 << 0)
-
-Refer to imx51-pinfunc.h in device tree source folder for all available
-imx51 PIN_FUNC_ID.
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx53-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,imx53-pinctrl.txt
deleted file mode 100644
index 25dcb77cfaf74..0000000000000
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx53-pinctrl.txt
+++ /dev/null
@@ -1,32 +0,0 @@
-* Freescale IMX53 IOMUX Controller
-
-Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
-and usage.
-
-Required properties:
-- compatible: "fsl,imx53-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 like
- pull-up for this pin. Please refer to imx53 datasheet for the valid pad
- config settings.
-
-CONFIG bits definition:
-PAD_CTL_HVE (1 << 13)
-PAD_CTL_HYS (1 << 8)
-PAD_CTL_PKE (1 << 7)
-PAD_CTL_PUE (1 << 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_ODE (1 << 3)
-PAD_CTL_DSE_LOW (0 << 1)
-PAD_CTL_DSE_MED (1 << 1)
-PAD_CTL_DSE_HIGH (2 << 1)
-PAD_CTL_DSE_MAX (3 << 1)
-PAD_CTL_SRE_FAST (1 << 0)
-PAD_CTL_SRE_SLOW (0 << 0)
-
-Refer to imx53-pinfunc.h in device tree source folder for all available
-imx53 PIN_FUNC_ID.
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx6dl-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,imx6dl-pinctrl.txt
deleted file mode 100644
index 0ac5bee875056..0000000000000
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx6dl-pinctrl.txt
+++ /dev/null
@@ -1,38 +0,0 @@
-* Freescale IMX6 DualLite/Solo IOMUX Controller
-
-Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
-and usage.
-
-Required properties:
-- compatible: "fsl,imx6dl-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 like
- pull-up for this pin. Please refer to imx6dl datasheet for the valid pad
- config settings.
-
-CONFIG bits definition:
-PAD_CTL_HYS (1 << 16)
-PAD_CTL_PUS_100K_DOWN (0 << 14)
-PAD_CTL_PUS_47K_UP (1 << 14)
-PAD_CTL_PUS_100K_UP (2 << 14)
-PAD_CTL_PUS_22K_UP (3 << 14)
-PAD_CTL_PUE (1 << 13)
-PAD_CTL_PKE (1 << 12)
-PAD_CTL_ODE (1 << 11)
-PAD_CTL_SPEED_LOW (1 << 6)
-PAD_CTL_SPEED_MED (2 << 6)
-PAD_CTL_SPEED_HIGH (3 << 6)
-PAD_CTL_DSE_DISABLE (0 << 3)
-PAD_CTL_DSE_240ohm (1 << 3)
-PAD_CTL_DSE_120ohm (2 << 3)
-PAD_CTL_DSE_80ohm (3 << 3)
-PAD_CTL_DSE_60ohm (4 << 3)
-PAD_CTL_DSE_48ohm (5 << 3)
-PAD_CTL_DSE_40ohm (6 << 3)
-PAD_CTL_DSE_34ohm (7 << 3)
-PAD_CTL_SRE_FAST (1 << 0)
-PAD_CTL_SRE_SLOW (0 << 0)
-
-Refer to imx6dl-pinfunc.h in device tree source folder for all available
-imx6dl PIN_FUNC_ID.
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx6q-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,imx6q-pinctrl.txt
deleted file mode 100644
index 546610cf2ae71..0000000000000
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx6q-pinctrl.txt
+++ /dev/null
@@ -1,38 +0,0 @@
-* Freescale IMX6Q IOMUX Controller
-
-Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
-and usage.
-
-Required properties:
-- compatible: "fsl,imx6q-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 like
- pull-up for this pin. Please refer to imx6q datasheet for the valid pad
- config settings.
-
-CONFIG bits definition:
-PAD_CTL_HYS (1 << 16)
-PAD_CTL_PUS_100K_DOWN (0 << 14)
-PAD_CTL_PUS_47K_UP (1 << 14)
-PAD_CTL_PUS_100K_UP (2 << 14)
-PAD_CTL_PUS_22K_UP (3 << 14)
-PAD_CTL_PUE (1 << 13)
-PAD_CTL_PKE (1 << 12)
-PAD_CTL_ODE (1 << 11)
-PAD_CTL_SPEED_LOW (1 << 6)
-PAD_CTL_SPEED_MED (2 << 6)
-PAD_CTL_SPEED_HIGH (3 << 6)
-PAD_CTL_DSE_DISABLE (0 << 3)
-PAD_CTL_DSE_240ohm (1 << 3)
-PAD_CTL_DSE_120ohm (2 << 3)
-PAD_CTL_DSE_80ohm (3 << 3)
-PAD_CTL_DSE_60ohm (4 << 3)
-PAD_CTL_DSE_48ohm (5 << 3)
-PAD_CTL_DSE_40ohm (6 << 3)
-PAD_CTL_DSE_34ohm (7 << 3)
-PAD_CTL_SRE_FAST (1 << 0)
-PAD_CTL_SRE_SLOW (0 << 0)
-
-Refer to imx6q-pinfunc.h in device tree source folder for all available
-imx6q PIN_FUNC_ID.
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx6sl-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,imx6sl-pinctrl.txt
deleted file mode 100644
index e5f6d1f065a42..0000000000000
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx6sl-pinctrl.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-* Freescale IMX6 SoloLite IOMUX Controller
-
-Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
-and usage.
-
-Required properties:
-- compatible: "fsl,imx6sl-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 like
- pull-up for this pin. Please refer to imx6sl datasheet for the valid pad
- config settings.
-
-CONFIG bits definition:
-PAD_CTL_LVE (1 << 22)
-PAD_CTL_HYS (1 << 16)
-PAD_CTL_PUS_100K_DOWN (0 << 14)
-PAD_CTL_PUS_47K_UP (1 << 14)
-PAD_CTL_PUS_100K_UP (2 << 14)
-PAD_CTL_PUS_22K_UP (3 << 14)
-PAD_CTL_PUE (1 << 13)
-PAD_CTL_PKE (1 << 12)
-PAD_CTL_ODE (1 << 11)
-PAD_CTL_SPEED_LOW (1 << 6)
-PAD_CTL_SPEED_MED (2 << 6)
-PAD_CTL_SPEED_HIGH (3 << 6)
-PAD_CTL_DSE_DISABLE (0 << 3)
-PAD_CTL_DSE_240ohm (1 << 3)
-PAD_CTL_DSE_120ohm (2 << 3)
-PAD_CTL_DSE_80ohm (3 << 3)
-PAD_CTL_DSE_60ohm (4 << 3)
-PAD_CTL_DSE_48ohm (5 << 3)
-PAD_CTL_DSE_40ohm (6 << 3)
-PAD_CTL_DSE_34ohm (7 << 3)
-PAD_CTL_SRE_FAST (1 << 0)
-PAD_CTL_SRE_SLOW (0 << 0)
-
-Refer to imx6sl-pinfunc.h in device tree source folder for all available
-imx6sl PIN_FUNC_ID.
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx6sll-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,imx6sll-pinctrl.txt
deleted file mode 100644
index 175e8939a3018..0000000000000
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx6sll-pinctrl.txt
+++ /dev/null
@@ -1,40 +0,0 @@
-* Freescale i.MX6 SLL IOMUX Controller
-
-Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
-and usage.
-
-Required properties:
-- compatible: "fsl,imx6sll-iomuxc"
-- fsl,pins: each entry consists of 6 integers and represents the mux and config
- setting for one pin. The first 5 integers <mux_reg conf_reg input_reg mux_val
- input_val> are specified using a PIN_FUNC_ID macro, which can be found in
- imx6sll-pinfunc.h under device tree source folder. The last integer CONFIG is
- the pad setting value like pull-up on this pin. Please refer to i.MX6SLL
- Reference Manual for detailed CONFIG settings.
-
-CONFIG bits definition:
-PAD_CTL_LVE (1 << 22)
-PAD_CTL_HYS (1 << 16)
-PAD_CTL_PUS_100K_DOWN (0 << 14)
-PAD_CTL_PUS_47K_UP (1 << 14)
-PAD_CTL_PUS_100K_UP (2 << 14)
-PAD_CTL_PUS_22K_UP (3 << 14)
-PAD_CTL_PUE (1 << 13)
-PAD_CTL_PKE (1 << 12)
-PAD_CTL_ODE (1 << 11)
-PAD_CTL_SPEED_LOW (0 << 6)
-PAD_CTL_SPEED_MED (1 << 6)
-PAD_CTL_SPEED_HIGH (3 << 6)
-PAD_CTL_DSE_DISABLE (0 << 3)
-PAD_CTL_DSE_260ohm (1 << 3)
-PAD_CTL_DSE_130ohm (2 << 3)
-PAD_CTL_DSE_87ohm (3 << 3)
-PAD_CTL_DSE_65ohm (4 << 3)
-PAD_CTL_DSE_52ohm (5 << 3)
-PAD_CTL_DSE_43ohm (6 << 3)
-PAD_CTL_DSE_37ohm (7 << 3)
-PAD_CTL_SRE_FAST (1 << 0)
-PAD_CTL_SRE_SLOW (0 << 0)
-
-Refer to imx6sll-pinfunc.h in device tree source folder for all available
-imx6sll PIN_FUNC_ID.
diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx6sx-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/fsl,imx6sx-pinctrl.txt
deleted file mode 100644
index b1b595220f1bd..0000000000000
--- a/Documentation/devicetree/bindings/pinctrl/fsl,imx6sx-pinctrl.txt
+++ /dev/null
@@ -1,36 +0,0 @@
-* Freescale i.MX6 SoloX IOMUX Controller
-
-Please refer to fsl,imx-pinctrl.txt in this directory for common binding part
-and usage.
-
-Required properties:
-- compatible: "fsl,imx6sx-iomuxc"
-- fsl,pins: each entry consists of 6 integers and represents the mux and config
- setting for one pin. The first 5 integers <mux_reg conf_reg input_reg mux_val
- input_val> are specified using a PIN_FUNC_ID macro, which can be found in
- imx6sx-pinfunc.h under device tree source folder. The last integer CONFIG is
- the pad setting value like pull-up on this pin. Please refer to i.MX6 SoloX
- Reference Manual for detailed CONFIG settings.
-
-CONFIG bits definition:
-PAD_CTL_HYS (1 << 16)
-PAD_CTL_PUS_100K_DOWN (0 << 14)
-PAD_CTL_PUS_47K_UP (1 << 14)
-PAD_CTL_PUS_100K_UP (2 << 14)
-PAD_CTL_PUS_22K_UP (3 << 14)
-PAD_CTL_PUE (1 << 13)
-PAD_CTL_PKE (1 << 12)
-PAD_CTL_ODE (1 << 11)
-PAD_CTL_SPEED_LOW (0 << 6)
-PAD_CTL_SPEED_MED (1 << 6)
-PAD_CTL_SPEED_HIGH (3 << 6)
-PAD_CTL_DSE_DISABLE (0 << 3)
-PAD_CTL_DSE_260ohm (1 << 3)
-PAD_CTL_DSE_130ohm (2 << 3)
-PAD_CTL_DSE_87ohm (3 << 3)
-PAD_CTL_DSE_65ohm (4 << 3)
-PAD_CTL_DSE_52ohm (5 << 3)
-PAD_CTL_DSE_43ohm (6 << 3)
-PAD_CTL_DSE_37ohm (7 << 3)
-PAD_CTL_SRE_FAST (1 << 0)
-PAD_CTL_SRE_SLOW (0 << 0)
--
2.45.2
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] dt-bindings: pinctrl: fsl, imx6ul-pinctrl: Convert i.MX35/5x/6 to YAML
2024-10-15 23:20 [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: Convert i.MX35/5x/6 to YAML Marek Vasut
@ 2024-10-16 6:58 ` Alexander Stein
2024-10-16 23:13 ` Marek Vasut
2024-10-16 17:26 ` [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: " Rob Herring
1 sibling, 1 reply; 6+ messages in thread
From: Alexander Stein @ 2024-10-16 6:58 UTC (permalink / raw)
To: devicetree, Marek Vasut
Cc: Marek Vasut, Conor Dooley, Dong Aisheng, Fabio Estevam, Jacky Bai,
Krzysztof Kozlowski, Linus Walleij, Pengutronix Kernel Team,
Rob Herring, Sascha Hauer, Shawn Guo, imx, kernel,
linux-arm-kernel, linux-gpio
Hi Marek,
thanks for the conversion.
Am Mittwoch, 16. Oktober 2024, 01:20:51 CEST schrieb Marek Vasut:
> The IOMUXC controller description is almost identical on i.MX35/5x/6 SoCs,
> except for the configuration bits which differ across SoCs. Rename the
> fsl,imx6ul-pinctrl.yaml to fsl,imx35-pinctrl.yaml, fill in compatible
> strings for the other SoCs and fill in the various bits into desciption.
> This way, i.MX35/5x/6 series SoCs can all be converted to YAML DT. Remove
> the old text DT bindings description.
>
> Signed-off-by: Marek Vasut <marex@denx.de>
> ---
> Cc: Conor Dooley <conor+dt@kernel.org>
> Cc: Dong Aisheng <aisheng.dong@nxp.com>
> Cc: Fabio Estevam <festevam@gmail.com>
> Cc: Jacky Bai <ping.bai@nxp.com>
> Cc: Krzysztof Kozlowski <krzk+dt@kernel.org>
> Cc: Linus Walleij <linus.walleij@linaro.org>
> Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
> Cc: Rob Herring <robh@kernel.org>
> Cc: Sascha Hauer <s.hauer@pengutronix.de>
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: devicetree@vger.kernel.org
> Cc: imx@lists.linux.dev
> Cc: kernel@dh-electronics.com
> Cc: linux-arm-kernel@lists.infradead.org
> Cc: linux-gpio@vger.kernel.org
> ---
> .../bindings/pinctrl/fsl,imx35-pinctrl.txt | 33 --------
> ...ul-pinctrl.yaml => fsl,imx35-pinctrl.yaml} | 79 +++++++++++++++++--
> .../bindings/pinctrl/fsl,imx50-pinctrl.txt | 32 --------
> .../bindings/pinctrl/fsl,imx51-pinctrl.txt | 32 --------
> .../bindings/pinctrl/fsl,imx53-pinctrl.txt | 32 --------
> .../bindings/pinctrl/fsl,imx6dl-pinctrl.txt | 38 ---------
> .../bindings/pinctrl/fsl,imx6q-pinctrl.txt | 38 ---------
> .../bindings/pinctrl/fsl,imx6sl-pinctrl.txt | 39 ---------
> .../bindings/pinctrl/fsl,imx6sll-pinctrl.txt | 40 ----------
> .../bindings/pinctrl/fsl,imx6sx-pinctrl.txt | 36 ---------
> 10 files changed, 72 insertions(+), 327 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.txt
> rename Documentation/devicetree/bindings/pinctrl/{fsl,imx6ul-pinctrl.yaml => fsl,imx35-pinctrl.yaml} (51%)
> delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx50-pinctrl.txt
> delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx51-pinctrl.txt
> delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx53-pinctrl.txt
> delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6dl-pinctrl.txt
> delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6q-pinctrl.txt
> delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6sl-pinctrl.txt
> delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6sll-pinctrl.txt
> delete mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx6sx-pinctrl.txt
>
> [snip]
> diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx6ul-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.yaml
> similarity index 51%
> rename from Documentation/devicetree/bindings/pinctrl/fsl,imx6ul-pinctrl.yaml
> rename to Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.yaml
> index 906b264a9e3cd..780d5fe0137e5 100644
> --- a/Documentation/devicetree/bindings/pinctrl/fsl,imx6ul-pinctrl.yaml
> +++ b/Documentation/devicetree/bindings/pinctrl/fsl,imx35-pinctrl.yaml
> @@ -1,10 +1,10 @@
> # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
> %YAML 1.2
> ---
> -$id: http://devicetree.org/schemas/pinctrl/fsl,imx6ul-pinctrl.yaml#
> +$id: http://devicetree.org/schemas/pinctrl/fsl,imx35-pinctrl.yaml#
> $schema: http://devicetree.org/meta-schemas/core.yaml#
>
> -title: Freescale IMX6UL IOMUX Controller
> +title: Freescale IMX35/IMX5x/IMX6 IOMUX Controller
>
> maintainers:
> - Dong Aisheng <aisheng.dong@nxp.com>
> @@ -19,6 +19,15 @@ allOf:
> properties:
> compatible:
> enum:
> + - fsl,imx35-iomuxc
> + - fsl,imx50-iomuxc
> + - fsl,imx51-iomuxc
> + - fsl,imx53-iomuxc
imx50.dtsi is using
> "fsl,imx50-iomuxc", "fsl,imx53-iomuxc";
So either the .dtsi or this schema needs to be adjusted.
> + - fsl,imx6dl-iomuxc
> + - fsl,imx6q-iomuxc
> + - fsl,imx6sl-iomuxc
> + - fsl,imx6sll-iomuxc
> + - fsl,imx6sx-iomuxc
> - fsl,imx6ul-iomuxc
> - fsl,imx6ull-iomuxc-snvs
>
> @@ -39,9 +48,9 @@ patternProperties:
> each entry consists of 6 integers and represents the mux and config
> setting for one pin. The first 5 integers <mux_reg conf_reg input_reg
> mux_val input_val> are specified using a PIN_FUNC_ID macro, which can
> - be found in <arch/arm/boot/dts/imx6ul-pinfunc.h>. The last integer
> + be found in <arch/arm/boot/dts/nxp/imx/imx*-pinfunc.h>. The last integer
> CONFIG is the pad setting value like pull-up on this pin. Please
> - refer to i.MX6UL Reference Manual for detailed CONFIG settings.
> + refer to matching i.MX Reference Manual for detailed CONFIG settings.
> $ref: /schemas/types.yaml#/definitions/uint32-matrix
> items:
> items:
> @@ -56,7 +65,41 @@ patternProperties:
> - description: |
> "input_val" indicates the select input value to be applied.
> - description: |
> - "pad_setting" indicates the pad configuration value to be applied:
> + "pad_setting" indicates the pad configuration value to be applied.
> + Common i.MX35
> + PAD_CTL_DRIVE_VOLAGAGE_18 (1 << 13)
> + PAD_CTL_DRIVE_VOLAGAGE_33 (0 << 13)
> + PAD_CTL_HYS (1 << 8)
> + PAD_CTL_PKE (1 << 7)
> + PAD_CTL_PUE (1 << 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_ODE_CMOS (0 << 3)
> + PAD_CTL_ODE_OPENDRAIN (1 << 3)
> + PAD_CTL_DSE_NOMINAL (0 << 1)
> + PAD_CTL_DSE_HIGH (1 << 1)
> + PAD_CTL_DSE_MAX (2 << 1)
> + PAD_CTL_SRE_FAST (1 << 0)
> + PAD_CTL_SRE_SLOW (0 << 0)
> + Common i.MX50/i.MX51/i.MX53 bits
> + PAD_CTL_HVE (1 << 13)
> + PAD_CTL_HYS (1 << 8)
> + PAD_CTL_PKE (1 << 7)
> + PAD_CTL_PUE (1 << 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_ODE (1 << 3)
> + PAD_CTL_DSE_LOW (0 << 1)
> + PAD_CTL_DSE_MED (1 << 1)
> + PAD_CTL_DSE_HIGH (2 << 1)
> + PAD_CTL_DSE_MAX (3 << 1)
> + PAD_CTL_SRE_FAST (1 << 0)
> + PAD_CTL_SRE_SLOW (0 << 0)
> + Common i.MX6 bits
> PAD_CTL_HYS (1 << 16)
> PAD_CTL_PUS_100K_DOWN (0 << 14)
> PAD_CTL_PUS_47K_UP (1 << 14)
> @@ -69,6 +112,11 @@ patternProperties:
> PAD_CTL_SPEED_MED (1 << 6)
> PAD_CTL_SPEED_HIGH (3 << 6)
> PAD_CTL_DSE_DISABLE (0 << 3)
> + PAD_CTL_SRE_FAST (1 << 0)
> + PAD_CTL_SRE_SLOW (0 << 0)
> + i.MX6SL/MX6SLL specific bits
> + PAD_CTL_LVE (1 << 22) (MX6SL/SLL only)
Is this comment 'MX6SL/SLL only' really needed? This bit is already in the
i.MX6SL/MX6SLL only section.
Despite that, this looks good.
Best regards,
Alexander
> + i.MX6SLL/i.MX6SX/i.MX6UL/i.MX6ULL specific bits
> PAD_CTL_DSE_260ohm (1 << 3)
> PAD_CTL_DSE_130ohm (2 << 3)
> PAD_CTL_DSE_87ohm (3 << 3)
> @@ -76,8 +124,14 @@ patternProperties:
> PAD_CTL_DSE_52ohm (5 << 3)
> PAD_CTL_DSE_43ohm (6 << 3)
> PAD_CTL_DSE_37ohm (7 << 3)
> - PAD_CTL_SRE_FAST (1 << 0)
> - PAD_CTL_SRE_SLOW (0 << 0)
> + i.MX6DL/i.MX6Q/i.MX6SL specific bits
> + PAD_CTL_DSE_240ohm (1 << 3)
> + PAD_CTL_DSE_120ohm (2 << 3)
> + PAD_CTL_DSE_80ohm (3 << 3)
> + PAD_CTL_DSE_60ohm (4 << 3)
> + PAD_CTL_DSE_48ohm (5 << 3)
> + PAD_CTL_DSE_40ohm (6 << 3)
> + PAD_CTL_DSE_34ohm (7 << 3)
>
> required:
> - fsl,pins
> [snip]
--
TQ-Systems GmbH | Mühlstraße 2, Gut Delling | 82229 Seefeld, Germany
Amtsgericht München, HRB 105018
Geschäftsführer: Detlef Schneider, Rüdiger Stahl, Stefan Schneider
http://www.tq-group.com/
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: Convert i.MX35/5x/6 to YAML
2024-10-15 23:20 [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: Convert i.MX35/5x/6 to YAML Marek Vasut
2024-10-16 6:58 ` [PATCH] dt-bindings: pinctrl: fsl, imx6ul-pinctrl: " Alexander Stein
@ 2024-10-16 17:26 ` Rob Herring
2024-10-16 23:16 ` Marek Vasut
1 sibling, 1 reply; 6+ messages in thread
From: Rob Herring @ 2024-10-16 17:26 UTC (permalink / raw)
To: Marek Vasut
Cc: devicetree, Conor Dooley, Dong Aisheng, Fabio Estevam, Jacky Bai,
Krzysztof Kozlowski, Linus Walleij, Pengutronix Kernel Team,
Sascha Hauer, Shawn Guo, imx, kernel, linux-arm-kernel,
linux-gpio
On Wed, Oct 16, 2024 at 01:20:51AM +0200, Marek Vasut wrote:
> The IOMUXC controller description is almost identical on i.MX35/5x/6 SoCs,
> except for the configuration bits which differ across SoCs. Rename the
> fsl,imx6ul-pinctrl.yaml to fsl,imx35-pinctrl.yaml, fill in compatible
> strings for the other SoCs and fill in the various bits into desciption.
> This way, i.MX35/5x/6 series SoCs can all be converted to YAML DT. Remove
> the old text DT bindings description.
Just a nit, but I prefer 'DT schema' over using 'YAML DT' or just
'YAML'. YAML is just the file format we use and YAML is a lot of things
that's not DT schema including other uses/attempts with DT.
This generates lots of warnings (patchwork has the output) for pincfg
nodes which don't match 'grp$' node name convention. Do we really want
to "fix" all of those? We could allow anything, but then we don't
enforce anything on new stuff. Or this could be split between new and
old platforms. If we decide to fix any old ones, then just have to move
them to the "new" schema.
Rob
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] dt-bindings: pinctrl: fsl, imx6ul-pinctrl: Convert i.MX35/5x/6 to YAML
2024-10-16 6:58 ` [PATCH] dt-bindings: pinctrl: fsl, imx6ul-pinctrl: " Alexander Stein
@ 2024-10-16 23:13 ` Marek Vasut
0 siblings, 0 replies; 6+ messages in thread
From: Marek Vasut @ 2024-10-16 23:13 UTC (permalink / raw)
To: Alexander Stein, devicetree
Cc: Conor Dooley, Dong Aisheng, Fabio Estevam, Jacky Bai,
Krzysztof Kozlowski, Linus Walleij, Pengutronix Kernel Team,
Rob Herring, Sascha Hauer, Shawn Guo, imx, kernel,
linux-arm-kernel, linux-gpio
On 10/16/24 8:58 AM, Alexander Stein wrote:
> Hi Marek,
Hi,
> thanks for the conversion.
Sure
[...]
>> @@ -19,6 +19,15 @@ allOf:
>> properties:
>> compatible:
>> enum:
>> + - fsl,imx35-iomuxc
>> + - fsl,imx50-iomuxc
>> + - fsl,imx51-iomuxc
>> + - fsl,imx53-iomuxc
>
> imx50.dtsi is using
>> "fsl,imx50-iomuxc", "fsl,imx53-iomuxc";
>
> So either the .dtsi or this schema needs to be adjusted.
I'll be special-casing this in V2, thanks.
>> + - fsl,imx6dl-iomuxc
>> + - fsl,imx6q-iomuxc
>> + - fsl,imx6sl-iomuxc
>> + - fsl,imx6sll-iomuxc
>> + - fsl,imx6sx-iomuxc
>> - fsl,imx6ul-iomuxc
>> - fsl,imx6ull-iomuxc-snvs
>>
[...]
>> + Common i.MX6 bits
>> PAD_CTL_HYS (1 << 16)
>> PAD_CTL_PUS_100K_DOWN (0 << 14)
>> PAD_CTL_PUS_47K_UP (1 << 14)
>> @@ -69,6 +112,11 @@ patternProperties:
>> PAD_CTL_SPEED_MED (1 << 6)
>> PAD_CTL_SPEED_HIGH (3 << 6)
>> PAD_CTL_DSE_DISABLE (0 << 3)
>> + PAD_CTL_SRE_FAST (1 << 0)
>> + PAD_CTL_SRE_SLOW (0 << 0)
>> + i.MX6SL/MX6SLL specific bits
>> + PAD_CTL_LVE (1 << 22) (MX6SL/SLL only)
>
> Is this comment 'MX6SL/SLL only' really needed? This bit is already in the
> i.MX6SL/MX6SLL only section.
I think yes, because this particular bit is MX6SL/MX6SLL-only specific.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: Convert i.MX35/5x/6 to YAML
2024-10-16 17:26 ` [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: " Rob Herring
@ 2024-10-16 23:16 ` Marek Vasut
2024-10-17 0:23 ` Marek Vasut
0 siblings, 1 reply; 6+ messages in thread
From: Marek Vasut @ 2024-10-16 23:16 UTC (permalink / raw)
To: Rob Herring
Cc: devicetree, Conor Dooley, Dong Aisheng, Fabio Estevam, Jacky Bai,
Krzysztof Kozlowski, Linus Walleij, Pengutronix Kernel Team,
Sascha Hauer, Shawn Guo, imx, kernel, linux-arm-kernel,
linux-gpio
On 10/16/24 7:26 PM, Rob Herring wrote:
> On Wed, Oct 16, 2024 at 01:20:51AM +0200, Marek Vasut wrote:
>> The IOMUXC controller description is almost identical on i.MX35/5x/6 SoCs,
>> except for the configuration bits which differ across SoCs. Rename the
>> fsl,imx6ul-pinctrl.yaml to fsl,imx35-pinctrl.yaml, fill in compatible
>> strings for the other SoCs and fill in the various bits into desciption.
>> This way, i.MX35/5x/6 series SoCs can all be converted to YAML DT. Remove
>> the old text DT bindings description.
>
> Just a nit, but I prefer 'DT schema' over using 'YAML DT' or just
> 'YAML'. YAML is just the file format we use and YAML is a lot of things
> that's not DT schema including other uses/attempts with DT.
Fixed in V2 and also in the LTC3676 conversion, thanks.
> This generates lots of warnings (patchwork has the output) for pincfg
> nodes which don't match 'grp$' node name convention. Do we really want
> to "fix" all of those?
I had a look and many of those are simple, so I would say yes.
> We could allow anything, but then we don't
> enforce anything on new stuff.
We do enforce grp$ on iMX8M , it just wasn't enforced on old DTs yet.
> Or this could be split between new and
> old platforms. If we decide to fix any old ones, then just have to move
> them to the "new" schema.
Strictly speaking, iMX6 and older are all old platforms, but I think it
should be easy to fix them up.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: Convert i.MX35/5x/6 to YAML
2024-10-16 23:16 ` Marek Vasut
@ 2024-10-17 0:23 ` Marek Vasut
0 siblings, 0 replies; 6+ messages in thread
From: Marek Vasut @ 2024-10-17 0:23 UTC (permalink / raw)
To: Rob Herring
Cc: devicetree, Conor Dooley, Dong Aisheng, Fabio Estevam, Jacky Bai,
Krzysztof Kozlowski, Linus Walleij, Pengutronix Kernel Team,
Sascha Hauer, Shawn Guo, imx, kernel, linux-arm-kernel,
linux-gpio
On 10/17/24 1:16 AM, Marek Vasut wrote:
> On 10/16/24 7:26 PM, Rob Herring wrote:
>> On Wed, Oct 16, 2024 at 01:20:51AM +0200, Marek Vasut wrote:
>>> The IOMUXC controller description is almost identical on i.MX35/5x/6
>>> SoCs,
>>> except for the configuration bits which differ across SoCs. Rename the
>>> fsl,imx6ul-pinctrl.yaml to fsl,imx35-pinctrl.yaml, fill in compatible
>>> strings for the other SoCs and fill in the various bits into desciption.
>>> This way, i.MX35/5x/6 series SoCs can all be converted to YAML DT.
>>> Remove
>>> the old text DT bindings description.
>>
>> Just a nit, but I prefer 'DT schema' over using 'YAML DT' or just
>> 'YAML'. YAML is just the file format we use and YAML is a lot of things
>> that's not DT schema including other uses/attempts with DT.
>
> Fixed in V2 and also in the LTC3676 conversion, thanks.
>
>> This generates lots of warnings (patchwork has the output) for pincfg
>> nodes which don't match 'grp$' node name convention. Do we really want
>> to "fix" all of those?
>
> I had a look and many of those are simple, so I would say yes.
>
>> We could allow anything, but then we don't
>> enforce anything on new stuff.
>
> We do enforce grp$ on iMX8M , it just wasn't enforced on old DTs yet.
>
>> Or this could be split between new and
>> old platforms. If we decide to fix any old ones, then just have to move
>> them to the "new" schema.
> Strictly speaking, iMX6 and older are all old platforms, but I think it
> should be easy to fix them up.
So, it seems like fixing most of them DTs up wasn't that hard.
But I am worried I might've broken a few in the process. I guess users
will complain and then we fix them up ?
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2024-10-17 2:01 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-15 23:20 [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: Convert i.MX35/5x/6 to YAML Marek Vasut
2024-10-16 6:58 ` [PATCH] dt-bindings: pinctrl: fsl, imx6ul-pinctrl: " Alexander Stein
2024-10-16 23:13 ` Marek Vasut
2024-10-16 17:26 ` [PATCH] dt-bindings: pinctrl: fsl,imx6ul-pinctrl: " Rob Herring
2024-10-16 23:16 ` Marek Vasut
2024-10-17 0:23 ` Marek Vasut
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).