Commit f4d7e6f6 authored by Tinghan Shen's avatar Tinghan Shen Committed by Bjorn Andersson
Browse files

dt-bindings: remoteproc: mediatek: Convert mtk,scp to json-schema



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

Signed-off-by: default avatarTinghan Shen <tinghan.shen@mediatek.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20210924033935.2127-4-tinghan.shen@mediatek.com


Signed-off-by: default avatarMathieu Poirier <mathieu.poirier@linaro.org>
Signed-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
parent 63e6a340
Loading
Loading
Loading
Loading
+0 −41
Original line number Diff line number Diff line
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";
	};
+92 −0
Original line number Diff line number Diff line
# 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, CFG, and
      L1TCM.
    maxItems: 3

  reg-names:
    items:
      - const: sram
      - const: cfg
      - const: l1tcm

  clocks:
    description:
      Clock for co-processor (see ../clock/clock-bindings.txt).
      Required by mt8183 and mt8192.
    maxItems: 1

  clock-names:
    const: main

required:
  - compatible
  - reg
  - reg-names

if:
  properties:
    compatible:
      enum:
        - mediatek,mt8183-scp
        - mediatek,mt8192-scp
then:
  required:
    - clocks
    - clock-names

additionalProperties:
  type: object
  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:
    mediatek,rpmsg-name:
      $ref: /schemas/types.yaml#/definitions/string-array
      description:
        Contains the name for the rpmsg device. Used to match
        the subnode to rpmsg device announced by SCP.

  required:
    - mediatek,rpmsg-name

examples:
  - |
    #include <dt-bindings/clock/mt8183-clk.h>

    scp@10500000 {
        compatible = "mediatek,mt8183-scp";
        reg = <0x10500000 0x80000>,
              <0x10700000 0x8000>,
              <0x10720000 0xe0000>;
        reg-names = "sram", "cfg", "l1tcm";
        clocks = <&infracfg CLK_INFRA_SCPSYS>;
        clock-names = "main";

        cros_ec {
            mediatek,rpmsg-name = "cros-ec-rpmsg";
        };
    };