xref: /openbmc/linux/Documentation/devicetree/bindings/soc/mediatek/mediatek,wdma.yaml (revision 4f2c0a4acffbec01079c28f839422e64ddeff004)
1*8bbdead4SMoudy Ho# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*8bbdead4SMoudy Ho%YAML 1.2
3*8bbdead4SMoudy Ho---
4*8bbdead4SMoudy Ho$id: http://devicetree.org/schemas/soc/mediatek/mediatek,wdma.yaml#
5*8bbdead4SMoudy Ho$schema: http://devicetree.org/meta-schemas/core.yaml#
6*8bbdead4SMoudy Ho
7*8bbdead4SMoudy Hotitle: MediaTek Write Direct Memory Access
8*8bbdead4SMoudy Ho
9*8bbdead4SMoudy Homaintainers:
10*8bbdead4SMoudy Ho  - Matthias Brugger <matthias.bgg@gmail.com>
11*8bbdead4SMoudy Ho  - Moudy Ho <moudy.ho@mediatek.com>
12*8bbdead4SMoudy Ho
13*8bbdead4SMoudy Hodescription: |
14*8bbdead4SMoudy Ho  MediaTek Write Direct Memory Access(WDMA) component used to write
15*8bbdead4SMoudy Ho  the data into DMA.
16*8bbdead4SMoudy Ho
17*8bbdead4SMoudy Hoproperties:
18*8bbdead4SMoudy Ho  compatible:
19*8bbdead4SMoudy Ho    items:
20*8bbdead4SMoudy Ho      - enum:
21*8bbdead4SMoudy Ho          - mediatek,mt8183-mdp3-wdma
22*8bbdead4SMoudy Ho
23*8bbdead4SMoudy Ho  reg:
24*8bbdead4SMoudy Ho    maxItems: 1
25*8bbdead4SMoudy Ho
26*8bbdead4SMoudy Ho  mediatek,gce-client-reg:
27*8bbdead4SMoudy Ho    $ref: /schemas/types.yaml#/definitions/phandle-array
28*8bbdead4SMoudy Ho    items:
29*8bbdead4SMoudy Ho      items:
30*8bbdead4SMoudy Ho        - description: phandle of GCE
31*8bbdead4SMoudy Ho        - description: GCE subsys id
32*8bbdead4SMoudy Ho        - description: register offset
33*8bbdead4SMoudy Ho        - description: register size
34*8bbdead4SMoudy Ho    description: The register of client driver can be configured by gce with
35*8bbdead4SMoudy Ho      4 arguments defined in this property. Each GCE subsys id is mapping to
36*8bbdead4SMoudy Ho      a client defined in the header include/dt-bindings/gce/<chip>-gce.h.
37*8bbdead4SMoudy Ho
38*8bbdead4SMoudy Ho  mediatek,gce-events:
39*8bbdead4SMoudy Ho    description:
40*8bbdead4SMoudy Ho      The event id which is mapping to the specific hardware event signal
41*8bbdead4SMoudy Ho      to gce. The event id is defined in the gce header
42*8bbdead4SMoudy Ho      include/dt-bindings/gce/<chip>-gce.h of each chips.
43*8bbdead4SMoudy Ho    $ref: /schemas/types.yaml#/definitions/uint32-array
44*8bbdead4SMoudy Ho
45*8bbdead4SMoudy Ho  power-domains:
46*8bbdead4SMoudy Ho    maxItems: 1
47*8bbdead4SMoudy Ho
48*8bbdead4SMoudy Ho  clocks:
49*8bbdead4SMoudy Ho    minItems: 1
50*8bbdead4SMoudy Ho
51*8bbdead4SMoudy Ho  iommus:
52*8bbdead4SMoudy Ho    maxItems: 1
53*8bbdead4SMoudy Ho
54*8bbdead4SMoudy Horequired:
55*8bbdead4SMoudy Ho  - compatible
56*8bbdead4SMoudy Ho  - reg
57*8bbdead4SMoudy Ho  - mediatek,gce-client-reg
58*8bbdead4SMoudy Ho  - mediatek,gce-events
59*8bbdead4SMoudy Ho  - power-domains
60*8bbdead4SMoudy Ho  - clocks
61*8bbdead4SMoudy Ho  - iommus
62*8bbdead4SMoudy Ho
63*8bbdead4SMoudy HoadditionalProperties: false
64*8bbdead4SMoudy Ho
65*8bbdead4SMoudy Hoexamples:
66*8bbdead4SMoudy Ho  - |
67*8bbdead4SMoudy Ho    #include <dt-bindings/clock/mt8183-clk.h>
68*8bbdead4SMoudy Ho    #include <dt-bindings/gce/mt8183-gce.h>
69*8bbdead4SMoudy Ho    #include <dt-bindings/power/mt8183-power.h>
70*8bbdead4SMoudy Ho    #include <dt-bindings/memory/mt8183-larb-port.h>
71*8bbdead4SMoudy Ho
72*8bbdead4SMoudy Ho    mdp3_wdma: mdp3-wdma@14006000 {
73*8bbdead4SMoudy Ho      compatible = "mediatek,mt8183-mdp3-wdma";
74*8bbdead4SMoudy Ho      reg = <0x14006000 0x1000>;
75*8bbdead4SMoudy Ho      mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0x6000 0x1000>;
76*8bbdead4SMoudy Ho      mediatek,gce-events = <CMDQ_EVENT_MDP_WDMA0_SOF>,
77*8bbdead4SMoudy Ho                            <CMDQ_EVENT_MDP_WDMA0_EOF>;
78*8bbdead4SMoudy Ho      power-domains = <&spm MT8183_POWER_DOMAIN_DISP>;
79*8bbdead4SMoudy Ho      clocks = <&mmsys CLK_MM_MDP_WDMA0>;
80*8bbdead4SMoudy Ho      iommus = <&iommu>;
81*8bbdead4SMoudy Ho    };
82