Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/clock/rockchip,rk3288-cru.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Rockchip RK3288 Clock and Reset Unit (CRU)
0008 
0009 maintainers:
0010   - Elaine Zhang <zhangqing@rock-chips.com>
0011   - Heiko Stuebner <heiko@sntech.de>
0012 
0013 description: |
0014   The RK3288 clock controller generates and supplies clocks to various
0015   controllers within the SoC and also implements a reset controller for SoC
0016   peripherals.
0017 
0018   A revision of this SoC is available: rk3288w. The clock tree is a bit
0019   different so another dt-compatible is available. Noticed that it is only
0020   setting the difference but there is no automatic revision detection. This
0021   should be performed by boot loaders.
0022 
0023   Each clock is assigned an identifier and client nodes can use this identifier
0024   to specify the clock which they consume. All available clocks are defined as
0025   preprocessor macros in the dt-bindings/clock/rk3288-cru.h headers and can be
0026   used in device tree sources. Similar macros exist for the reset sources in
0027   these files.
0028 
0029   There are several clocks that are generated outside the SoC. It is expected
0030   that they are defined using standard clock bindings with following
0031   clock-output-names:
0032     - "xin24m"      - crystal input               - required,
0033     - "xin32k"      - rtc clock                   - optional,
0034     - "ext_i2s"     - external I2S clock          - optional,
0035     - "ext_hsadc"   - external HSADC clock        - optional,
0036     - "ext_edp_24m" - external display port clock - optional,
0037     - "ext_vip"     - external VIP clock          - optional,
0038     - "ext_isp"     - external ISP clock          - optional,
0039     - "ext_jtag"    - external JTAG clock         - optional
0040 
0041 properties:
0042   compatible:
0043     enum:
0044       - rockchip,rk3288-cru
0045       - rockchip,rk3288w-cru
0046 
0047   reg:
0048     maxItems: 1
0049 
0050   "#clock-cells":
0051     const: 1
0052 
0053   "#reset-cells":
0054     const: 1
0055 
0056   clocks:
0057     maxItems: 1
0058 
0059   clock-names:
0060     const: xin24m
0061 
0062   rockchip,grf:
0063     $ref: /schemas/types.yaml#/definitions/phandle
0064     description:
0065       Phandle to the syscon managing the "general register files" (GRF),
0066       if missing pll rates are not changeable, due to the missing pll
0067       lock status.
0068 
0069 required:
0070   - compatible
0071   - reg
0072   - "#clock-cells"
0073   - "#reset-cells"
0074 
0075 additionalProperties: false
0076 
0077 examples:
0078   - |
0079     cru: clock-controller@ff760000 {
0080       compatible = "rockchip,rk3288-cru";
0081       reg = <0xff760000 0x1000>;
0082       rockchip,grf = <&grf>;
0083       #clock-cells = <1>;
0084       #reset-cells = <1>;
0085     };