162306a36Sopenharmony_ciBinding for Texas Instruments autoidle clock.
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciBinding status: Unstable - ABI compatibility may be broken in the future
462306a36Sopenharmony_ci
562306a36Sopenharmony_ciThis binding uses the common clock binding[1]. It assumes a register mapped
662306a36Sopenharmony_ciclock which can be put to idle automatically by hardware based on the usage
762306a36Sopenharmony_ciand a configuration bit setting. Autoidle clock is never an individual
862306a36Sopenharmony_ciclock, it is always a derivative of some basic clock like a gate, divider,
962306a36Sopenharmony_cior fixed-factor.
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci[1] Documentation/devicetree/bindings/clock/clock-bindings.txt
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ciRequired properties:
1462306a36Sopenharmony_ci- reg : offset for the register controlling the autoidle
1562306a36Sopenharmony_ci- ti,autoidle-shift : bit shift of the autoidle enable bit
1662306a36Sopenharmony_ci- ti,invert-autoidle-bit : autoidle is enabled by setting the bit to 0
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ciExamples:
1962306a36Sopenharmony_ci	dpll_core_m4_ck: dpll_core_m4_ck {
2062306a36Sopenharmony_ci		#clock-cells = <0>;
2162306a36Sopenharmony_ci		compatible = "ti,divider-clock";
2262306a36Sopenharmony_ci		clocks = <&dpll_core_x2_ck>;
2362306a36Sopenharmony_ci		ti,max-div = <31>;
2462306a36Sopenharmony_ci		ti,autoidle-shift = <8>;
2562306a36Sopenharmony_ci		reg = <0x2d38>;
2662306a36Sopenharmony_ci		ti,index-starts-at-one;
2762306a36Sopenharmony_ci		ti,invert-autoidle-bit;
2862306a36Sopenharmony_ci	};
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci	dpll_usb_clkdcoldo_ck: dpll_usb_clkdcoldo_ck {
3162306a36Sopenharmony_ci		#clock-cells = <0>;
3262306a36Sopenharmony_ci		compatible = "ti,fixed-factor-clock";
3362306a36Sopenharmony_ci		clocks = <&dpll_usb_ck>;
3462306a36Sopenharmony_ci		ti,clock-div = <1>;
3562306a36Sopenharmony_ci		ti,autoidle-shift = <8>;
3662306a36Sopenharmony_ci		reg = <0x01b4>;
3762306a36Sopenharmony_ci		ti,clock-mult = <1>;
3862306a36Sopenharmony_ci		ti,invert-autoidle-bit;
3962306a36Sopenharmony_ci	};
40