1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/clock/mediatek,topckgen.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: MediaTek Top Clock Generator Controller
8
9maintainers:
10  - Michael Turquette <mturquette@baylibre.com>
11  - Stephen Boyd <sboyd@kernel.org>
12
13description:
14  The Mediatek topckgen controller provides various clocks to the system.
15  The clock values can be found in <dt-bindings/clock/mt*-clk.h>.
16
17properties:
18  compatible:
19    oneOf:
20      - enum:
21          - mediatek,mt6797-topckgen
22          - mediatek,mt7622-topckgen
23          - mediatek,mt8135-topckgen
24          - mediatek,mt8173-topckgen
25          - mediatek,mt8516-topckgen
26      - items:
27          - const: mediatek,mt7623-topckgen
28          - const: mediatek,mt2701-topckgen
29          - const: syscon
30      - items:
31          - enum:
32              - mediatek,mt2701-topckgen
33              - mediatek,mt2712-topckgen
34              - mediatek,mt6765-topckgen
35              - mediatek,mt6779-topckgen
36              - mediatek,mt6795-topckgen
37              - mediatek,mt7629-topckgen
38              - mediatek,mt7981-topckgen
39              - mediatek,mt7986-topckgen
40              - mediatek,mt8167-topckgen
41              - mediatek,mt8183-topckgen
42          - const: syscon
43
44  reg:
45    maxItems: 1
46
47  '#clock-cells':
48    const: 1
49
50required:
51  - compatible
52  - reg
53  - '#clock-cells'
54
55additionalProperties: false
56
57examples:
58  - |
59    topckgen: clock-controller@10000000 {
60        compatible = "mediatek,mt8173-topckgen";
61        reg = <0x10000000 0x1000>;
62        #clock-cells = <1>;
63    };
64