diff mbox series

dt-bindings: remoteproc: sti: convert st-rproc into dt-schema

Message ID 20230211204751.9149-1-avolmat@me.com (mailing list archive)
State Changes Requested
Headers show
Series dt-bindings: remoteproc: sti: convert st-rproc into dt-schema | expand

Commit Message

Alain Volmat Feb. 11, 2023, 8:47 p.m. UTC
Convert the st-rproc.txt binding into dt-schema YAML st,sti-rproc.yaml

Signed-off-by: Alain Volmat <avolmat@me.com>
---
 .../bindings/remoteproc/st,sti-rproc.yaml     | 101 ++++++++++++++++++
 .../bindings/remoteproc/st-rproc.txt          |  41 -------
 2 files changed, 101 insertions(+), 41 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/remoteproc/st,sti-rproc.yaml
 delete mode 100644 Documentation/devicetree/bindings/remoteproc/st-rproc.txt

Comments

Krzysztof Kozlowski Feb. 12, 2023, 4:08 p.m. UTC | #1
On 11/02/2023 21:47, Alain Volmat wrote:
> Convert the st-rproc.txt binding into dt-schema YAML st,sti-rproc.yaml
> 
> Signed-off-by: Alain Volmat <avolmat@me.com>
> ---
>  .../bindings/remoteproc/st,sti-rproc.yaml     | 101 ++++++++++++++++++
>  .../bindings/remoteproc/st-rproc.txt          |  41 -------
>  2 files changed, 101 insertions(+), 41 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/remoteproc/st,sti-rproc.yaml
>  delete mode 100644 Documentation/devicetree/bindings/remoteproc/st-rproc.txt
> 
> diff --git a/Documentation/devicetree/bindings/remoteproc/st,sti-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/st,sti-rproc.yaml
> new file mode 100644
> index 000000000000..b9d84dfbcb58
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/remoteproc/st,sti-rproc.yaml
> @@ -0,0 +1,101 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/remoteproc/st,sti-rproc.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"

Drop quotes from both.

> +
> +title: STMicroelectronics STi remote processor controller
> +
> +description:
> +  This binding provides support for adjunct processors found on ST SoCs.

Drop entire sentence and describe hardware, not binding. This is
binding, so no need to say it is binding.

> +
> +  Co-processors can be controlled from the bootloader or the primary OS. If
> +  the bootloader starts a co-processor, the primary OS must detect its state
> +  and act accordingly.
> +
> +maintainers:
> +  - Patrice Chotard <patrice.chotard@foss.st.com>
> +
> +properties:
> +  compatible:
> +    enum:
> +      - st,st231-rproc
> +      - st,st40-rproc
> +
> +  memory-region:
> +    description:
> +      List of phandles to the reserved memory regions associated with the
> +      remoteproc device. This is variable and describes the memories shared with
> +      the remote processor (e.g. remoteproc firmware and carveouts, rpmsg
> +      vrings, ...).

maxItems

> +      (see ../reserved-memory/reserved-memory.txt)

Drop last line.

> +
> +  resets:
> +    maxItems: 1
> +
> +  reset-names:
> +    maxItems: 1

You need to list items.

> +
> +  st,syscfg:
> +    description:
> +      System configuration register which holds the boot vector for the co-processor
> +    $ref: "/schemas/types.yaml#/definitions/phandle-array"

Drop quotes.

> +    items:
> +      - items:
> +          - description: Phandle of syscon block
> +          - description: Boot vector register offset
> +
> +  clocks:
> +    maxItems: 1
> +
> +  clock-frequency:
> +    description:
> +      Frequency of the processing clock of the remote processor
> +    $ref: "/schemas/types.yaml#/definitions/uint32"

Drop ref, not needed, it comes from dtschema.

