18c2ecf20Sopenharmony_ciBinding for Texas Instruments APLL clock.
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciBinding status: Unstable - ABI compatibility may be broken in the future
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ciThis binding uses the common clock binding[1].  It assumes a
68c2ecf20Sopenharmony_ciregister-mapped APLL with usually two selectable input clocks
78c2ecf20Sopenharmony_ci(reference clock and bypass clock), with analog phase locked
88c2ecf20Sopenharmony_ciloop logic for multiplying the input clock to a desired output
98c2ecf20Sopenharmony_ciclock. This clock also typically supports different operation
108c2ecf20Sopenharmony_cimodes (locked, low power stop etc.) APLL mostly behaves like
118c2ecf20Sopenharmony_cia subtype of a DPLL [2], although a simplified one at that.
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ci[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
148c2ecf20Sopenharmony_ci[2] Documentation/devicetree/bindings/clock/ti/dpll.txt
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ciRequired properties:
178c2ecf20Sopenharmony_ci- compatible : shall be "ti,dra7-apll-clock" or "ti,omap2-apll-clock"
188c2ecf20Sopenharmony_ci- #clock-cells : from common clock binding; shall be set to 0.
198c2ecf20Sopenharmony_ci- clocks : link phandles of parent clocks (clk-ref and clk-bypass)
208c2ecf20Sopenharmony_ci- reg : address and length of the register set for controlling the APLL.
218c2ecf20Sopenharmony_ci  It contains the information of registers in the following order:
228c2ecf20Sopenharmony_ci	"control" - contains the control register offset
238c2ecf20Sopenharmony_ci	"idlest" - contains the idlest register offset
248c2ecf20Sopenharmony_ci	"autoidle" - contains the autoidle register offset (OMAP2 only)
258c2ecf20Sopenharmony_ci- ti,clock-frequency : static clock frequency for the clock (OMAP2 only)
268c2ecf20Sopenharmony_ci- ti,idlest-shift : bit-shift for the idlest field (OMAP2 only)
278c2ecf20Sopenharmony_ci- ti,bit-shift : bit-shift for enable and autoidle fields (OMAP2 only)
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ciExamples:
308c2ecf20Sopenharmony_ci	apll_pcie_ck: apll_pcie_ck {
318c2ecf20Sopenharmony_ci		#clock-cells = <0>;
328c2ecf20Sopenharmony_ci		clocks = <&apll_pcie_in_clk_mux>, <&dpll_pcie_ref_ck>;
338c2ecf20Sopenharmony_ci		reg = <0x021c>, <0x0220>;
348c2ecf20Sopenharmony_ci		compatible = "ti,dra7-apll-clock";
358c2ecf20Sopenharmony_ci	};
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ci	apll96_ck: apll96_ck {
388c2ecf20Sopenharmony_ci		#clock-cells = <0>;
398c2ecf20Sopenharmony_ci		compatible = "ti,omap2-apll-clock";
408c2ecf20Sopenharmony_ci		clocks = <&sys_ck>;
418c2ecf20Sopenharmony_ci		ti,bit-shift = <2>;
428c2ecf20Sopenharmony_ci		ti,idlest-shift = <8>;
438c2ecf20Sopenharmony_ci		ti,clock-frequency = <96000000>;
448c2ecf20Sopenharmony_ci		reg = <0x0500>, <0x0530>, <0x0520>;
458c2ecf20Sopenharmony_ci	};
46