xref: /linux/Documentation/devicetree/bindings/clock/bitmain,bm1880-clk.yaml (revision 7046c6b018912726947d75c4cacf03ca51267f59)
1*7046c6b0SManivannan Sadhasivam# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*7046c6b0SManivannan Sadhasivam%YAML 1.2
3*7046c6b0SManivannan Sadhasivam---
4*7046c6b0SManivannan Sadhasivam$id: http://devicetree.org/schemas/bindings/clock/bitmain,bm1880-clk.yaml#
5*7046c6b0SManivannan Sadhasivam$schema: http://devicetree.org/meta-schemas/core.yaml#
6*7046c6b0SManivannan Sadhasivam
7*7046c6b0SManivannan Sadhasivamtitle: Bitmain BM1880 Clock Controller
8*7046c6b0SManivannan Sadhasivam
9*7046c6b0SManivannan Sadhasivammaintainers:
10*7046c6b0SManivannan Sadhasivam  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
11*7046c6b0SManivannan Sadhasivam
12*7046c6b0SManivannan Sadhasivamdescription: |
13*7046c6b0SManivannan Sadhasivam  The Bitmain BM1880 clock controller generates and supplies clock to
14*7046c6b0SManivannan Sadhasivam  various peripherals within the SoC.
15*7046c6b0SManivannan Sadhasivam
16*7046c6b0SManivannan Sadhasivam  This binding uses common clock bindings
17*7046c6b0SManivannan Sadhasivam  [1] Documentation/devicetree/bindings/clock/clock-bindings.txt
18*7046c6b0SManivannan Sadhasivam
19*7046c6b0SManivannan Sadhasivamproperties:
20*7046c6b0SManivannan Sadhasivam  compatible:
21*7046c6b0SManivannan Sadhasivam    const: bitmain,bm1880-clk
22*7046c6b0SManivannan Sadhasivam
23*7046c6b0SManivannan Sadhasivam  reg:
24*7046c6b0SManivannan Sadhasivam    items:
25*7046c6b0SManivannan Sadhasivam      - description: pll registers
26*7046c6b0SManivannan Sadhasivam      - description: system registers
27*7046c6b0SManivannan Sadhasivam
28*7046c6b0SManivannan Sadhasivam  reg-names:
29*7046c6b0SManivannan Sadhasivam    items:
30*7046c6b0SManivannan Sadhasivam      - const: pll
31*7046c6b0SManivannan Sadhasivam      - const: sys
32*7046c6b0SManivannan Sadhasivam
33*7046c6b0SManivannan Sadhasivam  clocks:
34*7046c6b0SManivannan Sadhasivam    maxItems: 1
35*7046c6b0SManivannan Sadhasivam
36*7046c6b0SManivannan Sadhasivam  clock-names:
37*7046c6b0SManivannan Sadhasivam    const: osc
38*7046c6b0SManivannan Sadhasivam
39*7046c6b0SManivannan Sadhasivam  '#clock-cells':
40*7046c6b0SManivannan Sadhasivam    const: 1
41*7046c6b0SManivannan Sadhasivam
42*7046c6b0SManivannan Sadhasivamrequired:
43*7046c6b0SManivannan Sadhasivam  - compatible
44*7046c6b0SManivannan Sadhasivam  - reg
45*7046c6b0SManivannan Sadhasivam  - reg-names
46*7046c6b0SManivannan Sadhasivam  - clocks
47*7046c6b0SManivannan Sadhasivam  - clock-names
48*7046c6b0SManivannan Sadhasivam  - '#clock-cells'
49*7046c6b0SManivannan Sadhasivam
50*7046c6b0SManivannan SadhasivamadditionalProperties: false
51*7046c6b0SManivannan Sadhasivam
52*7046c6b0SManivannan Sadhasivamexamples:
53*7046c6b0SManivannan Sadhasivam  # Clock controller node:
54*7046c6b0SManivannan Sadhasivam  - |
55*7046c6b0SManivannan Sadhasivam    clk: clock-controller@e8 {
56*7046c6b0SManivannan Sadhasivam        compatible = "bitmain,bm1880-clk";
57*7046c6b0SManivannan Sadhasivam        reg = <0xe8 0x0c>, <0x800 0xb0>;
58*7046c6b0SManivannan Sadhasivam        reg-names = "pll", "sys";
59*7046c6b0SManivannan Sadhasivam        clocks = <&osc>;
60*7046c6b0SManivannan Sadhasivam        clock-names = "osc";
61*7046c6b0SManivannan Sadhasivam        #clock-cells = <1>;
62*7046c6b0SManivannan Sadhasivam    };
63*7046c6b0SManivannan Sadhasivam
64*7046c6b0SManivannan Sadhasivam  # Example UART controller node that consumes clock generated by the clock controller:
65*7046c6b0SManivannan Sadhasivam  - |
66*7046c6b0SManivannan Sadhasivam    uart0: serial@58018000 {
67*7046c6b0SManivannan Sadhasivam         compatible = "snps,dw-apb-uart";
68*7046c6b0SManivannan Sadhasivam         reg = <0x0 0x58018000 0x0 0x2000>;
69*7046c6b0SManivannan Sadhasivam         clocks = <&clk 45>, <&clk 46>;
70*7046c6b0SManivannan Sadhasivam         clock-names = "baudclk", "apb_pclk";
71*7046c6b0SManivannan Sadhasivam         interrupts = <0 9 4>;
72*7046c6b0SManivannan Sadhasivam         reg-shift = <2>;
73*7046c6b0SManivannan Sadhasivam         reg-io-width = <4>;
74*7046c6b0SManivannan Sadhasivam    };
75*7046c6b0SManivannan Sadhasivam
76*7046c6b0SManivannan Sadhasivam...
77