1*dc39d7faSAndreas Kemnade# SPDX-License-Identifier: GPL-2.0-only 2*dc39d7faSAndreas Kemnade%YAML 1.2 3*dc39d7faSAndreas Kemnade--- 4*dc39d7faSAndreas Kemnade$id: http://devicetree.org/schemas/clock/ti/ti,composite-clock.yaml# 5*dc39d7faSAndreas Kemnade$schema: http://devicetree.org/meta-schemas/core.yaml# 6*dc39d7faSAndreas Kemnade 7*dc39d7faSAndreas Kemnadetitle: Texas Instruments composite clock 8*dc39d7faSAndreas Kemnade 9*dc39d7faSAndreas Kemnademaintainers: 10*dc39d7faSAndreas Kemnade - Tero Kristo <kristo@kernel.org> 11*dc39d7faSAndreas Kemnade 12*dc39d7faSAndreas Kemnadedescription: | 13*dc39d7faSAndreas Kemnade *Deprecated design pattern: one node per clock* 14*dc39d7faSAndreas Kemnade 15*dc39d7faSAndreas Kemnade This binding assumes a register-mapped composite clock with multiple 16*dc39d7faSAndreas Kemnade different sub-types: 17*dc39d7faSAndreas Kemnade 18*dc39d7faSAndreas Kemnade a multiplexer clock with multiple input clock signals or parents, one 19*dc39d7faSAndreas Kemnade of which can be selected as output, this behaves exactly as [1]. 20*dc39d7faSAndreas Kemnade 21*dc39d7faSAndreas Kemnade an adjustable clock rate divider, this behaves exactly as [2]. 22*dc39d7faSAndreas Kemnade 23*dc39d7faSAndreas Kemnade a gating function which can be used to enable and disable the output 24*dc39d7faSAndreas Kemnade clock, this behaves exactly as [3]. 25*dc39d7faSAndreas Kemnade 26*dc39d7faSAndreas Kemnade The binding must provide a list of the component clocks that shall be 27*dc39d7faSAndreas Kemnade merged to this clock. The component clocks shall be of one of the 28*dc39d7faSAndreas Kemnade "ti,*composite*-clock" types. 29*dc39d7faSAndreas Kemnade 30*dc39d7faSAndreas Kemnade [1] Documentation/devicetree/bindings/clock/ti/ti,mux-clock.yaml 31*dc39d7faSAndreas Kemnade [2] Documentation/devicetree/bindings/clock/ti/ti,divider-clock.yaml 32*dc39d7faSAndreas Kemnade [3] Documentation/devicetree/bindings/clock/ti/ti,gate-clock.yaml 33*dc39d7faSAndreas Kemnade 34*dc39d7faSAndreas Kemnadeproperties: 35*dc39d7faSAndreas Kemnade compatible: 36*dc39d7faSAndreas Kemnade const: ti,composite-clock 37*dc39d7faSAndreas Kemnade 38*dc39d7faSAndreas Kemnade "#clock-cells": 39*dc39d7faSAndreas Kemnade const: 0 40*dc39d7faSAndreas Kemnade 41*dc39d7faSAndreas Kemnade clocks: true 42*dc39d7faSAndreas Kemnade 43*dc39d7faSAndreas Kemnade clock-output-names: 44*dc39d7faSAndreas Kemnade maxItems: 1 45*dc39d7faSAndreas Kemnade 46*dc39d7faSAndreas Kemnaderequired: 47*dc39d7faSAndreas Kemnade - compatible 48*dc39d7faSAndreas Kemnade - "#clock-cells" 49*dc39d7faSAndreas Kemnade - clocks 50*dc39d7faSAndreas Kemnade 51*dc39d7faSAndreas KemnadeadditionalProperties: false 52*dc39d7faSAndreas Kemnade 53*dc39d7faSAndreas Kemnadeexamples: 54*dc39d7faSAndreas Kemnade - | 55*dc39d7faSAndreas Kemnade bus { 56*dc39d7faSAndreas Kemnade #address-cells = <1>; 57*dc39d7faSAndreas Kemnade #size-cells = <0>; 58*dc39d7faSAndreas Kemnade 59*dc39d7faSAndreas Kemnade usb_l4_gate_ick: clock-controller@a10 { 60*dc39d7faSAndreas Kemnade #clock-cells = <0>; 61*dc39d7faSAndreas Kemnade compatible = "ti,composite-gate-clock"; 62*dc39d7faSAndreas Kemnade clocks = <&l4_ick>; 63*dc39d7faSAndreas Kemnade ti,bit-shift = <5>; 64*dc39d7faSAndreas Kemnade reg = <0x0a10>; 65*dc39d7faSAndreas Kemnade }; 66*dc39d7faSAndreas Kemnade 67*dc39d7faSAndreas Kemnade usb_l4_div_ick: clock-controller@a40 { 68*dc39d7faSAndreas Kemnade #clock-cells = <0>; 69*dc39d7faSAndreas Kemnade compatible = "ti,composite-divider-clock"; 70*dc39d7faSAndreas Kemnade clocks = <&l4_ick>; 71*dc39d7faSAndreas Kemnade ti,bit-shift = <4>; 72*dc39d7faSAndreas Kemnade ti,max-div = <1>; 73*dc39d7faSAndreas Kemnade reg = <0x0a40>; 74*dc39d7faSAndreas Kemnade ti,index-starts-at-one; 75*dc39d7faSAndreas Kemnade }; 76*dc39d7faSAndreas Kemnade }; 77*dc39d7faSAndreas Kemnade 78*dc39d7faSAndreas Kemnade clock-controller { 79*dc39d7faSAndreas Kemnade #clock-cells = <0>; 80*dc39d7faSAndreas Kemnade compatible = "ti,composite-clock"; 81*dc39d7faSAndreas Kemnade clocks = <&usb_l4_gate_ick>, <&usb_l4_div_ick>; 82*dc39d7faSAndreas Kemnade }; 83