1*fffa0fa4SJohan Jonker# SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2d4756536SNícolas F. R. A. Prado%YAML 1.2
3d4756536SNícolas F. R. A. Prado---
4d4756536SNícolas F. R. A. Prado$id: http://devicetree.org/schemas/clock/rockchip,rk3399-cru.yaml#
5d4756536SNícolas F. R. A. Prado$schema: http://devicetree.org/meta-schemas/core.yaml#
6d4756536SNícolas F. R. A. Prado
7d4756536SNícolas F. R. A. Pradotitle: Rockchip RK3399 Clock and Reset Unit
8d4756536SNícolas F. R. A. Prado
9d4756536SNícolas F. R. A. Pradomaintainers:
1050cfde33SJohan Jonker  - Elaine Zhang <zhangqing@rock-chips.com>
11d4756536SNícolas F. R. A. Prado  - Heiko Stuebner <heiko@sntech.de>
12d4756536SNícolas F. R. A. Prado
13d4756536SNícolas F. R. A. Pradodescription: |
14d4756536SNícolas F. R. A. Prado  The RK3399 clock controller generates and supplies clock to various
15d4756536SNícolas F. R. A. Prado  controllers within the SoC and also implements a reset controller for SoC
16d4756536SNícolas F. R. A. Prado  peripherals.
17d4756536SNícolas F. R. A. Prado  Each clock is assigned an identifier and client nodes can use this identifier
18d4756536SNícolas F. R. A. Prado  to specify the clock which they consume. All available clocks are defined as
19d4756536SNícolas F. R. A. Prado  preprocessor macros in the dt-bindings/clock/rk3399-cru.h headers and can be
20d4756536SNícolas F. R. A. Prado  used in device tree sources. Similar macros exist for the reset sources in
21d4756536SNícolas F. R. A. Prado  these files.
22d4756536SNícolas F. R. A. Prado  There are several clocks that are generated outside the SoC. It is expected
23d4756536SNícolas F. R. A. Prado  that they are defined using standard clock bindings with following
24d4756536SNícolas F. R. A. Prado  clock-output-names:
25d4756536SNícolas F. R. A. Prado    - "xin24m"           - crystal input                          - required,
26d4756536SNícolas F. R. A. Prado    - "xin32k"           - rtc clock                              - optional,
27d4756536SNícolas F. R. A. Prado    - "clkin_gmac"       - external GMAC clock                    - optional,
28d4756536SNícolas F. R. A. Prado    - "clkin_i2s"        - external I2S clock                     - optional,
29d4756536SNícolas F. R. A. Prado    - "pclkin_cif"       - external ISP clock                     - optional,
30d4756536SNícolas F. R. A. Prado    - "clk_usbphy0_480m" - output clock of the pll in the usbphy0
31d4756536SNícolas F. R. A. Prado    - "clk_usbphy1_480m" - output clock of the pll in the usbphy1
32d4756536SNícolas F. R. A. Prado
33d4756536SNícolas F. R. A. Pradoproperties:
34d4756536SNícolas F. R. A. Prado  compatible:
35d4756536SNícolas F. R. A. Prado    enum:
36d4756536SNícolas F. R. A. Prado      - rockchip,rk3399-pmucru
37d4756536SNícolas F. R. A. Prado      - rockchip,rk3399-cru
38d4756536SNícolas F. R. A. Prado
39d4756536SNícolas F. R. A. Prado  reg:
40d4756536SNícolas F. R. A. Prado    maxItems: 1
41d4756536SNícolas F. R. A. Prado
42d4756536SNícolas F. R. A. Prado  "#clock-cells":
43d4756536SNícolas F. R. A. Prado    const: 1
44d4756536SNícolas F. R. A. Prado
45d4756536SNícolas F. R. A. Prado  "#reset-cells":
46d4756536SNícolas F. R. A. Prado    const: 1
47d4756536SNícolas F. R. A. Prado
48d4756536SNícolas F. R. A. Prado  clocks:
497adc1b98SJohan Jonker    maxItems: 1
50d4756536SNícolas F. R. A. Prado
517adc1b98SJohan Jonker  clock-names:
527adc1b98SJohan Jonker    const: xin24m
53d4756536SNícolas F. R. A. Prado
54d4756536SNícolas F. R. A. Prado  rockchip,grf:
55d4756536SNícolas F. R. A. Prado    $ref: /schemas/types.yaml#/definitions/phandle
5604d3e427SJohan Jonker    description:
5704d3e427SJohan Jonker      Phandle to the syscon managing the "general register files". It is used
58d4756536SNícolas F. R. A. Prado      for GRF muxes, if missing any muxes present in the GRF will not be
59d4756536SNícolas F. R. A. Prado      available.
60d4756536SNícolas F. R. A. Prado
61d4756536SNícolas F. R. A. Pradorequired:
62d4756536SNícolas F. R. A. Prado  - compatible
63d4756536SNícolas F. R. A. Prado  - reg
64d4756536SNícolas F. R. A. Prado  - "#clock-cells"
65d4756536SNícolas F. R. A. Prado  - "#reset-cells"
66d4756536SNícolas F. R. A. Prado
67d4756536SNícolas F. R. A. PradoadditionalProperties: false
68d4756536SNícolas F. R. A. Prado
69d4756536SNícolas F. R. A. Pradoexamples:
70d4756536SNícolas F. R. A. Prado  - |
7191154f0cSJohan Jonker    pmucru: clock-controller@ff750000 {
72d4756536SNícolas F. R. A. Prado      compatible = "rockchip,rk3399-pmucru";
73d4756536SNícolas F. R. A. Prado      reg = <0xff750000 0x1000>;
74d4756536SNícolas F. R. A. Prado      #clock-cells = <1>;
75d4756536SNícolas F. R. A. Prado      #reset-cells = <1>;
76d4756536SNícolas F. R. A. Prado    };
77d4756536SNícolas F. R. A. Prado  - |
78d4756536SNícolas F. R. A. Prado    cru: clock-controller@ff760000 {
79d4756536SNícolas F. R. A. Prado      compatible = "rockchip,rk3399-cru";
80d4756536SNícolas F. R. A. Prado      reg = <0xff760000 0x1000>;
81d4756536SNícolas F. R. A. Prado      #clock-cells = <1>;
82d4756536SNícolas F. R. A. Prado      #reset-cells = <1>;
83d4756536SNícolas F. R. A. Prado    };
84