xref: /linux/Documentation/devicetree/bindings/display/mediatek/mediatek,wdma.yaml (revision 4ed545e7d10049b5492afc184e61a67e478a2cfd)
1*4ed545e7Sjason-jh.lin# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*4ed545e7Sjason-jh.lin%YAML 1.2
3*4ed545e7Sjason-jh.lin---
4*4ed545e7Sjason-jh.lin$id: http://devicetree.org/schemas/display/mediatek/mediatek,wdma.yaml#
5*4ed545e7Sjason-jh.lin$schema: http://devicetree.org/meta-schemas/core.yaml#
6*4ed545e7Sjason-jh.lin
7*4ed545e7Sjason-jh.lintitle: Mediatek Write Direct Memory Access
8*4ed545e7Sjason-jh.lin
9*4ed545e7Sjason-jh.linmaintainers:
10*4ed545e7Sjason-jh.lin  - Chun-Kuang Hu <chunkuang.hu@kernel.org>
11*4ed545e7Sjason-jh.lin  - Philipp Zabel <p.zabel@pengutronix.de>
12*4ed545e7Sjason-jh.lin
13*4ed545e7Sjason-jh.lindescription: |
14*4ed545e7Sjason-jh.lin  Mediatek Write Direct Memory Access(WDMA) component used to write
15*4ed545e7Sjason-jh.lin  the data into DMA.
16*4ed545e7Sjason-jh.lin  WDMA device node must be siblings to the central MMSYS_CONFIG node.
17*4ed545e7Sjason-jh.lin  For a description of the MMSYS_CONFIG binding, see
18*4ed545e7Sjason-jh.lin  Documentation/devicetree/bindings/arm/mediatek/mediatek,mmsys.yaml
19*4ed545e7Sjason-jh.lin  for details.
20*4ed545e7Sjason-jh.lin
21*4ed545e7Sjason-jh.linproperties:
22*4ed545e7Sjason-jh.lin  compatible:
23*4ed545e7Sjason-jh.lin    oneOf:
24*4ed545e7Sjason-jh.lin      - items:
25*4ed545e7Sjason-jh.lin          - const: mediatek,mt8173-disp-wdma
26*4ed545e7Sjason-jh.lin
27*4ed545e7Sjason-jh.lin  reg:
28*4ed545e7Sjason-jh.lin    maxItems: 1
29*4ed545e7Sjason-jh.lin
30*4ed545e7Sjason-jh.lin  interrupts:
31*4ed545e7Sjason-jh.lin    maxItems: 1
32*4ed545e7Sjason-jh.lin
33*4ed545e7Sjason-jh.lin  power-domains:
34*4ed545e7Sjason-jh.lin    description: A phandle and PM domain specifier as defined by bindings of
35*4ed545e7Sjason-jh.lin      the power controller specified by phandle. See
36*4ed545e7Sjason-jh.lin      Documentation/devicetree/bindings/power/power-domain.yaml for details.
37*4ed545e7Sjason-jh.lin
38*4ed545e7Sjason-jh.lin  clocks:
39*4ed545e7Sjason-jh.lin    items:
40*4ed545e7Sjason-jh.lin      - description: WDMA Clock
41*4ed545e7Sjason-jh.lin
42*4ed545e7Sjason-jh.lin  iommus:
43*4ed545e7Sjason-jh.lin    description:
44*4ed545e7Sjason-jh.lin      This property should point to the respective IOMMU block with master port as argument,
45*4ed545e7Sjason-jh.lin      see Documentation/devicetree/bindings/iommu/mediatek,iommu.yaml for details.
46*4ed545e7Sjason-jh.lin
47*4ed545e7Sjason-jh.lin  mediatek,larb:
48*4ed545e7Sjason-jh.lin    description:
49*4ed545e7Sjason-jh.lin      This property should contain a phandle pointing to the local arbiter devices defined in
50*4ed545e7Sjason-jh.lin      Documentation/devicetree/bindings/memory-controllers/mediatek,smi-larb.yaml.
51*4ed545e7Sjason-jh.lin      It must sort according to the local arbiter index, like larb0, larb1, larb2...
52*4ed545e7Sjason-jh.lin    $ref: /schemas/types.yaml#/definitions/phandle-array
53*4ed545e7Sjason-jh.lin    minItems: 1
54*4ed545e7Sjason-jh.lin    maxItems: 32
55*4ed545e7Sjason-jh.lin
56*4ed545e7Sjason-jh.lin  mediatek,gce-client-reg:
57*4ed545e7Sjason-jh.lin    description: The register of client driver can be configured by gce with
58*4ed545e7Sjason-jh.lin      4 arguments defined in this property, such as phandle of gce, subsys id,
59*4ed545e7Sjason-jh.lin      register offset and size. Each GCE subsys id is mapping to a client
60*4ed545e7Sjason-jh.lin      defined in the header include/dt-bindings/gce/<chip>-gce.h.
61*4ed545e7Sjason-jh.lin    $ref: /schemas/types.yaml#/definitions/phandle-array
62*4ed545e7Sjason-jh.lin    maxItems: 1
63*4ed545e7Sjason-jh.lin
64*4ed545e7Sjason-jh.linrequired:
65*4ed545e7Sjason-jh.lin  - compatible
66*4ed545e7Sjason-jh.lin  - reg
67*4ed545e7Sjason-jh.lin  - interrupts
68*4ed545e7Sjason-jh.lin  - power-domains
69*4ed545e7Sjason-jh.lin  - clocks
70*4ed545e7Sjason-jh.lin  - iommus
71*4ed545e7Sjason-jh.lin
72*4ed545e7Sjason-jh.linadditionalProperties: false
73*4ed545e7Sjason-jh.lin
74*4ed545e7Sjason-jh.linexamples:
75*4ed545e7Sjason-jh.lin  - |
76*4ed545e7Sjason-jh.lin
77*4ed545e7Sjason-jh.lin    wdma0: wdma@14011000 {
78*4ed545e7Sjason-jh.lin        compatible = "mediatek,mt8173-disp-wdma";
79*4ed545e7Sjason-jh.lin        reg = <0 0x14011000 0 0x1000>;
80*4ed545e7Sjason-jh.lin        interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_LOW>;
81*4ed545e7Sjason-jh.lin        power-domains = <&scpsys MT8173_POWER_DOMAIN_MM>;
82*4ed545e7Sjason-jh.lin        clocks = <&mmsys CLK_MM_DISP_WDMA0>;
83*4ed545e7Sjason-jh.lin        iommus = <&iommu M4U_PORT_DISP_WDMA0>;
84*4ed545e7Sjason-jh.lin        mediatek,larb = <&larb0>;
85*4ed545e7Sjason-jh.lin        mediatek,gce-client-reg = <&gce SUBSYS_1401XXXX 0x1000 0x1000>;
86*4ed545e7Sjason-jh.lin    };
87