xref: /freebsd/sys/contrib/device-tree/Bindings/arm/mediatek/mediatek,mmsys.yaml (revision 8d13bc63c0e1d50bc9e47ac1f26329c999bfecf0)
1354d7675SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2354d7675SEmmanuel Vadot%YAML 1.2
3354d7675SEmmanuel Vadot---
4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/arm/mediatek/mediatek,mmsys.yaml#
5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6354d7675SEmmanuel Vadot
7354d7675SEmmanuel Vadottitle: MediaTek mmsys controller
8354d7675SEmmanuel Vadot
9354d7675SEmmanuel Vadotmaintainers:
10354d7675SEmmanuel Vadot  - Matthias Brugger <matthias.bgg@gmail.com>
11354d7675SEmmanuel Vadot
12354d7675SEmmanuel Vadotdescription:
13354d7675SEmmanuel Vadot  The MediaTek mmsys system controller provides clock control, routing control,
14354d7675SEmmanuel Vadot  and miscellaneous control in mmsys partition.
15354d7675SEmmanuel Vadot
16354d7675SEmmanuel Vadotproperties:
17354d7675SEmmanuel Vadot  $nodename:
18354d7675SEmmanuel Vadot    pattern: "^syscon@[0-9a-f]+$"
19354d7675SEmmanuel Vadot
20354d7675SEmmanuel Vadot  compatible:
21354d7675SEmmanuel Vadot    oneOf:
22354d7675SEmmanuel Vadot      - items:
23354d7675SEmmanuel Vadot          - enum:
24354d7675SEmmanuel Vadot              - mediatek,mt2701-mmsys
25354d7675SEmmanuel Vadot              - mediatek,mt2712-mmsys
26354d7675SEmmanuel Vadot              - mediatek,mt6765-mmsys
27354d7675SEmmanuel Vadot              - mediatek,mt6779-mmsys
287ef62cebSEmmanuel Vadot              - mediatek,mt6795-mmsys
29354d7675SEmmanuel Vadot              - mediatek,mt6797-mmsys
30354d7675SEmmanuel Vadot              - mediatek,mt8167-mmsys
31354d7675SEmmanuel Vadot              - mediatek,mt8173-mmsys
32354d7675SEmmanuel Vadot              - mediatek,mt8183-mmsys
33c9ccf3a3SEmmanuel Vadot              - mediatek,mt8186-mmsys
34cb7aa33aSEmmanuel Vadot              - mediatek,mt8188-vdosys0
35*8d13bc63SEmmanuel Vadot              - mediatek,mt8188-vdosys1
36*8d13bc63SEmmanuel Vadot              - mediatek,mt8188-vppsys0
37*8d13bc63SEmmanuel Vadot              - mediatek,mt8188-vppsys1
38354d7675SEmmanuel Vadot              - mediatek,mt8192-mmsys
39cb7aa33aSEmmanuel Vadot              - mediatek,mt8195-vdosys1
40cb7aa33aSEmmanuel Vadot              - mediatek,mt8195-vppsys0
41cb7aa33aSEmmanuel Vadot              - mediatek,mt8195-vppsys1
42354d7675SEmmanuel Vadot              - mediatek,mt8365-mmsys
43354d7675SEmmanuel Vadot          - const: syscon
448bab661aSEmmanuel Vadot
458bab661aSEmmanuel Vadot      - description: vdosys0 and vdosys1 are 2 display HW pipelines,
468bab661aSEmmanuel Vadot                     so mt8195 binding should be deprecated.
478bab661aSEmmanuel Vadot        deprecated: true
488bab661aSEmmanuel Vadot        items:
498bab661aSEmmanuel Vadot          - const: mediatek,mt8195-mmsys
508bab661aSEmmanuel Vadot          - const: syscon
518bab661aSEmmanuel Vadot
52354d7675SEmmanuel Vadot      - items:
53354d7675SEmmanuel Vadot          - const: mediatek,mt7623-mmsys
54354d7675SEmmanuel Vadot          - const: mediatek,mt2701-mmsys
55354d7675SEmmanuel Vadot          - const: syscon
56354d7675SEmmanuel Vadot
578bab661aSEmmanuel Vadot      - items:
588bab661aSEmmanuel Vadot          - const: mediatek,mt8195-vdosys0
598bab661aSEmmanuel Vadot          - const: mediatek,mt8195-mmsys
608bab661aSEmmanuel Vadot          - const: syscon
618bab661aSEmmanuel Vadot
62354d7675SEmmanuel Vadot  reg:
63354d7675SEmmanuel Vadot    maxItems: 1
64354d7675SEmmanuel Vadot
65d5b0e70fSEmmanuel Vadot  power-domains:
66d5b0e70fSEmmanuel Vadot    description:
67d5b0e70fSEmmanuel Vadot      A phandle and PM domain specifier as defined by bindings
68d5b0e70fSEmmanuel Vadot      of the power controller specified by phandle. See
69d5b0e70fSEmmanuel Vadot      Documentation/devicetree/bindings/power/power-domain.yaml for details.
70d5b0e70fSEmmanuel Vadot
71d5b0e70fSEmmanuel Vadot  mboxes:
72d5b0e70fSEmmanuel Vadot    description:
73d5b0e70fSEmmanuel Vadot      Using mailbox to communicate with GCE, it should have this
74d5b0e70fSEmmanuel Vadot      property and list of phandle, mailbox specifiers. See
757ef62cebSEmmanuel Vadot      Documentation/devicetree/bindings/mailbox/mediatek,gce-mailbox.yaml
767ef62cebSEmmanuel Vadot      for details.
77d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle-array
78d5b0e70fSEmmanuel Vadot
79d5b0e70fSEmmanuel Vadot  mediatek,gce-client-reg:
80d5b0e70fSEmmanuel Vadot    description:
81d5b0e70fSEmmanuel Vadot      The register of client driver can be configured by gce with 4 arguments
82d5b0e70fSEmmanuel Vadot      defined in this property, such as phandle of gce, subsys id,
83d5b0e70fSEmmanuel Vadot      register offset and size.
84d5b0e70fSEmmanuel Vadot      Each subsys id is mapping to a base address of display function blocks
85d5b0e70fSEmmanuel Vadot      register which is defined in the gce header
86d5b0e70fSEmmanuel Vadot      include/dt-bindings/gce/<chip>-gce.h.
87d5b0e70fSEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/phandle-array
88d5b0e70fSEmmanuel Vadot    maxItems: 1
89d5b0e70fSEmmanuel Vadot
90354d7675SEmmanuel Vadot  "#clock-cells":
91354d7675SEmmanuel Vadot    const: 1
92354d7675SEmmanuel Vadot
938cc087a1SEmmanuel Vadot  '#reset-cells':
948cc087a1SEmmanuel Vadot    const: 1
958cc087a1SEmmanuel Vadot
96354d7675SEmmanuel Vadotrequired:
97354d7675SEmmanuel Vadot  - compatible
98354d7675SEmmanuel Vadot  - reg
99354d7675SEmmanuel Vadot  - "#clock-cells"
100354d7675SEmmanuel Vadot
101354d7675SEmmanuel VadotadditionalProperties: false
102354d7675SEmmanuel Vadot
103354d7675SEmmanuel Vadotexamples:
104354d7675SEmmanuel Vadot  - |
105d5b0e70fSEmmanuel Vadot    #include <dt-bindings/power/mt8173-power.h>
106d5b0e70fSEmmanuel Vadot    #include <dt-bindings/gce/mt8173-gce.h>
107d5b0e70fSEmmanuel Vadot
108354d7675SEmmanuel Vadot    mmsys: syscon@14000000 {
109354d7675SEmmanuel Vadot        compatible = "mediatek,mt8173-mmsys", "syscon";
110354d7675SEmmanuel Vadot        reg = <0x14000000 0x1000>;
111d5b0e70fSEmmanuel Vadot        power-domains = <&spm MT8173_POWER_DOMAIN_MM>;
112354d7675SEmmanuel Vadot        #clock-cells = <1>;
1138cc087a1SEmmanuel Vadot        #reset-cells = <1>;
114d5b0e70fSEmmanuel Vadot        mboxes = <&gce 0 CMDQ_THR_PRIO_HIGHEST>,
115d5b0e70fSEmmanuel Vadot                 <&gce 1 CMDQ_THR_PRIO_HIGHEST>;
116d5b0e70fSEmmanuel Vadot        mediatek,gce-client-reg = <&gce SUBSYS_1400XXXX 0 0x1000>;
117354d7675SEmmanuel Vadot    };
118