10cd74eecSElaine Zhang# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
20cd74eecSElaine Zhang%YAML 1.2
30cd74eecSElaine Zhang---
40cd74eecSElaine Zhang$id: http://devicetree.org/schemas/clock/rockchip,rk3568-cru.yaml#
50cd74eecSElaine Zhang$schema: http://devicetree.org/meta-schemas/core.yaml#
60cd74eecSElaine Zhang
7*84e85359SKrzysztof Kozlowskititle: ROCKCHIP rk3568 Family Clock Control Module
80cd74eecSElaine Zhang
90cd74eecSElaine Zhangmaintainers:
100cd74eecSElaine Zhang  - Elaine Zhang <zhangqing@rock-chips.com>
110cd74eecSElaine Zhang  - Heiko Stuebner <heiko@sntech.de>
120cd74eecSElaine Zhang
130cd74eecSElaine Zhangdescription: |
140cd74eecSElaine Zhang  The RK3568 clock controller generates the clock and also implements a
150cd74eecSElaine Zhang  reset controller for SoC peripherals.
160cd74eecSElaine Zhang  (examples: provide SCLK_UART1\PCLK_UART1 and SRST_P_UART1\SRST_S_UART1 for UART module)
170cd74eecSElaine Zhang  Each clock is assigned an identifier and client nodes can use this identifier
180cd74eecSElaine Zhang  to specify the clock which they consume. All available clocks are defined as
190cd74eecSElaine Zhang  preprocessor macros in the dt-bindings/clock/rk3568-cru.h headers and can be
200cd74eecSElaine Zhang  used in device tree sources.
210cd74eecSElaine Zhang
220cd74eecSElaine Zhangproperties:
230cd74eecSElaine Zhang  compatible:
240cd74eecSElaine Zhang    enum:
250cd74eecSElaine Zhang      - rockchip,rk3568-cru
260cd74eecSElaine Zhang      - rockchip,rk3568-pmucru
270cd74eecSElaine Zhang
280cd74eecSElaine Zhang  reg:
290cd74eecSElaine Zhang    maxItems: 1
300cd74eecSElaine Zhang
310cd74eecSElaine Zhang  "#clock-cells":
320cd74eecSElaine Zhang    const: 1
330cd74eecSElaine Zhang
340cd74eecSElaine Zhang  "#reset-cells":
350cd74eecSElaine Zhang    const: 1
360cd74eecSElaine Zhang
37b21445dbSPeter Geis  clocks:
38b21445dbSPeter Geis    maxItems: 1
39b21445dbSPeter Geis
40b21445dbSPeter Geis  clock-names:
41b21445dbSPeter Geis    const: xin24m
42b21445dbSPeter Geis
43b21445dbSPeter Geis  rockchip,grf:
44b21445dbSPeter Geis    $ref: /schemas/types.yaml#/definitions/phandle
45b21445dbSPeter Geis    description:
46b21445dbSPeter Geis      Phandle to the syscon managing the "general register files" (GRF),
47b21445dbSPeter Geis      if missing pll rates are not changeable, due to the missing pll
48b21445dbSPeter Geis      lock status.
49b21445dbSPeter Geis
500cd74eecSElaine Zhangrequired:
510cd74eecSElaine Zhang  - compatible
520cd74eecSElaine Zhang  - reg
530cd74eecSElaine Zhang  - "#clock-cells"
540cd74eecSElaine Zhang  - "#reset-cells"
550cd74eecSElaine Zhang
560cd74eecSElaine ZhangadditionalProperties: false
570cd74eecSElaine Zhang
580cd74eecSElaine Zhangexamples:
590cd74eecSElaine Zhang  # Clock Control Module node:
600cd74eecSElaine Zhang  - |
610cd74eecSElaine Zhang    pmucru: clock-controller@fdd00000 {
620cd74eecSElaine Zhang      compatible = "rockchip,rk3568-pmucru";
630cd74eecSElaine Zhang      reg = <0xfdd00000 0x1000>;
640cd74eecSElaine Zhang      #clock-cells = <1>;
650cd74eecSElaine Zhang      #reset-cells = <1>;
660cd74eecSElaine Zhang    };
670cd74eecSElaine Zhang  - |
680cd74eecSElaine Zhang    cru: clock-controller@fdd20000 {
690cd74eecSElaine Zhang      compatible = "rockchip,rk3568-cru";
700cd74eecSElaine Zhang      reg = <0xfdd20000 0x1000>;
710cd74eecSElaine Zhang      #clock-cells = <1>;
720cd74eecSElaine Zhang      #reset-cells = <1>;
730cd74eecSElaine Zhang    };
74