brintos

brintos / linux-shallow public Read only

0
0
Text · 3.5 KiB · 2381660 Raw
144 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2# Copyright (c) 2020 MediaTek Inc.3%YAML 1.24---5$id: http://devicetree.org/schemas/memory-controllers/mediatek,smi-larb.yaml#6$schema: http://devicetree.org/meta-schemas/core.yaml#7 8title: SMI (Smart Multimedia Interface) Local Arbiter9 10maintainers:11  - Yong Wu <yong.wu@mediatek.com>12 13description: |14  The hardware block diagram please check bindings/iommu/mediatek,iommu.yaml15 16properties:17  compatible:18    oneOf:19      - enum:20          - mediatek,mt2701-smi-larb21          - mediatek,mt2712-smi-larb22          - mediatek,mt6779-smi-larb23          - mediatek,mt6795-smi-larb24          - mediatek,mt8167-smi-larb25          - mediatek,mt8173-smi-larb26          - mediatek,mt8183-smi-larb27          - mediatek,mt8186-smi-larb28          - mediatek,mt8188-smi-larb29          - mediatek,mt8192-smi-larb30          - mediatek,mt8195-smi-larb31 32      - description: for mt762333        items:34          - const: mediatek,mt7623-smi-larb35          - const: mediatek,mt2701-smi-larb36 37      - items:38          - const: mediatek,mt8365-smi-larb39          - const: mediatek,mt8186-smi-larb40 41  reg:42    maxItems: 143 44  clocks:45    description: |46      apb and smi are mandatory. gals(global async local sync) is optional.47    minItems: 248    items:49      - description: apb is Advanced Peripheral Bus clock, It's the clock for50          setting the register.51      - description: smi is the clock for transfer data and command.52      - description: the clock for gals.53 54  clock-names:55    minItems: 256    maxItems: 357 58  power-domains:59    maxItems: 160 61  mediatek,smi:62    $ref: /schemas/types.yaml#/definitions/phandle63    description: a phandle to the smi_common node.64 65  mediatek,larb-id:66    $ref: /schemas/types.yaml#/definitions/uint3267    minimum: 068    maximum: 3169    description: the hardware id of this larb. It's only required when this70      hardware id is not consecutive from its M4U point of view.71 72required:73  - compatible74  - reg75  - clocks76  - clock-names77  - power-domains78 79allOf:80  - if:  # HW has gals81      properties:82        compatible:83          enum:84            - mediatek,mt8183-smi-larb85            - mediatek,mt8186-smi-larb86            - mediatek,mt8188-smi-larb87            - mediatek,mt8195-smi-larb88 89    then:90      properties:91        clocks:92          minItems: 293          maxItems: 394        clock-names:95          minItems: 296          items:97            - const: apb98            - const: smi99            - const: gals100 101    else:102      properties:103        clocks:104          minItems: 2105          maxItems: 2106        clock-names:107          items:108            - const: apb109            - const: smi110 111  - if:112      properties:113        compatible:114          contains:115            enum:116              - mediatek,mt2701-smi-larb117              - mediatek,mt2712-smi-larb118              - mediatek,mt6779-smi-larb119              - mediatek,mt8186-smi-larb120              - mediatek,mt8188-smi-larb121              - mediatek,mt8192-smi-larb122              - mediatek,mt8195-smi-larb123 124    then:125      required:126        - mediatek,larb-id127 128additionalProperties: false129 130examples:131  - |+132    #include <dt-bindings/clock/mt8173-clk.h>133    #include <dt-bindings/power/mt8173-power.h>134 135    larb1: larb@16010000 {136      compatible = "mediatek,mt8173-smi-larb";137      reg = <0x16010000 0x1000>;138      mediatek,smi = <&smi_common>;139      power-domains = <&scpsys MT8173_POWER_DOMAIN_VDEC>;140      clocks = <&vdecsys CLK_VDEC_CKEN>,141               <&vdecsys CLK_VDEC_LARB_CKEN>;142      clock-names = "apb", "smi";143    };144