# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (c) 2020 MediaTek Inc.
%YAML 1.2
---
$id: http://devicetree.org/schemas/memory-controllers/mediatek,smi-larb.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: SMI (Smart Multimedia Interface) Local Arbiter

maintainers:
  - Yong Wu <yong.wu@mediatek.com>

description: |
  The hardware block diagram please check bindings/iommu/mediatek,iommu.yaml

properties:
  compatible:
    oneOf:
      - enum:
          - mediatek,mt2701-smi-larb
          - mediatek,mt2712-smi-larb
          - mediatek,mt6779-smi-larb
          - mediatek,mt6795-smi-larb
          - mediatek,mt8167-smi-larb
          - mediatek,mt8173-smi-larb
          - mediatek,mt8183-smi-larb
          - mediatek,mt8186-smi-larb
          - mediatek,mt8188-smi-larb
          - mediatek,mt8192-smi-larb
          - mediatek,mt8195-smi-larb

      - description: for mt7623
        items:
          - const: mediatek,mt7623-smi-larb
          - const: mediatek,mt2701-smi-larb

      - items:
          - const: mediatek,mt8365-smi-larb
          - const: mediatek,mt8186-smi-larb

  reg:
    maxItems: 1

  clocks:
    description: |
      apb and smi are mandatory. gals(global async local sync) is optional.
    minItems: 2
    items:
      - description: apb is Advanced Peripheral Bus clock, It's the clock for
          setting the register.
      - description: smi is the clock for transfer data and command.
      - description: the clock for gals.

  clock-names:
    minItems: 2
    maxItems: 3

  power-domains:
    maxItems: 1

  mediatek,smi:
    $ref: /schemas/types.yaml#/definitions/phandle
    description: a phandle to the smi_common node.

  mediatek,larb-id:
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 0
    maximum: 31
    description: the hardware id of this larb. It's only required when this
      hardware id is not consecutive from its M4U point of view.

required:
  - compatible
  - reg
  - clocks
  - clock-names
  - power-domains

allOf:
  - if:  # HW has gals
      properties:
        compatible:
          enum:
            - mediatek,mt8183-smi-larb
            - mediatek,mt8186-smi-larb
            - mediatek,mt8188-smi-larb
            - mediatek,mt8195-smi-larb

    then:
      properties:
        clocks:
          minItems: 2
          maxItems: 3
        clock-names:
          minItems: 2
          items:
            - const: apb
            - const: smi
            - const: gals

    else:
      properties:
        clocks:
          minItems: 2
          maxItems: 2
        clock-names:
          items:
            - const: apb
            - const: smi

  - if:
      properties:
        compatible:
          contains:
            enum:
              - mediatek,mt2701-smi-larb
              - mediatek,mt2712-smi-larb
              - mediatek,mt6779-smi-larb
              - mediatek,mt8186-smi-larb
              - mediatek,mt8188-smi-larb
              - mediatek,mt8192-smi-larb
              - mediatek,mt8195-smi-larb

    then:
      required:
        - mediatek,larb-id

additionalProperties: false

examples:
  - |+
    #include <dt-bindings/clock/mt8173-clk.h>
    #include <dt-bindings/power/mt8173-power.h>

    larb1: larb@16010000 {
      compatible = "mediatek,mt8173-smi-larb";
      reg = <0x16010000 0x1000>;
      mediatek,smi = <&smi_common>;
      power-domains = <&scpsys MT8173_POWER_DOMAIN_VDEC>;
      clocks = <&vdecsys CLK_VDEC_CKEN>,
               <&vdecsys CLK_VDEC_LARB_CKEN>;
      clock-names = "apb", "smi";
    };
