Thread (21 messages) 21 messages, 3 authors, 2016-12-03

Re: [PATCH v2 5/7] IIO: add bindings for stm32 IIO timer driver

From: Jonathan Cameron <hidden>
Date: 2016-11-27 15:51:15
Also in: linux-arm-kernel, linux-iio, linux-pwm, lkml

On 27/11/16 15:45, Benjamin Gaignard wrote:
2016-11-27 15:25 GMT+01:00 Jonathan Cameron [off-list ref]:
quoted
On 24/11/16 15:14, Benjamin Gaignard wrote:
quoted
Define bindings for stm32 IIO timer

version 2:
- only keep one compatible
- add DT parameters to set lists of the triggers:
  one list describe the triggers created by the device
  another one give the triggers accepted by the device

Signed-off-by: Benjamin Gaignard <redacted>
---
 .../bindings/iio/timer/stm32-iio-timer.txt         | 41 ++++++++++++++++++++++
 1 file changed, 41 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/timer/stm32-iio-timer.txt
diff --git a/Documentation/devicetree/bindings/iio/timer/stm32-iio-timer.txt b/Documentation/devicetree/bindings/iio/timer/stm32-iio-timer.txt
new file mode 100644
index 0000000..840b417
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/timer/stm32-iio-timer.txt
@@ -0,0 +1,41 @@
+timer IIO trigger bindings for STM32
+
+Must be a sub-node of STM32 general purpose timer driver
Add a cross reference...
I will add it in v3
quoted
quoted
+
+Required parameters:
+- compatible:                must be "st,stm32-iio-timer"
st,stm32-adc-timer or something like that.
I would prefer use st,stm32-timer-trigger because triggers can be used
for multiple other devices (dac, adc, timers)
quoted
quoted
+- interrupts:                Interrupt for this device
+                     See ../interrupt-controller/st,stm32-exti.txt
+
+Optional parameters:
+- st,input-triggers-names:   List of the possible input triggers for
+                             the device
+- st,output-triggers-names:  List of the possible output triggers for
+                             the device
What are input / output triggers?
each hardware block can be the source of triggers (output triggers) or customer
of some other trigger (input triggers).That what I have tried to
describe in those two
parameters
So this is really about using one timer as a prescaler for another?

I'd be tempted in the first instance to drop that functionality and just
describe the ones that drive the device sampling.

It's complex to describe and there is enough complexity in here already
to keep things busy for a while!
quoted
quoted
+
+Possible triggers are defined in include/dt-bindings/iio/timer/st,stm32-iio-timer.h
+
+Example:
+     gptimer1: gptimer1@40010000 {
+             compatible = "st,stm32-gptimer";
+             reg = <0x40010000 0x400>;
+             clocks = <&rcc 0 160>;
+             clock-names = "clk_int";
+
+             pwm1@0 {
+                     compatible = "st,stm32-pwm";
+                     st,pwm-num-chan = <4>;
+                     st,breakinput;
+                     st,complementary;
+             };
+
+             iiotimer1@0 {
+                     compatible = "st,stm32-iio-timer";
+                     interrupts = <27>;
+                     st,input-triggers-names = TIM5_TRGO,
+                                               TIM2_TRGO,
+                                               TIM4_TRGO,
+                                               TIM3_TRGO;
+                     st,output-triggers-names = TIM1_TRGO;
+             };
+     };
--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help