dt/bindings: Binding documentation for Palmas clk32kg and clk32kgaudio clocks
authorPeter Ujfalusi <peter.ujfalusi@ti.com>
Fri, 27 Jun 2014 06:01:10 +0000 (09:01 +0300)
committerMike Turquette <mturquette@linaro.org>
Wed, 2 Jul 2014 04:37:57 +0000 (21:37 -0700)
Palmas class of devices can provide 32K clock(s) to be used by other devices
on the board. Depending on the actual device the provided clocks can be:
CLK32K_KG and CLK32K_KGAUDIO
or only one:
CLK32K_KG (TPS659039 for example)

Use separate compatible flags for the two 32K clock.
A system which needs or have only one of the 32k clock from
Palmas will need to add node(s) for each clock as separate section
in the dts file.
The two compatible property is:
"ti,palmas-clk32kg" for clk32kg clock
"ti,palmas-clk32kgaudio" for clk32kgaudio clock

Apart from the register control of the clocks - which is done via
the clock API there is a posibility to enable the external sleep
control. In this way the clock can be enabled/disabled on demand by the
user of the clock.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Reviewed-by: Nishanth Menon <nm@ti.com>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
Documentation/devicetree/bindings/clock/clk-palmas-clk32kg-clocks.txt [new file with mode: 0644]
include/dt-bindings/mfd/palmas.h [new file with mode: 0644]

diff --git a/Documentation/devicetree/bindings/clock/clk-palmas-clk32kg-clocks.txt b/Documentation/devicetree/bindings/clock/clk-palmas-clk32kg-clocks.txt
new file mode 100644 (file)
index 0000000..4208886
--- /dev/null
@@ -0,0 +1,35 @@
+* Palmas 32KHz clocks *
+
+Palmas device has two clock output pins for 32KHz, KG and KG_AUDIO.
+
+This binding uses the common clock binding ./clock-bindings.txt.
+
+Required properties:
+- compatible : "ti,palmas-clk32kg" for clk32kg clock
+               "ti,palmas-clk32kgaudio" for clk32kgaudio clock
+- #clock-cells : shall be set to 0.
+
+Optional property:
+- ti,external-sleep-control: The external enable input pins controlled the
+       enable/disable of clocks.  The external enable input pins ENABLE1,
+       ENABLE2 and NSLEEP. The valid values for the external pins are:
+               PALMAS_EXT_CONTROL_PIN_ENABLE1 for ENABLE1 pin
+               PALMAS_EXT_CONTROL_PIN_ENABLE2 for ENABLE2 pin
+               PALMAS_EXT_CONTROL_PIN_NSLEEP for NSLEEP pin
+       Option 0 or missing this property means the clock is enabled/disabled
+       via register access and these pins do not have any control.
+       The macros of external control pins for DTS is defined at
+       dt-bindings/mfd/palmas.h
+
+Example:
+       #include <dt-bindings/mfd/palmas.h>
+       ...
+       palmas: tps65913@58 {
+               ...
+               clk32kg: palmas_clk32k@0 {
+                       compatible = "ti,palmas-clk32kg";
+                       #clock-cells = <0>;
+                       ti,external-sleep-control = <PALMAS_EXT_CONTROL_PIN_NSLEEP>;
+               };
+               ...
+       };
diff --git a/include/dt-bindings/mfd/palmas.h b/include/dt-bindings/mfd/palmas.h
new file mode 100644 (file)
index 0000000..2c8ac48
--- /dev/null
@@ -0,0 +1,18 @@
+/*
+ * This header provides macros for Palmas device bindings.
+ *
+ * Copyright (c) 2013, NVIDIA Corporation.
+ *
+ * Author: Laxman Dewangan <ldewangan@nvidia.com>
+ *
+ */
+
+#ifndef __DT_BINDINGS_PALMAS_H__
+#define __DT_BINDINGS_PALMAS_H
+
+/* External control pins */
+#define PALMAS_EXT_CONTROL_PIN_ENABLE1 1
+#define PALMAS_EXT_CONTROL_PIN_ENABLE2 2
+#define PALMAS_EXT_CONTROL_PIN_NSLEEP  3
+
+#endif /* __DT_BINDINGS_PALMAS_H */
This page took 0.029164 seconds and 5 git commands to generate.