| Binding for a Clockgen hardware block found on |
| certain STMicroelectronics consumer electronics SoC devices. |
| |
| A Clockgen node can contain pll, diviser or multiplexer nodes. |
| |
| We will find only the base address of the Clockgen, this base |
| address is common of all subnode. |
| |
| clockgen_node { |
| reg = <>; |
| |
| pll_node { |
| ... |
| }; |
| |
| prediv_node { |
| ... |
| }; |
| |
| divmux_node { |
| ... |
| }; |
| |
| quadfs_node { |
| ... |
| }; |
| |
| mux_node { |
| ... |
| }; |
| |
| vcc_node { |
| ... |
| }; |
| |
| flexgen_node { |
| ... |
| }; |
| ... |
| }; |
| |
| This binding uses the common clock binding[1]. |
| Each subnode should use the binding discribe in [2]..[7] |
| |
| [1] Documentation/devicetree/bindings/clock/clock-bindings.txt |
| [2] Documentation/devicetree/bindings/clock/st,clkgen-divmux.txt |
| [3] Documentation/devicetree/bindings/clock/st,clkgen-mux.txt |
| [4] Documentation/devicetree/bindings/clock/st,clkgen-pll.txt |
| [5] Documentation/devicetree/bindings/clock/st,clkgen-prediv.txt |
| [6] Documentation/devicetree/bindings/clock/st,vcc.txt |
| [7] Documentation/devicetree/bindings/clock/st,quadfs.txt |
| [8] Documentation/devicetree/bindings/clock/st,flexgen.txt |
| |
| |
| Required properties: |
| - reg : A Base address and length of the register set. |
| |
| Example: |
| |
| clockgen-a@fee62000 { |
| |
| reg = <0xfee62000 0xb48>; |
| |
| clk_s_a0_pll: clk-s-a0-pll { |
| #clock-cells = <1>; |
| compatible = "st,clkgena-plls-c65"; |
| |
| clocks = <&clk-sysin>; |
| |
| clock-output-names = "clk-s-a0-pll0-hs", |
| "clk-s-a0-pll0-ls", |
| "clk-s-a0-pll1"; |
| }; |
| |
| clk_s_a0_osc_prediv: clk-s-a0-osc-prediv { |
| #clock-cells = <0>; |
| compatible = "st,clkgena-prediv-c65", |
| "st,clkgena-prediv"; |
| |
| clocks = <&clk_sysin>; |
| |
| clock-output-names = "clk-s-a0-osc-prediv"; |
| }; |
| |
| clk_s_a0_hs: clk-s-a0-hs { |
| #clock-cells = <1>; |
| compatible = "st,clkgena-divmux-c65-hs", |
| "st,clkgena-divmux"; |
| |
| clocks = <&clk-s_a0_osc_prediv>, |
| <&clk-s_a0_pll 0>, /* pll0 hs */ |
| <&clk-s_a0_pll 2>; /* pll1 */ |
| |
| clock-output-names = "clk-s-fdma-0", |
| "clk-s-fdma-1", |
| ""; /* clk-s-jit-sense */ |
| /* fourth output unused */ |
| }; |
| }; |
| |