xref: /linux/Documentation/devicetree/bindings/clock/rockchip,rk3368-cru.yaml (revision 4f2c0a4acffbec01079c28f839422e64ddeff004)
1*fffa0fa4SJohan Jonker# SPDX-License-Identifier: (GPL-2.0+ OR MIT)
232a214cdSJohan Jonker%YAML 1.2
332a214cdSJohan Jonker---
432a214cdSJohan Jonker$id: http://devicetree.org/schemas/clock/rockchip,rk3368-cru.yaml#
532a214cdSJohan Jonker$schema: http://devicetree.org/meta-schemas/core.yaml#
632a214cdSJohan Jonker
732a214cdSJohan Jonkertitle: Rockchip RK3368 Clock and Reset Unit (CRU)
832a214cdSJohan Jonker
932a214cdSJohan Jonkermaintainers:
1032a214cdSJohan Jonker  - Elaine Zhang <zhangqing@rock-chips.com>
1132a214cdSJohan Jonker  - Heiko Stuebner <heiko@sntech.de>
1232a214cdSJohan Jonker
1332a214cdSJohan Jonkerdescription: |
1432a214cdSJohan Jonker  The RK3368 clock controller generates and supplies clocks to various
1532a214cdSJohan Jonker  controllers within the SoC and also implements a reset controller for SoC
1632a214cdSJohan Jonker  peripherals.
1732a214cdSJohan Jonker  Each clock is assigned an identifier and client nodes can use this identifier
1832a214cdSJohan Jonker  to specify the clock which they consume. All available clocks are defined as
1932a214cdSJohan Jonker  preprocessor macros in the dt-bindings/clock/rk3368-cru.h headers and can be
2032a214cdSJohan Jonker  used in device tree sources. Similar macros exist for the reset sources in
2132a214cdSJohan Jonker  these files.
2232a214cdSJohan Jonker  There are several clocks that are generated outside the SoC. It is expected
2332a214cdSJohan Jonker  that they are defined using standard clock bindings with following
2432a214cdSJohan Jonker  clock-output-names:
2532a214cdSJohan Jonker    - "xin24m"     - crystal input                          - required
2632a214cdSJohan Jonker    - "xin32k"     - rtc clock                              - optional
2732a214cdSJohan Jonker    - "ext_i2s"    - external I2S clock                     - optional
2832a214cdSJohan Jonker    - "ext_gmac"   - external GMAC clock                    - optional
2932a214cdSJohan Jonker    - "ext_hsadc"  - external HSADC clock                   - optional
3032a214cdSJohan Jonker    - "ext_isp"    - external ISP clock                     - optional
3132a214cdSJohan Jonker    - "ext_jtag"   - external JTAG clock                    - optional
3232a214cdSJohan Jonker    - "ext_vip"    - external VIP clock                     - optional
3332a214cdSJohan Jonker    - "usbotg_out" - output clock of the pll in the otg phy
3432a214cdSJohan Jonker
3532a214cdSJohan Jonkerproperties:
3632a214cdSJohan Jonker  compatible:
3732a214cdSJohan Jonker    enum:
3832a214cdSJohan Jonker      - rockchip,rk3368-cru
3932a214cdSJohan Jonker
4032a214cdSJohan Jonker  reg:
4132a214cdSJohan Jonker    maxItems: 1
4232a214cdSJohan Jonker
4332a214cdSJohan Jonker  "#clock-cells":
4432a214cdSJohan Jonker    const: 1
4532a214cdSJohan Jonker
4632a214cdSJohan Jonker  "#reset-cells":
4732a214cdSJohan Jonker    const: 1
4832a214cdSJohan Jonker
4932a214cdSJohan Jonker  clocks:
5032a214cdSJohan Jonker    maxItems: 1
5132a214cdSJohan Jonker
5232a214cdSJohan Jonker  clock-names:
5332a214cdSJohan Jonker    const: xin24m
5432a214cdSJohan Jonker
5532a214cdSJohan Jonker  rockchip,grf:
5632a214cdSJohan Jonker    $ref: /schemas/types.yaml#/definitions/phandle
5732a214cdSJohan Jonker    description:
5832a214cdSJohan Jonker      Phandle to the syscon managing the "general register files" (GRF),
5932a214cdSJohan Jonker      if missing pll rates are not changeable, due to the missing pll
6032a214cdSJohan Jonker      lock status.
6132a214cdSJohan Jonker
6232a214cdSJohan Jonkerrequired:
6332a214cdSJohan Jonker  - compatible
6432a214cdSJohan Jonker  - reg
6532a214cdSJohan Jonker  - "#clock-cells"
6632a214cdSJohan Jonker  - "#reset-cells"
6732a214cdSJohan Jonker
6832a214cdSJohan JonkeradditionalProperties: false
6932a214cdSJohan Jonker
7032a214cdSJohan Jonkerexamples:
7132a214cdSJohan Jonker  - |
7232a214cdSJohan Jonker    cru: clock-controller@ff760000 {
7332a214cdSJohan Jonker      compatible = "rockchip,rk3368-cru";
7432a214cdSJohan Jonker      reg = <0xff760000 0x1000>;
7532a214cdSJohan Jonker      rockchip,grf = <&grf>;
7632a214cdSJohan Jonker      #clock-cells = <1>;
7732a214cdSJohan Jonker      #reset-cells = <1>;
7832a214cdSJohan Jonker    };
79