> +
> +  "#mbox-cells":
> +    const: 1
> +
> +  mboxes:
> +    maxItems: 4
> +
> +  mbox-names:
> +    items:
> +      - const: vq0_rx
> +      - const: vq0_tx
> +      - const: vq1_rx
> +      - const: vq1_tx
> +
> +required:
> +  - compatible
> +  - memory-region
> +  - resets
> +  - reset-names
> +  - st,syscfg
> +  - clocks
> +  - clock-frequency
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> +    #include <dt-bindings/clock/stih407-clks.h>
> +    #include <dt-bindings/reset/stih407-resets.h>
> +    audio_reserved: rproc@42000000 {
> +      compatible = "shared-dma-pool";
> +        reg = <0x42000000 0x01000000>;
> +        no-map;
> +    };
> +
> +    st231-audio {

Generic node names, so maybe "remoteproc"

> +      compatible = "st,st231-rproc";
> +      memory-region = <&audio_reserved>;
> +      resets = <&softreset STIH407_ST231_AUD_SOFTRESET>;
> +      reset-names = "sw_reset";
> +      clocks = <&clk_s_c0_flexgen CLK_ST231_AUD_0>;
> +      clock-frequency = <600000000>;
> +      st,syscfg	= <&syscfg_core 0x228>;

Correct indentation issue.

> +    };


Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/remoteproc/st,sti-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/st,sti-rproc.yaml
new file mode 100644
index 000000000000..b9d84dfbcb58
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/st,sti-rproc.yaml
@@ -0,0 +1,101 @@ 
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: "http://devicetree.org/schemas/remoteproc/st,sti-rproc.yaml#"
+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+
+title: STMicroelectronics STi remote processor controller
+
+description:
+  This binding provides support for adjunct processors found on ST SoCs.
+
+  Co-processors can be controlled from the bootloader or the primary OS. If
+  the bootloader starts a co-processor, the primary OS must detect its state
+  and act accordingly.
+
+maintainers:
+  - Patrice Chotard <patrice.chotard@foss.st.com>
+
+properties:
+  compatible:
+    enum:
+      - st,st231-rproc
+      - st,st40-rproc
+
+  memory-region:
+    description:
+      List of phandles to the reserved memory regions associated with the
+      remoteproc device. This is variable and describes the memories shared with
+      the remote processor (e.g. remoteproc firmware and carveouts, rpmsg
+      vrings, ...).
+      (see ../reserved-memory/reserved-memory.txt)
+
+  resets:
+    maxItems: 1
+
+  reset-names:
+    maxItems: 1
+
+  st,syscfg:
+    description:
+      System configuration register which holds the boot vector for the co-processor
+    $ref: "/schemas/types.yaml#/definitions/phandle-array"
+    items:
+      - items:
+          - description: Phandle of syscon block
+          - description: Boot vector register offset
+
+  clocks:
+    maxItems: 1
+
+  clock-frequency:
+    description:
+      Frequency of the processing clock of the remote processor
+    $ref: "/schemas/types.yaml#/definitions/uint32"
+
+  "#mbox-cells":
+    const: 1
+
+  mboxes:
+    maxItems: 4
+
+  mbox-names:
+    items:
+      - const: vq0_rx
+      - const: vq0_tx
+      - const: vq1_rx
+      - const: vq1_tx
+
+required:
+  - compatible
+  - memory-region
+  - resets
+  - reset-names
+  - st,syscfg
+  - clocks
+  - clock-frequency
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    #include <dt-bindings/clock/stih407-clks.h>
+    #include <dt-bindings/reset/stih407-resets.h>
+    audio_reserved: rproc@42000000 {
+      compatible = "shared-dma-pool";
+        reg = <0x42000000 0x01000000>;
+        no-map;
+    };
+
+    st231-audio {
+      compatible = "st,st231-rproc";
+      memory-region = <&audio_reserved>;
+      resets = <&softreset STIH407_ST231_AUD_SOFTRESET>;
+      reset-names = "sw_reset";
+      clocks = <&clk_s_c0_flexgen CLK_ST231_AUD_0>;
+      clock-frequency = <600000000>;
+      st,syscfg	= <&syscfg_core 0x228>;
+    };
+
+...
diff --git a/Documentation/devicetree/bindings/remoteproc/st-rproc.txt b/Documentation/devicetree/bindings/remoteproc/st-rproc.txt
deleted file mode 100644
index 1031bcd90a79..000000000000
--- a/Documentation/devicetree/bindings/remoteproc/st-rproc.txt
+++ /dev/null
@@ -1,41 +0,0 @@ 
-STMicroelectronics Co-Processor Bindings
-----------------------------------------
-
-This binding provides support for adjunct processors found on ST SoCs.
-
-Co-processors can be controlled from the bootloader or the primary OS. If
-the bootloader starts a co-processor, the primary OS must detect its state
-and act accordingly.
-
-Required properties:
-- compatible		Should be one of:
-				"st,st231-rproc"
-				"st,st40-rproc"
-- memory-region		Reserved memory (See: ../reserved-memory/reserved-memory.txt)
-- resets		Reset lines (See: ../reset/reset.txt)
-- reset-names		Must be "sw_reset" and "pwr_reset"
-- clocks		Clock for co-processor (See: ../clock/clock-bindings.txt)
-- clock-frequency	Clock frequency to set co-processor at if the bootloader
-			hasn't already done so
-- st,syscfg		System configuration register which holds the boot vector
-			for the co-processor
-				1st cell: Phandle to syscon block
-				2nd cell: Boot vector register offset
-
-Example:
-
-	audio_reserved: rproc@42000000 {
-		compatible = "shared-dma-pool";
-		reg = <0x42000000 0x01000000>;
-		no-map;
-	};
-
-	st231-audio {
-		compatible	= "st,st231-rproc";
-		memory-region	= <&audio_reserved>;
-		resets		= <&softreset STIH407_ST231_AUD_SOFTRESET>;
-		reset-names	= "sw_reset";
-		clocks		= <&clk_s_c0_flexgen CLK_ST231_AUD_0>;
-		clock-frequency	= <600000000>;
-		st,syscfg	= <&syscfg_core 0x228>;
-	};