xref: /linux/Documentation/devicetree/bindings/clock/nuvoton,npcm750-clk.yaml (revision 8d2b0853add1d7534dc0794e3c8e0b9e8c4ec640)
1*71b80a33SRob Herring (Arm)# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*71b80a33SRob Herring (Arm)%YAML 1.2
3*71b80a33SRob Herring (Arm)---
4*71b80a33SRob Herring (Arm)$id: http://devicetree.org/schemas/clock/nuvoton,npcm750-clk.yaml#
5*71b80a33SRob Herring (Arm)$schema: http://devicetree.org/meta-schemas/core.yaml#
6*71b80a33SRob Herring (Arm)
7*71b80a33SRob Herring (Arm)title: Nuvoton NPCM7XX Clock Controller
8*71b80a33SRob Herring (Arm)
9*71b80a33SRob Herring (Arm)maintainers:
10*71b80a33SRob Herring (Arm)  - Tali Perry <tali.perry1@gmail.com>
11*71b80a33SRob Herring (Arm)
12*71b80a33SRob Herring (Arm)description: >
13*71b80a33SRob Herring (Arm)  Nuvoton Poleg BMC NPCM7XX contains an integrated clock controller, which
14*71b80a33SRob Herring (Arm)  generates and supplies clocks to all modules within the BMC.
15*71b80a33SRob Herring (Arm)
16*71b80a33SRob Herring (Arm)  External clocks:
17*71b80a33SRob Herring (Arm)
18*71b80a33SRob Herring (Arm)  There are six fixed clocks that are generated outside the BMC. All clocks are of
19*71b80a33SRob Herring (Arm)  a known fixed value that cannot be changed. clk_refclk, clk_mcbypck and
20*71b80a33SRob Herring (Arm)  clk_sysbypck are inputs to the clock controller.
21*71b80a33SRob Herring (Arm)  clk_rg1refck, clk_rg2refck and clk_xin are external clocks suppling the
22*71b80a33SRob Herring (Arm)  network. They are set on the device tree, but not used by the clock module. The
23*71b80a33SRob Herring (Arm)  network devices use them directly.
24*71b80a33SRob Herring (Arm)
25*71b80a33SRob Herring (Arm)  All available clocks are defined as preprocessor macros in:
26*71b80a33SRob Herring (Arm)  dt-bindings/clock/nuvoton,npcm7xx-clock.h
27*71b80a33SRob Herring (Arm)  and can be reused as DT sources.
28*71b80a33SRob Herring (Arm)
29*71b80a33SRob Herring (Arm)properties:
30*71b80a33SRob Herring (Arm)  compatible:
31*71b80a33SRob Herring (Arm)    const: nuvoton,npcm750-clk
32*71b80a33SRob Herring (Arm)
33*71b80a33SRob Herring (Arm)  reg:
34*71b80a33SRob Herring (Arm)    maxItems: 1
35*71b80a33SRob Herring (Arm)
36*71b80a33SRob Herring (Arm)  '#clock-cells':
37*71b80a33SRob Herring (Arm)    const: 1
38*71b80a33SRob Herring (Arm)
39*71b80a33SRob Herring (Arm)  clock-names:
40*71b80a33SRob Herring (Arm)    items:
41*71b80a33SRob Herring (Arm)      - const: refclk
42*71b80a33SRob Herring (Arm)      - const: sysbypck
43*71b80a33SRob Herring (Arm)      - const: mcbypck
44*71b80a33SRob Herring (Arm)
45*71b80a33SRob Herring (Arm)  clocks:
46*71b80a33SRob Herring (Arm)    items:
47*71b80a33SRob Herring (Arm)      - description: refclk
48*71b80a33SRob Herring (Arm)      - description: sysbypck
49*71b80a33SRob Herring (Arm)      - description: mcbypck
50*71b80a33SRob Herring (Arm)
51*71b80a33SRob Herring (Arm)required:
52*71b80a33SRob Herring (Arm)  - compatible
53*71b80a33SRob Herring (Arm)  - reg
54*71b80a33SRob Herring (Arm)  - '#clock-cells'
55*71b80a33SRob Herring (Arm)
56*71b80a33SRob Herring (Arm)additionalProperties: false
57*71b80a33SRob Herring (Arm)
58*71b80a33SRob Herring (Arm)examples:
59*71b80a33SRob Herring (Arm)  - |
60*71b80a33SRob Herring (Arm)    clock-controller@f0801000 {
61*71b80a33SRob Herring (Arm)        compatible = "nuvoton,npcm750-clk";
62*71b80a33SRob Herring (Arm)        #clock-cells = <1>;
63*71b80a33SRob Herring (Arm)        reg = <0xf0801000 0x1000>;
64*71b80a33SRob Herring (Arm)        clock-names = "refclk", "sysbypck", "mcbypck";
65*71b80a33SRob Herring (Arm)        clocks = <&clk_refclk>, <&clk_sysbypck>, <&clk_mcbypck>;
66*71b80a33SRob Herring (Arm)    };
67