Re: [PATCH v4 3/4] dt-bindings: remoteproc: mediatek: Convert mtk,scp to json-schema
From: Rob Herring <robh@kernel.org>
Date: 2021-08-02 21:31:45
Also in:
linux-arm-kernel, linux-mediatek, linux-remoteproc, lkml
On Wed, Jul 28, 2021 at 11:58:58AM +0800, Tinghan Shen wrote:
quoted hunk ↗ jump to hunk
Convert the mtk,scp binding to DT schema format using json-schema. Signed-off-by: Tinghan Shen <redacted> --- .../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.yamldiff --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@mediatek.com> + +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:
This can be replaced with: additionalProperties: type: object ... and the rest below here:
+ 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 {Drop unused labels.
+ 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