1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/clock/cirrus,cs2000-cp.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Binding CIRRUS LOGIC Fractional-N Clock Synthesizer & Clock Multiplier 8 9maintainers: 10 - Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> 11 12description: | 13 The CS2000-CP is an extremely versatile system clocking device that 14 utilizes a programmable phase lock loop. 15 16 Link: https://www.cirrus.com/products/cs2000/ 17 18properties: 19 compatible: 20 enum: 21 - cirrus,cs2000-cp 22 23 clocks: 24 description: 25 Common clock binding for CLK_IN, XTI/REF_CLK 26 minItems: 2 27 maxItems: 2 28 29 clock-names: 30 items: 31 - const: clk_in 32 - const: ref_clk 33 34 '#clock-cells': 35 const: 0 36 37 reg: 38 maxItems: 1 39 40 cirrus,aux-output-source: 41 description: 42 Specifies the function of the auxiliary clock output pin 43 $ref: /schemas/types.yaml#/definitions/uint32 44 enum: 45 - 0 # CS2000CP_AUX_OUTPUT_REF_CLK: ref_clk input 46 - 1 # CS2000CP_AUX_OUTPUT_CLK_IN: clk_in input 47 - 2 # CS2000CP_AUX_OUTPUT_CLK_OUT: clk_out output 48 - 3 # CS2000CP_AUX_OUTPUT_PLL_LOCK: pll lock status 49 default: 0 50 51 cirrus,clock-skip: 52 description: 53 This mode allows the PLL to maintain lock even when CLK_IN 54 has missing pulses for up to 20 ms. 55 $ref: /schemas/types.yaml#/definitions/flag 56 57 cirrus,dynamic-mode: 58 description: 59 In dynamic mode, the CLK_IN input is used to drive the 60 digital PLL of the silicon. 61 If not given, the static mode shall be used to derive the 62 output signal directly from the REF_CLK input. 63 $ref: /schemas/types.yaml#/definitions/flag 64 65required: 66 - compatible 67 - reg 68 - clocks 69 - clock-names 70 - '#clock-cells' 71 72additionalProperties: false 73 74examples: 75 - | 76 #include <dt-bindings/clock/cirrus,cs2000-cp.h> 77 78 i2c@0 { 79 reg = <0x0 0x100>; 80 #address-cells = <1>; 81 #size-cells = <0>; 82 83 clock-controller@4f { 84 #clock-cells = <0>; 85 compatible = "cirrus,cs2000-cp"; 86 reg = <0x4f>; 87 clocks = <&rcar_sound 0>, <&x12_clk>; 88 clock-names = "clk_in", "ref_clk"; 89 cirrus,aux-output-source = <CS2000CP_AUX_OUTPUT_CLK_OUT>; 90 }; 91 }; 92