| Binding for TZ1090 clock deleter. |
| |
| This binding uses the common clock binding[1]. The TZ1090 clock deleters can be |
| configured to delete a certain fraction of the input clock pulses. For a |
| configuration field of "width" bits with the value "delete_cycles", |
| delete_cycles cycles are deleted out of every 1 << width cycles, so the output |
| frequency is: |
| |
| f_out = f_in * ((1 << width) - config) / (1 << width) |
| |
| [1] Documentation/devicetree/bindings/clock/clock-bindings.txt |
| |
| Required properties: |
| - compatible : Shall be "img,tz1090-deleter". |
| - #clock-cells : From common clock binding; shall be set to 0. |
| - reg : Address of configuration register. |
| - shift : Shift of config value field in configuration register. |
| - width : Width of config value field in configuration register. |
| - clocks : From common clock binding. |
| |
| Required source clocks: |
| - 0 : Reference clock which is deleted to produce the output |
| clock (doesn't have to be named). |
| |
| Optional properties: |
| - clock-output-names : From common clock binding. |
| |
| Example: |
| meta_clkdelete { |
| compatible = "img,tz1090-deleter"; |
| #clock-cells = <0>; |
| clocks = <&sys_clk_x2_undeleted>; |
| reg = <0x0200591c 0x4>; /* CR_TOP_META_CLKDELETE */ |
| shift = <0>; /* CR_TOP_META_CLKDELETE */ |
| width = <12>; |
| clock-output-names = "meta"; |
| }; |