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