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 - 2025 Red Hat, Inc.