Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: clock: ti: Convert fixed-factor-clock to yaml

This uses the ti,autoidle.yaml for clock autoidle support. Clean up the example
to meet the current standards.

Add the creator of the original binding as a maintainer.

Signed-off-by: Sukrut Bellary <sbellary@baylibre.com>
Link: https://lore.kernel.org/r/20250516081612.767559-3-sbellary@baylibre.com
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>

authored by

Sukrut Bellary and committed by
Stephen Boyd
a7953b62 5ffe2d2f

+76 -42
-42
Documentation/devicetree/bindings/clock/ti/fixed-factor-clock.txt
··· 1 - Binding for TI fixed factor rate clock sources. 2 - 3 - This binding uses the common clock binding[1], and also uses the autoidle 4 - support from TI autoidle clock [2]. 5 - 6 - [1] Documentation/devicetree/bindings/clock/clock-bindings.txt 7 - [2] Documentation/devicetree/bindings/clock/ti/autoidle.txt 8 - 9 - Required properties: 10 - - compatible : shall be "ti,fixed-factor-clock". 11 - - #clock-cells : from common clock binding; shall be set to 0. 12 - - ti,clock-div: fixed divider. 13 - - ti,clock-mult: fixed multiplier. 14 - - clocks: parent clock. 15 - 16 - Optional properties: 17 - - clock-output-names : from common clock binding. 18 - - ti,autoidle-shift: bit shift of the autoidle enable bit for the clock, 19 - see [2] 20 - - reg: offset for the autoidle register of this clock, see [2] 21 - - ti,invert-autoidle-bit: autoidle is enabled by setting the bit to 0, see [2] 22 - - ti,set-rate-parent: clk_set_rate is propagated to parent 23 - 24 - Example: 25 - clock { 26 - compatible = "ti,fixed-factor-clock"; 27 - clocks = <&parentclk>; 28 - #clock-cells = <0>; 29 - ti,clock-div = <2>; 30 - ti,clock-mult = <1>; 31 - }; 32 - 33 - dpll_usb_clkdcoldo_ck: dpll_usb_clkdcoldo_ck { 34 - #clock-cells = <0>; 35 - compatible = "ti,fixed-factor-clock"; 36 - clocks = <&dpll_usb_ck>; 37 - ti,clock-div = <1>; 38 - ti,autoidle-shift = <8>; 39 - reg = <0x01b4>; 40 - ti,clock-mult = <1>; 41 - ti,invert-autoidle-bit; 42 - };
+76
Documentation/devicetree/bindings/clock/ti/ti,fixed-factor-clock.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/clock/ti/ti,fixed-factor-clock.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: TI fixed factor rate clock sources 8 + 9 + maintainers: 10 + - Tero Kristo <kristo@kernel.org> 11 + - Sukrut Bellary <sbellary@baylibre.com> 12 + 13 + description: 14 + This consists of a divider and a multiplier used to generate a fixed rate 15 + clock. This also uses the autoidle support from TI autoidle clock. 16 + 17 + allOf: 18 + - $ref: ti,autoidle.yaml# 19 + 20 + properties: 21 + compatible: 22 + const: ti,fixed-factor-clock 23 + 24 + "#clock-cells": 25 + const: 0 26 + 27 + reg: 28 + maxItems: 1 29 + 30 + ti,clock-div: 31 + $ref: /schemas/types.yaml#/definitions/uint32 32 + description: Fixed divider 33 + minimum: 1 34 + 35 + ti,clock-mult: 36 + $ref: /schemas/types.yaml#/definitions/uint32 37 + description: Fixed multiplier 38 + minimum: 1 39 + 40 + clocks: 41 + maxItems: 1 42 + 43 + clock-output-names: 44 + maxItems: 1 45 + 46 + ti,set-rate-parent: 47 + description: 48 + Propagate to parent clock 49 + type: boolean 50 + 51 + required: 52 + - compatible 53 + - clocks 54 + - "#clock-cells" 55 + - ti,clock-mult 56 + - ti,clock-div 57 + 58 + unevaluatedProperties: false 59 + 60 + examples: 61 + - | 62 + bus{ 63 + #address-cells = <1>; 64 + #size-cells = <0>; 65 + 66 + clock@1b4 { 67 + compatible = "ti,fixed-factor-clock"; 68 + reg = <0x1b4>; 69 + clocks = <&dpll_usb_ck>; 70 + #clock-cells = <0>; 71 + ti,clock-mult = <1>; 72 + ti,clock-div = <1>; 73 + ti,autoidle-shift = <8>; 74 + ti,invert-autoidle-bit; 75 + }; 76 + };