Convert the GPIO-based FSI master binding to DT schema format.
Drop the "fsi-master" compatible as it has not be used consistently and
doesn't represent anything.
Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
---
.../devicetree/bindings/fsi/fsi-master-gpio.txt | 28 ----------
.../devicetree/bindings/fsi/fsi-master-gpio.yaml | 63 ++++++++++++++++++++++
2 files changed, 63 insertions(+), 28 deletions(-)
diff --git a/Documentation/devicetree/bindings/fsi/fsi-master-gpio.txt b/Documentation/devicetree/bindings/fsi/fsi-master-gpio.txt
deleted file mode 100644
index 1e442450747f..000000000000
--- a/Documentation/devicetree/bindings/fsi/fsi-master-gpio.txt
+++ /dev/null
@@ -1,28 +0,0 @@
-Device-tree bindings for gpio-based FSI master driver
------------------------------------------------------
-
-Required properties:
- - compatible = "fsi-master-gpio";
- - clock-gpios = <gpio-descriptor>; : GPIO for FSI clock
- - data-gpios = <gpio-descriptor>; : GPIO for FSI data signal
-
-Optional properties:
- - enable-gpios = <gpio-descriptor>; : GPIO for enable signal
- - trans-gpios = <gpio-descriptor>; : GPIO for voltage translator enable
- - mux-gpios = <gpio-descriptor>; : GPIO for pin multiplexing with other
- functions (eg, external FSI masters)
- - no-gpio-delays; : Don't add extra delays between GPIO
- accesses. This is useful when the HW
- GPIO block is running at a low enough
- frequency.
-
-Examples:
-
- fsi-master {
- compatible = "fsi-master-gpio", "fsi-master";
- clock-gpios = <&gpio 0>;
- data-gpios = <&gpio 1>;
- enable-gpios = <&gpio 2>;
- trans-gpios = <&gpio 3>;
- mux-gpios = <&gpio 4>;
- }
diff --git a/Documentation/devicetree/bindings/fsi/fsi-master-gpio.yaml b/Documentation/devicetree/bindings/fsi/fsi-master-gpio.yaml
new file mode 100644
index 000000000000..21bfbad595b3
--- /dev/null
+++ b/Documentation/devicetree/bindings/fsi/fsi-master-gpio.yaml
@@ -0,0 +1,63 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/fsi/fsi-master-gpio.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: fsi-master-gpio
+
+maintainers:
+ - Eddie James <eajames@linux.ibm.com>
+
+allOf:
+ - $ref: /schemas/fsi/fsi-controller.yaml
+
+properties:
+ compatible:
+ items:
+ - const: fsi-master-gpio
+
+ clock-gpios:
+ description: GPIO for FSI clock
+ maxItems: 1
+
+ data-gpios:
+ description: GPIO for FSI data signal
+ maxItems: 1
+
+ enable-gpios:
+ description: GPIO for enable signal
+ maxItems: 1
+
+ trans-gpios:
+ description: GPIO for voltage translator enable
+ maxItems: 1
+
+ mux-gpios:
+ description: GPIO for pin multiplexing with other functions (eg, external
+ FSI masters)
+ maxItems: 1
+
+ no-gpio-delays:
+ description:
+ Don't add extra delays between GPIO accesses. This is useful when the HW
+ GPIO block is running at a low enough frequency.
+ type: boolean
+
+required:
+ - compatible
+ - clock-gpios
+ - data-gpios
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ fsi-master {
+ compatible = "fsi-master-gpio";
+ clock-gpios = <&gpio 0>;
+ data-gpios = <&gpio 1>;
+ enable-gpios = <&gpio 2>;
+ trans-gpios = <&gpio 3>;
+ mux-gpios = <&gpio 4>;
+ };
--
2.47.2
On 7/31/25 17:12, Rob Herring (Arm) wrote:
> Convert the GPIO-based FSI master binding to DT schema format.
>
> Drop the "fsi-master" compatible as it has not be used consistently and
> doesn't represent anything.
Acked-by: Eddie James <eajames@linux.ibm.com>
>
> Signed-off-by: Rob Herring (Arm) <robh@kernel.org>
> ---
> .../devicetree/bindings/fsi/fsi-master-gpio.txt | 28 ----------
> .../devicetree/bindings/fsi/fsi-master-gpio.yaml | 63 ++++++++++++++++++++++
> 2 files changed, 63 insertions(+), 28 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/fsi/fsi-master-gpio.txt b/Documentation/devicetree/bindings/fsi/fsi-master-gpio.txt
> deleted file mode 100644
> index 1e442450747f..000000000000
> --- a/Documentation/devicetree/bindings/fsi/fsi-master-gpio.txt
> +++ /dev/null
> @@ -1,28 +0,0 @@
> -Device-tree bindings for gpio-based FSI master driver
> ------------------------------------------------------
> -
> -Required properties:
> - - compatible = "fsi-master-gpio";
> - - clock-gpios = <gpio-descriptor>; : GPIO for FSI clock
> - - data-gpios = <gpio-descriptor>; : GPIO for FSI data signal
> -
> -Optional properties:
> - - enable-gpios = <gpio-descriptor>; : GPIO for enable signal
> - - trans-gpios = <gpio-descriptor>; : GPIO for voltage translator enable
> - - mux-gpios = <gpio-descriptor>; : GPIO for pin multiplexing with other
> - functions (eg, external FSI masters)
> - - no-gpio-delays; : Don't add extra delays between GPIO
> - accesses. This is useful when the HW
> - GPIO block is running at a low enough
> - frequency.
> -
> -Examples:
> -
> - fsi-master {
> - compatible = "fsi-master-gpio", "fsi-master";
> - clock-gpios = <&gpio 0>;
> - data-gpios = <&gpio 1>;
> - enable-gpios = <&gpio 2>;
> - trans-gpios = <&gpio 3>;
> - mux-gpios = <&gpio 4>;
> - }
> diff --git a/Documentation/devicetree/bindings/fsi/fsi-master-gpio.yaml b/Documentation/devicetree/bindings/fsi/fsi-master-gpio.yaml
> new file mode 100644
> index 000000000000..21bfbad595b3
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/fsi/fsi-master-gpio.yaml
> @@ -0,0 +1,63 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/fsi/fsi-master-gpio.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: fsi-master-gpio
> +
> +maintainers:
> + - Eddie James <eajames@linux.ibm.com>
> +
> +allOf:
> + - $ref: /schemas/fsi/fsi-controller.yaml
> +
> +properties:
> + compatible:
> + items:
> + - const: fsi-master-gpio
> +
> + clock-gpios:
> + description: GPIO for FSI clock
> + maxItems: 1
> +
> + data-gpios:
> + description: GPIO for FSI data signal
> + maxItems: 1
> +
> + enable-gpios:
> + description: GPIO for enable signal
> + maxItems: 1
> +
> + trans-gpios:
> + description: GPIO for voltage translator enable
> + maxItems: 1
> +
> + mux-gpios:
> + description: GPIO for pin multiplexing with other functions (eg, external
> + FSI masters)
> + maxItems: 1
> +
> + no-gpio-delays:
> + description:
> + Don't add extra delays between GPIO accesses. This is useful when the HW
> + GPIO block is running at a low enough frequency.
> + type: boolean
> +
> +required:
> + - compatible
> + - clock-gpios
> + - data-gpios
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + fsi-master {
> + compatible = "fsi-master-gpio";
> + clock-gpios = <&gpio 0>;
> + data-gpios = <&gpio 1>;
> + enable-gpios = <&gpio 2>;
> + trans-gpios = <&gpio 3>;
> + mux-gpios = <&gpio 4>;
> + };
>
© 2016 - 2026 Red Hat, Inc.