Fixed string node names should be under 'properties' rather than 'patternProperties'. Additionally, without beginning and end of line anchors, any prefix or suffix is allowed on the specified node name. Move the stm32 timers 'counter' and 'timer' nodes to the 'properties' section. Signed-off-by: Rob Herring <robh@kernel.org> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Fabrice Gasnier <fabrice.gasnier@foss.st.com> Signed-off-by: Lee Jones <lee@kernel.org> Link: https://lore.kernel.org/r/20220706211934.567432-1-robh@kernel.org
141 lines
2.6 KiB
YAML
141 lines
2.6 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/mfd/st,stm32-lptimer.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: STMicroelectronics STM32 Low-Power Timers bindings
|
|
|
|
description: |
|
|
The STM32 Low-Power Timer (LPTIM) is a 16-bit timer that provides several
|
|
functions
|
|
- PWM output (with programmable prescaler, configurable polarity)
|
|
- Trigger source for STM32 ADC/DAC (LPTIM_OUT)
|
|
- Several counter modes:
|
|
- quadrature encoder to detect angular position and direction of rotary
|
|
elements, from IN1 and IN2 input signals.
|
|
- simple counter from IN1 input signal.
|
|
|
|
maintainers:
|
|
- Fabrice Gasnier <fabrice.gasnier@foss.st.com>
|
|
|
|
properties:
|
|
compatible:
|
|
const: st,stm32-lptimer
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
maxItems: 1
|
|
|
|
clock-names:
|
|
items:
|
|
- const: mux
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
"#address-cells":
|
|
const: 1
|
|
|
|
"#size-cells":
|
|
const: 0
|
|
|
|
wakeup-source: true
|
|
|
|
pwm:
|
|
type: object
|
|
|
|
properties:
|
|
compatible:
|
|
const: st,stm32-pwm-lp
|
|
|
|
"#pwm-cells":
|
|
const: 3
|
|
|
|
required:
|
|
- "#pwm-cells"
|
|
- compatible
|
|
|
|
counter:
|
|
type: object
|
|
|
|
properties:
|
|
compatible:
|
|
const: st,stm32-lptimer-counter
|
|
|
|
required:
|
|
- compatible
|
|
|
|
timer:
|
|
type: object
|
|
|
|
properties:
|
|
compatible:
|
|
const: st,stm32-lptimer-timer
|
|
|
|
required:
|
|
- compatible
|
|
|
|
patternProperties:
|
|
"^trigger@[0-9]+$":
|
|
type: object
|
|
|
|
properties:
|
|
compatible:
|
|
const: st,stm32-lptimer-trigger
|
|
|
|
reg:
|
|
description: Identify trigger hardware block.
|
|
items:
|
|
minimum: 0
|
|
maximum: 2
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
|
|
required:
|
|
- "#address-cells"
|
|
- "#size-cells"
|
|
- compatible
|
|
- reg
|
|
- clocks
|
|
- clock-names
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/clock/stm32mp1-clks.h>
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
timer@40002400 {
|
|
compatible = "st,stm32-lptimer";
|
|
reg = <0x40002400 0x400>;
|
|
clocks = <&timer_clk>;
|
|
clock-names = "mux";
|
|
interrupts-extended = <&exti 47 IRQ_TYPE_LEVEL_HIGH>;
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
pwm {
|
|
compatible = "st,stm32-pwm-lp";
|
|
#pwm-cells = <3>;
|
|
};
|
|
|
|
trigger@0 {
|
|
compatible = "st,stm32-lptimer-trigger";
|
|
reg = <0>;
|
|
};
|
|
|
|
counter {
|
|
compatible = "st,stm32-lptimer-counter";
|
|
};
|
|
|
|
timer {
|
|
compatible = "st,stm32-lptimer-timer";
|
|
};
|
|
};
|
|
|
|
...
|