100d5d031SMartin Povišer# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 200d5d031SMartin Povišer%YAML 1.2 300d5d031SMartin Povišer--- 400d5d031SMartin Povišer$id: http://devicetree.org/schemas/clock/apple,nco.yaml# 500d5d031SMartin Povišer$schema: http://devicetree.org/meta-schemas/core.yaml# 600d5d031SMartin Povišer 700d5d031SMartin Povišertitle: Apple SoCs' NCO block 800d5d031SMartin Povišer 900d5d031SMartin Povišermaintainers: 1000d5d031SMartin Povišer - Martin Povišer <povik+lin@cutebit.org> 1100d5d031SMartin Povišer 1200d5d031SMartin Povišerdescription: | 1300d5d031SMartin Povišer The NCO (Numerically Controlled Oscillator) block found on Apple SoCs 1400d5d031SMartin Povišer such as the t8103 (M1) is a programmable clock generator performing 1500d5d031SMartin Povišer fractional division of a high frequency input clock. 1600d5d031SMartin Povišer 1700d5d031SMartin Povišer It carries a number of independent channels and is typically used for 1800d5d031SMartin Povišer generation of audio bitclocks. 1900d5d031SMartin Povišer 2000d5d031SMartin Povišerproperties: 2100d5d031SMartin Povišer compatible: 2200d5d031SMartin Povišer items: 2300d5d031SMartin Povišer - enum: 2400d5d031SMartin Povišer - apple,t6000-nco 2500d5d031SMartin Povišer - apple,t8103-nco 26*b058e9d8SJanne Grunau - apple,t8112-nco 2700d5d031SMartin Povišer - const: apple,nco 2800d5d031SMartin Povišer 2900d5d031SMartin Povišer clocks: 3000d5d031SMartin Povišer description: 3100d5d031SMartin Povišer Specifies the reference clock from which the output clocks 3200d5d031SMartin Povišer are derived through fractional division. 3300d5d031SMartin Povišer maxItems: 1 3400d5d031SMartin Povišer 3500d5d031SMartin Povišer '#clock-cells': 3600d5d031SMartin Povišer const: 1 3700d5d031SMartin Povišer 3800d5d031SMartin Povišer reg: 3900d5d031SMartin Povišer maxItems: 1 4000d5d031SMartin Povišer 4100d5d031SMartin Povišerrequired: 4200d5d031SMartin Povišer - compatible 4300d5d031SMartin Povišer - clocks 4400d5d031SMartin Povišer - '#clock-cells' 4500d5d031SMartin Povišer - reg 4600d5d031SMartin Povišer 4700d5d031SMartin PovišeradditionalProperties: false 4800d5d031SMartin Povišer 4900d5d031SMartin Povišerexamples: 5000d5d031SMartin Povišer - | 5100d5d031SMartin Povišer nco_clkref: clock-ref { 5200d5d031SMartin Povišer compatible = "fixed-clock"; 5300d5d031SMartin Povišer #clock-cells = <0>; 5400d5d031SMartin Povišer clock-frequency = <900000000>; 5500d5d031SMartin Povišer clock-output-names = "nco-ref"; 5600d5d031SMartin Povišer }; 5700d5d031SMartin Povišer 5800d5d031SMartin Povišer nco: clock-controller@23b044000 { 5900d5d031SMartin Povišer compatible = "apple,t8103-nco", "apple,nco"; 6000d5d031SMartin Povišer reg = <0x3b044000 0x14000>; 6100d5d031SMartin Povišer #clock-cells = <1>; 6200d5d031SMartin Povišer clocks = <&nco_clkref>; 6300d5d031SMartin Povišer }; 64