mirror of
https://github.com/torvalds/linux.git
synced 2026-04-19 23:34:00 -04:00
Several TI SoC clock bindings were marked as work-in-progress / unstable
between 2013-2016, for example in commit f60b1ea5ea ("CLK: TI: add
support for gate clock"). It was enough of time to consider them stable
and expect usual ABI rules.
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Stephen Boyd <sboyd@kernel.org>
Acked-by: Rob Herring <robh@kernel.org>
Acked-by: Tony Lindgren <tony@atomide.com>
Link: https://lore.kernel.org/r/20240224091236.10146-2-krzysztof.kozlowski@linaro.org
Signed-off-by: Rob Herring <robh@kernel.org>
56 lines
1.6 KiB
Plaintext
56 lines
1.6 KiB
Plaintext
Binding for TI composite clock.
|
|
|
|
This binding uses the common clock binding[1]. It assumes a
|
|
register-mapped composite clock with multiple different sub-types;
|
|
|
|
a multiplexer clock with multiple input clock signals or parents, one
|
|
of which can be selected as output, this behaves exactly as [2]
|
|
|
|
an adjustable clock rate divider, this behaves exactly as [3]
|
|
|
|
a gating function which can be used to enable and disable the output
|
|
clock, this behaves exactly as [4]
|
|
|
|
The binding must provide a list of the component clocks that shall be
|
|
merged to this clock. The component clocks shall be of one of the
|
|
"ti,*composite*-clock" types.
|
|
|
|
[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
|
|
[2] Documentation/devicetree/bindings/clock/ti/mux.txt
|
|
[3] Documentation/devicetree/bindings/clock/ti/divider.txt
|
|
[4] Documentation/devicetree/bindings/clock/ti/gate.txt
|
|
|
|
Required properties:
|
|
- compatible : shall be: "ti,composite-clock"
|
|
- clocks : link phandles of component clocks
|
|
- #clock-cells : from common clock binding; shall be set to 0.
|
|
|
|
Optional properties:
|
|
- clock-output-names : from common clock binding.
|
|
|
|
Examples:
|
|
|
|
usb_l4_gate_ick: usb_l4_gate_ick {
|
|
#clock-cells = <0>;
|
|
compatible = "ti,composite-interface-clock";
|
|
clocks = <&l4_ick>;
|
|
ti,bit-shift = <5>;
|
|
reg = <0x0a10>;
|
|
};
|
|
|
|
usb_l4_div_ick: usb_l4_div_ick {
|
|
#clock-cells = <0>;
|
|
compatible = "ti,composite-divider-clock";
|
|
clocks = <&l4_ick>;
|
|
ti,bit-shift = <4>;
|
|
ti,max-div = <1>;
|
|
reg = <0x0a40>;
|
|
ti,index-starts-at-one;
|
|
};
|
|
|
|
usb_l4_ick: usb_l4_ick {
|
|
#clock-cells = <0>;
|
|
compatible = "ti,composite-clock";
|
|
clocks = <&usb_l4_gate_ick>, <&usb_l4_div_ick>;
|
|
};
|