1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/mfd/st,stm32-lptimer.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: STMicroelectronics STM32 Low-Power Timers bindings 8 9description: | 10 The STM32 Low-Power Timer (LPTIM) is a 16-bit timer that provides several 11 functions 12 - PWM output (with programmable prescaler, configurable polarity) 13 - Trigger source for STM32 ADC/DAC (LPTIM_OUT) 14 - Several counter modes: 15 - quadrature encoder to detect angular position and direction of rotary 16 elements, from IN1 and IN2 input signals. 17 - simple counter from IN1 input signal. 18 19maintainers: 20 - Fabrice Gasnier <fabrice.gasnier@st.com> 21 22properties: 23 compatible: 24 const: st,stm32-lptimer 25 26 reg: 27 maxItems: 1 28 29 clocks: 30 maxItems: 1 31 32 clock-names: 33 items: 34 - const: mux 35 36 "#address-cells": 37 const: 1 38 39 "#size-cells": 40 const: 0 41 42 wakeup-source: true 43 44 pwm: 45 type: object 46 47 properties: 48 compatible: 49 const: st,stm32-pwm-lp 50 51 "#pwm-cells": 52 const: 3 53 54 required: 55 - "#pwm-cells" 56 - compatible 57 58patternProperties: 59 "^trigger@[0-9]+$": 60 type: object 61 62 properties: 63 compatible: 64 const: st,stm32-lptimer-trigger 65 66 reg: 67 description: Identify trigger hardware block. 68 items: 69 minimum: 0 70 maximum: 2 71 72 required: 73 - compatible 74 - reg 75 76 counter: 77 type: object 78 79 properties: 80 compatible: 81 const: st,stm32-lptimer-counter 82 83 required: 84 - compatible 85 86 timer: 87 type: object 88 89 properties: 90 compatible: 91 const: st,stm32-lptimer-timer 92 93 required: 94 - compatible 95 96required: 97 - "#address-cells" 98 - "#size-cells" 99 - compatible 100 - reg 101 - clocks 102 - clock-names 103 104additionalProperties: false 105 106examples: 107 - | 108 #include <dt-bindings/clock/stm32mp1-clks.h> 109 timer@40002400 { 110 compatible = "st,stm32-lptimer"; 111 reg = <0x40002400 0x400>; 112 clocks = <&timer_clk>; 113 clock-names = "mux"; 114 #address-cells = <1>; 115 #size-cells = <0>; 116 117 pwm { 118 compatible = "st,stm32-pwm-lp"; 119 #pwm-cells = <3>; 120 }; 121 122 trigger@0 { 123 compatible = "st,stm32-lptimer-trigger"; 124 reg = <0>; 125 }; 126 127 counter { 128 compatible = "st,stm32-lptimer-counter"; 129 }; 130 131 timer { 132 compatible = "st,stm32-lptimer-timer"; 133 }; 134 }; 135 136... 137