18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/mfd/st,stm32-lptimer.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: STMicroelectronics STM32 Low-Power Timers bindings
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cidescription: |
108c2ecf20Sopenharmony_ci  The STM32 Low-Power Timer (LPTIM) is a 16-bit timer that provides several
118c2ecf20Sopenharmony_ci  functions
128c2ecf20Sopenharmony_ci   - PWM output (with programmable prescaler, configurable polarity)
138c2ecf20Sopenharmony_ci   - Trigger source for STM32 ADC/DAC (LPTIM_OUT)
148c2ecf20Sopenharmony_ci   - Several counter modes:
158c2ecf20Sopenharmony_ci     - quadrature encoder to detect angular position and direction of rotary
168c2ecf20Sopenharmony_ci       elements, from IN1 and IN2 input signals.
178c2ecf20Sopenharmony_ci     - simple counter from IN1 input signal.
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_cimaintainers:
208c2ecf20Sopenharmony_ci  - Fabrice Gasnier <fabrice.gasnier@st.com>
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ciproperties:
238c2ecf20Sopenharmony_ci  compatible:
248c2ecf20Sopenharmony_ci    const: st,stm32-lptimer
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ci  reg:
278c2ecf20Sopenharmony_ci    maxItems: 1
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci  clocks:
308c2ecf20Sopenharmony_ci    maxItems: 1
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ci  clock-names:
338c2ecf20Sopenharmony_ci    items:
348c2ecf20Sopenharmony_ci      - const: mux
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ci  interrupts:
378c2ecf20Sopenharmony_ci    maxItems: 1
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci  "#address-cells":
408c2ecf20Sopenharmony_ci    const: 1
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci  "#size-cells":
438c2ecf20Sopenharmony_ci    const: 0
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_ci  wakeup-source: true
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci  pwm:
488c2ecf20Sopenharmony_ci    type: object
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ci    properties:
518c2ecf20Sopenharmony_ci      compatible:
528c2ecf20Sopenharmony_ci        const: st,stm32-pwm-lp
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_ci      "#pwm-cells":
558c2ecf20Sopenharmony_ci        const: 3
568c2ecf20Sopenharmony_ci
578c2ecf20Sopenharmony_ci    required:
588c2ecf20Sopenharmony_ci      - "#pwm-cells"
598c2ecf20Sopenharmony_ci      - compatible
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_cipatternProperties:
628c2ecf20Sopenharmony_ci  "^trigger@[0-9]+$":
638c2ecf20Sopenharmony_ci    type: object
648c2ecf20Sopenharmony_ci
658c2ecf20Sopenharmony_ci    properties:
668c2ecf20Sopenharmony_ci      compatible:
678c2ecf20Sopenharmony_ci        const: st,stm32-lptimer-trigger
688c2ecf20Sopenharmony_ci
698c2ecf20Sopenharmony_ci      reg:
708c2ecf20Sopenharmony_ci        description: Identify trigger hardware block.
718c2ecf20Sopenharmony_ci        items:
728c2ecf20Sopenharmony_ci          minimum: 0
738c2ecf20Sopenharmony_ci          maximum: 2
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ci    required:
768c2ecf20Sopenharmony_ci      - compatible
778c2ecf20Sopenharmony_ci      - reg
788c2ecf20Sopenharmony_ci
798c2ecf20Sopenharmony_ci  counter:
808c2ecf20Sopenharmony_ci    type: object
818c2ecf20Sopenharmony_ci
828c2ecf20Sopenharmony_ci    properties:
838c2ecf20Sopenharmony_ci      compatible:
848c2ecf20Sopenharmony_ci        const: st,stm32-lptimer-counter
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ci    required:
878c2ecf20Sopenharmony_ci      - compatible
888c2ecf20Sopenharmony_ci
898c2ecf20Sopenharmony_ci  timer:
908c2ecf20Sopenharmony_ci    type: object
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_ci    properties:
938c2ecf20Sopenharmony_ci      compatible:
948c2ecf20Sopenharmony_ci        const: st,stm32-lptimer-timer
958c2ecf20Sopenharmony_ci
968c2ecf20Sopenharmony_ci    required:
978c2ecf20Sopenharmony_ci      - compatible
988c2ecf20Sopenharmony_ci
998c2ecf20Sopenharmony_cirequired:
1008c2ecf20Sopenharmony_ci  - "#address-cells"
1018c2ecf20Sopenharmony_ci  - "#size-cells"
1028c2ecf20Sopenharmony_ci  - compatible
1038c2ecf20Sopenharmony_ci  - reg
1048c2ecf20Sopenharmony_ci  - clocks
1058c2ecf20Sopenharmony_ci  - clock-names
1068c2ecf20Sopenharmony_ci
1078c2ecf20Sopenharmony_ciadditionalProperties: false
1088c2ecf20Sopenharmony_ci
1098c2ecf20Sopenharmony_ciexamples:
1108c2ecf20Sopenharmony_ci  - |
1118c2ecf20Sopenharmony_ci    #include <dt-bindings/clock/stm32mp1-clks.h>
1128c2ecf20Sopenharmony_ci    #include <dt-bindings/interrupt-controller/arm-gic.h>
1138c2ecf20Sopenharmony_ci    timer@40002400 {
1148c2ecf20Sopenharmony_ci      compatible = "st,stm32-lptimer";
1158c2ecf20Sopenharmony_ci      reg = <0x40002400 0x400>;
1168c2ecf20Sopenharmony_ci      clocks = <&timer_clk>;
1178c2ecf20Sopenharmony_ci      clock-names = "mux";
1188c2ecf20Sopenharmony_ci      interrupts-extended = <&exti 47 IRQ_TYPE_LEVEL_HIGH>;
1198c2ecf20Sopenharmony_ci      #address-cells = <1>;
1208c2ecf20Sopenharmony_ci      #size-cells = <0>;
1218c2ecf20Sopenharmony_ci
1228c2ecf20Sopenharmony_ci      pwm {
1238c2ecf20Sopenharmony_ci        compatible = "st,stm32-pwm-lp";
1248c2ecf20Sopenharmony_ci        #pwm-cells = <3>;
1258c2ecf20Sopenharmony_ci      };
1268c2ecf20Sopenharmony_ci
1278c2ecf20Sopenharmony_ci      trigger@0 {
1288c2ecf20Sopenharmony_ci        compatible = "st,stm32-lptimer-trigger";
1298c2ecf20Sopenharmony_ci        reg = <0>;
1308c2ecf20Sopenharmony_ci      };
1318c2ecf20Sopenharmony_ci
1328c2ecf20Sopenharmony_ci      counter {
1338c2ecf20Sopenharmony_ci        compatible = "st,stm32-lptimer-counter";
1348c2ecf20Sopenharmony_ci      };
1358c2ecf20Sopenharmony_ci
1368c2ecf20Sopenharmony_ci      timer {
1378c2ecf20Sopenharmony_ci        compatible = "st,stm32-lptimer-timer";
1388c2ecf20Sopenharmony_ci      };
1398c2ecf20Sopenharmony_ci    };
1408c2ecf20Sopenharmony_ci
1418c2ecf20Sopenharmony_ci...
142