[PATCH 3/3] Documentation: add Actions S900 clock bindings
From: Manivannan Sadhasivam <hidden>
Date: 2017-11-04 09:28:41
Also in:
linux-clk, linux-devicetree, lkml
On Wed, Nov 01, 2017 at 07:04:48PM -0500, Rob Herring wrote:
On Wed, Nov 01, 2017 at 01:24:23AM +0530, Manivannan Sadhasivam wrote:quoted
This patch adds clock bindings for Actions Semi S900 SoC."dt-bindings: clock: " for the subject. This patch should come before the dts and driver changes.
Sure. Will incorporate in next revision. Thanks, Mani
quoted
Signed-off-by: Manivannan Sadhasivam <redacted> --- .../bindings/clock/actions,s900-clock.txt | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 Documentation/devicetree/bindings/clock/actions,s900-clock.txtdiff --git a/Documentation/devicetree/bindings/clock/actions,s900-clock.txt b/Documentation/devicetree/bindings/clock/actions,s900-clock.txt new file mode 100644 index 0000000..951d6ad --- /dev/null +++ b/Documentation/devicetree/bindings/clock/actions,s900-clock.txt@@ -0,0 +1,47 @@ +* Actions s900 Clock Controller + +The Actions s900 clock controller generates and supplies clock to various +controllers within the SoC. The clock binding described here is applicable to +s900 SoC. + +Required Properties: + +- compatible: should be "actions,s900-clock" +- reg: physical base address of the controller and length of memory mapped + region. +- #clock-cells: should be 1. + +Each clock is assigned an identifier and client nodes can use this identifier +to specify the clock which they consume. + +All available clocks are defined as preprocessor macros in +dt-bindings/clock/actions,s900-clock.h header and can be used in device +tree sources. + +External clocks: + +The hosc clock used as input for the plls is generated outside the SoC. It is +expected that it is defined using standard clock bindings as "hosc". + +Actions s900 Clock Controller also require two more clocks: + - "losc" - internal low frequency oscillator + - "diff_24M" - internal differential 24MHz clock + +Example: Clock controller node: + + clock: clock-controller at e0160000 { + compatible = "actions,s900-clock"; + reg = <0 0xe0160000 0 0x1000>; + #clock-cells = <1>; + }; + +Example: UART controller node that consumes clock generated by the clock +controller: + + serial5: uart at e012a000 {serial at ...quoted
+ compatible = "actions,s900-uart", "actions,owl-uart"; + reg = <0x0 0xe012a000 0x0 0x2000>; + interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&clock CLK_UART5>; + clock-names = "uart"; + }; -- 2.7.4