[PATCH 3/4] dt-bindings: remoteproc: mediatek: Convert mtk,scp to json-schema

From: Tinghan Shen
Date: Tue Jul 27 2021 - 23:39:57 EST


Convert the mtk,scp binding to DT schema format using json-schema.

Signed-off-by: Tinghan Shen <tinghan.shen@xxxxxxxxxxxx>
---
.../bindings/remoteproc/mtk,scp.txt | 41 ---------
.../bindings/remoteproc/mtk,scp.yaml | 85 +++++++++++++++++++
2 files changed, 85 insertions(+), 41 deletions(-)
delete mode 100644 Documentation/devicetree/bindings/remoteproc/mtk,scp.txt
create mode 100644 Documentation/devicetree/bindings/remoteproc/mtk,scp.yaml

diff --git a/Documentation/devicetree/bindings/remoteproc/mtk,scp.txt b/Documentation/devicetree/bindings/remoteproc/mtk,scp.txt
deleted file mode 100644
index 88f37dee7bca..000000000000
--- a/Documentation/devicetree/bindings/remoteproc/mtk,scp.txt
+++ /dev/null
@@ -1,41 +0,0 @@
-Mediatek SCP Bindings
-----------------------------------------
-
-This binding provides support for ARM Cortex M4 Co-processor found on some
-Mediatek SoCs.
-
-Required properties:
-- compatible Should be one of:
- "mediatek,mt8183-scp"
- "mediatek,mt8192-scp"
- "mediatek,mt8195-scp"
-- reg Should contain the address ranges for memory regions:
- SRAM, CFG, and L1TCM.
-- reg-names Contains the corresponding names for the memory regions:
- "sram", "cfg", and "l1tcm".
-- clocks Required by mt8183 and mt8192. Clock for co-processor
- (See: ../clock/clock-bindings.txt)
-- clock-names Required by mt8183 and mt8192. Contains the
- corresponding name for the clock. This should be
- named "main".
-
-Subnodes
---------
-
-Subnodes of the SCP represent rpmsg devices. The names of the devices are not
-important. The properties of these nodes are defined by the individual bindings
-for the rpmsg devices - but must contain the following property:
-
-- mtk,rpmsg-name Contains the name for the rpmsg device. Used to match
- the subnode to rpmsg device announced by SCP.
-
-Example:
-
- scp: scp@10500000 {
- compatible = "mediatek,mt8183-scp";
- reg = <0 0x10500000 0 0x80000>,
- <0 0x105c0000 0 0x5000>;
- reg-names = "sram", "cfg";
- clocks = <&infracfg CLK_INFRA_SCPSYS>;
- clock-names = "main";
- };
diff --git a/Documentation/devicetree/bindings/remoteproc/mtk,scp.yaml b/Documentation/devicetree/bindings/remoteproc/mtk,scp.yaml
new file mode 100644
index 000000000000..dc5fcbe65dae
--- /dev/null
+++ b/Documentation/devicetree/bindings/remoteproc/mtk,scp.yaml
@@ -0,0 +1,85 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/remoteproc/mtk,scp.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Mediatek SCP Bindings
+
+maintainers:
+ - Tinghan Shen <tinghan.shen@xxxxxxxxxxxx>
+
+description:
+ This binding provides support for ARM Cortex M4 Co-processor found on some
+ Mediatek SoCs.
+
+properties:
+ compatible:
+ enum:
+ - mediatek,mt8183-scp
+ - mediatek,mt8192-scp
+ - mediatek,mt8195-scp
+
+ reg:
+ description: |
+ Should contain the address ranges for memory regions SRAM and CFG,
+ maxItems: 2
+
+ reg-names:
+ description: |
+ Contains the corresponding names for the two memory regions. These
+ should be named "sram", "cfg".
+
+ clocks:
+ description: |
+ Clock for co-processor (see ../clock/clock-bindings.txt).
+ Required by mt8183 and mt8192.
+ maxItems: 1
+
+ clock-names:
+ description: |
+ Contains the corresponding name for the clock. This should be
+ named "main". Required by mt8183 and mt8192.
+
+required:
+ - compatible
+ - reg
+ - reg-names
+
+patternProperties:
+ ".*":
+ if:
+ type: object
+ then:
+ description:
+ Subnodes of the SCP represent rpmsg devices. The names of the devices
+ are not important. The properties of these nodes are defined by the
+ individual bindings for the rpmsg devices.
+
+ properties:
+ mtk,rpmsg-name:
+ description:
+ Contains the name for the rpmsg device. Used to match
+ the subnode to rpmsg device announced by SCP.
+
+ required:
+ - mtk,rpmsg-name
+
+additionalProperties: true
+
+examples:
+ - |
+ #include <dt-bindings/clock/mt8183-clk.h>
+
+ soc {
+ #address-cells = <2>;
+ #size-cells = <2>;
+ scp: scp@10500000 {
+ compatible = "mediatek,mt8183-scp";
+ reg = <0 0x10500000 0 0x80000>,
+ <0 0x105c0000 0 0x5000>;
+ reg-names = "sram", "cfg";
+ clocks = <&infracfg CLK_INFRA_SCPSYS>;
+ clock-names = "main";
+ };
+ };
--
2.18.0