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