xref: /linux/Documentation/devicetree/bindings/clock/sophgo,sg2044-clk.yaml (revision ab93e0dd72c37d378dd936f031ffb83ff2bd87ce)
1*1a215904SInochi Amaoto# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*1a215904SInochi Amaoto%YAML 1.2
3*1a215904SInochi Amaoto---
4*1a215904SInochi Amaoto$id: http://devicetree.org/schemas/clock/sophgo,sg2044-clk.yaml#
5*1a215904SInochi Amaoto$schema: http://devicetree.org/meta-schemas/core.yaml#
6*1a215904SInochi Amaoto
7*1a215904SInochi Amaototitle: Sophgo SG2044 Clock Controller
8*1a215904SInochi Amaoto
9*1a215904SInochi Amaotomaintainers:
10*1a215904SInochi Amaoto  - Inochi Amaoto <inochiama@gmail.com>
11*1a215904SInochi Amaoto
12*1a215904SInochi Amaotodescription: |
13*1a215904SInochi Amaoto  The Sophgo SG2044 clock controller requires an external oscillator
14*1a215904SInochi Amaoto  as input clock.
15*1a215904SInochi Amaoto
16*1a215904SInochi Amaoto  All available clocks are defined as preprocessor macros in
17*1a215904SInochi Amaoto  include/dt-bindings/clock/sophgo,sg2044-clk.h
18*1a215904SInochi Amaoto
19*1a215904SInochi Amaotoproperties:
20*1a215904SInochi Amaoto  compatible:
21*1a215904SInochi Amaoto    const: sophgo,sg2044-clk
22*1a215904SInochi Amaoto
23*1a215904SInochi Amaoto  reg:
24*1a215904SInochi Amaoto    maxItems: 1
25*1a215904SInochi Amaoto
26*1a215904SInochi Amaoto  clocks:
27*1a215904SInochi Amaoto    items:
28*1a215904SInochi Amaoto      - description: fpll0
29*1a215904SInochi Amaoto      - description: fpll1
30*1a215904SInochi Amaoto      - description: fpll2
31*1a215904SInochi Amaoto      - description: dpll0
32*1a215904SInochi Amaoto      - description: dpll1
33*1a215904SInochi Amaoto      - description: dpll2
34*1a215904SInochi Amaoto      - description: dpll3
35*1a215904SInochi Amaoto      - description: dpll4
36*1a215904SInochi Amaoto      - description: dpll5
37*1a215904SInochi Amaoto      - description: dpll6
38*1a215904SInochi Amaoto      - description: dpll7
39*1a215904SInochi Amaoto      - description: mpll0
40*1a215904SInochi Amaoto      - description: mpll1
41*1a215904SInochi Amaoto      - description: mpll2
42*1a215904SInochi Amaoto      - description: mpll3
43*1a215904SInochi Amaoto      - description: mpll4
44*1a215904SInochi Amaoto      - description: mpll5
45*1a215904SInochi Amaoto
46*1a215904SInochi Amaoto  clock-names:
47*1a215904SInochi Amaoto    items:
48*1a215904SInochi Amaoto      - const: fpll0
49*1a215904SInochi Amaoto      - const: fpll1
50*1a215904SInochi Amaoto      - const: fpll2
51*1a215904SInochi Amaoto      - const: dpll0
52*1a215904SInochi Amaoto      - const: dpll1
53*1a215904SInochi Amaoto      - const: dpll2
54*1a215904SInochi Amaoto      - const: dpll3
55*1a215904SInochi Amaoto      - const: dpll4
56*1a215904SInochi Amaoto      - const: dpll5
57*1a215904SInochi Amaoto      - const: dpll6
58*1a215904SInochi Amaoto      - const: dpll7
59*1a215904SInochi Amaoto      - const: mpll0
60*1a215904SInochi Amaoto      - const: mpll1
61*1a215904SInochi Amaoto      - const: mpll2
62*1a215904SInochi Amaoto      - const: mpll3
63*1a215904SInochi Amaoto      - const: mpll4
64*1a215904SInochi Amaoto      - const: mpll5
65*1a215904SInochi Amaoto
66*1a215904SInochi Amaoto  '#clock-cells':
67*1a215904SInochi Amaoto    const: 1
68*1a215904SInochi Amaoto
69*1a215904SInochi Amaotorequired:
70*1a215904SInochi Amaoto  - compatible
71*1a215904SInochi Amaoto  - reg
72*1a215904SInochi Amaoto  - clocks
73*1a215904SInochi Amaoto  - '#clock-cells'
74*1a215904SInochi Amaoto
75*1a215904SInochi AmaotoadditionalProperties: false
76*1a215904SInochi Amaoto
77*1a215904SInochi Amaotoexamples:
78*1a215904SInochi Amaoto  - |
79*1a215904SInochi Amaoto    #include <dt-bindings/clock/sophgo,sg2044-pll.h>
80*1a215904SInochi Amaoto
81*1a215904SInochi Amaoto    clock-controller@50002000 {
82*1a215904SInochi Amaoto      compatible = "sophgo,sg2044-clk";
83*1a215904SInochi Amaoto      reg = <0x50002000 0x1000>;
84*1a215904SInochi Amaoto      #clock-cells = <1>;
85*1a215904SInochi Amaoto      clocks = <&syscon CLK_FPLL0>, <&syscon CLK_FPLL1>,
86*1a215904SInochi Amaoto               <&syscon CLK_FPLL2>, <&syscon CLK_DPLL0>,
87*1a215904SInochi Amaoto               <&syscon CLK_DPLL1>, <&syscon CLK_DPLL2>,
88*1a215904SInochi Amaoto               <&syscon CLK_DPLL3>, <&syscon CLK_DPLL4>,
89*1a215904SInochi Amaoto               <&syscon CLK_DPLL5>, <&syscon CLK_DPLL6>,
90*1a215904SInochi Amaoto               <&syscon CLK_DPLL7>, <&syscon CLK_MPLL0>,
91*1a215904SInochi Amaoto               <&syscon CLK_MPLL1>, <&syscon CLK_MPLL2>,
92*1a215904SInochi Amaoto               <&syscon CLK_MPLL3>, <&syscon CLK_MPLL4>,
93*1a215904SInochi Amaoto               <&syscon CLK_MPLL5>;
94*1a215904SInochi Amaoto      clock-names = "fpll0", "fpll1", "fpll2", "dpll0",
95*1a215904SInochi Amaoto                    "dpll1", "dpll2", "dpll3", "dpll4",
96*1a215904SInochi Amaoto                    "dpll5", "dpll6", "dpll7", "mpll0",
97*1a215904SInochi Amaoto                    "mpll1", "mpll2", "mpll3", "mpll4",
98*1a215904SInochi Amaoto                    "mpll5";
99*1a215904SInochi Amaoto    };
100