1*00d5d031SMartin Povišer# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*00d5d031SMartin Povišer%YAML 1.2 3*00d5d031SMartin Povišer--- 4*00d5d031SMartin Povišer$id: http://devicetree.org/schemas/clock/apple,nco.yaml# 5*00d5d031SMartin Povišer$schema: http://devicetree.org/meta-schemas/core.yaml# 6*00d5d031SMartin Povišer 7*00d5d031SMartin Povišertitle: Apple SoCs' NCO block 8*00d5d031SMartin Povišer 9*00d5d031SMartin Povišermaintainers: 10*00d5d031SMartin Povišer - Martin Povišer <povik+lin@cutebit.org> 11*00d5d031SMartin Povišer 12*00d5d031SMartin Povišerdescription: | 13*00d5d031SMartin Povišer The NCO (Numerically Controlled Oscillator) block found on Apple SoCs 14*00d5d031SMartin Povišer such as the t8103 (M1) is a programmable clock generator performing 15*00d5d031SMartin Povišer fractional division of a high frequency input clock. 16*00d5d031SMartin Povišer 17*00d5d031SMartin Povišer It carries a number of independent channels and is typically used for 18*00d5d031SMartin Povišer generation of audio bitclocks. 19*00d5d031SMartin Povišer 20*00d5d031SMartin Povišerproperties: 21*00d5d031SMartin Povišer compatible: 22*00d5d031SMartin Povišer items: 23*00d5d031SMartin Povišer - enum: 24*00d5d031SMartin Povišer - apple,t6000-nco 25*00d5d031SMartin Povišer - apple,t8103-nco 26*00d5d031SMartin Povišer - const: apple,nco 27*00d5d031SMartin Povišer 28*00d5d031SMartin Povišer clocks: 29*00d5d031SMartin Povišer description: 30*00d5d031SMartin Povišer Specifies the reference clock from which the output clocks 31*00d5d031SMartin Povišer are derived through fractional division. 32*00d5d031SMartin Povišer maxItems: 1 33*00d5d031SMartin Povišer 34*00d5d031SMartin Povišer '#clock-cells': 35*00d5d031SMartin Povišer const: 1 36*00d5d031SMartin Povišer 37*00d5d031SMartin Povišer reg: 38*00d5d031SMartin Povišer maxItems: 1 39*00d5d031SMartin Povišer 40*00d5d031SMartin Povišerrequired: 41*00d5d031SMartin Povišer - compatible 42*00d5d031SMartin Povišer - clocks 43*00d5d031SMartin Povišer - '#clock-cells' 44*00d5d031SMartin Povišer - reg 45*00d5d031SMartin Povišer 46*00d5d031SMartin PovišeradditionalProperties: false 47*00d5d031SMartin Povišer 48*00d5d031SMartin Povišerexamples: 49*00d5d031SMartin Povišer - | 50*00d5d031SMartin Povišer nco_clkref: clock-ref { 51*00d5d031SMartin Povišer compatible = "fixed-clock"; 52*00d5d031SMartin Povišer #clock-cells = <0>; 53*00d5d031SMartin Povišer clock-frequency = <900000000>; 54*00d5d031SMartin Povišer clock-output-names = "nco-ref"; 55*00d5d031SMartin Povišer }; 56*00d5d031SMartin Povišer 57*00d5d031SMartin Povišer nco: clock-controller@23b044000 { 58*00d5d031SMartin Povišer compatible = "apple,t8103-nco", "apple,nco"; 59*00d5d031SMartin Povišer reg = <0x3b044000 0x14000>; 60*00d5d031SMartin Povišer #clock-cells = <1>; 61*00d5d031SMartin Povišer clocks = <&nco_clkref>; 62*00d5d031SMartin Povišer }; 63