mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
synced 2025-09-04 10:33:13 +00:00

Properties with variable number of items per each device are expected to have widest constraints in top-level "properties:" block and further customized (narrowed) in "if:then:". Add missing top-level constraints for clock-names. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Rob Herring (Arm) <robh@kernel.org> Link: https://lore.kernel.org/r/20240818172828.121728-1-krzysztof.kozlowski@linaro.org Signed-off-by: Uwe Kleine-König <ukleinek@kernel.org>
117 lines
2.3 KiB
YAML
117 lines
2.3 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/pwm/allwinner,sun4i-a10-pwm.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Allwinner A10 PWM
|
|
|
|
maintainers:
|
|
- Chen-Yu Tsai <wens@csie.org>
|
|
- Maxime Ripard <mripard@kernel.org>
|
|
|
|
properties:
|
|
"#pwm-cells":
|
|
const: 3
|
|
|
|
compatible:
|
|
oneOf:
|
|
- const: allwinner,sun4i-a10-pwm
|
|
- const: allwinner,sun5i-a10s-pwm
|
|
- const: allwinner,sun5i-a13-pwm
|
|
- const: allwinner,sun7i-a20-pwm
|
|
- const: allwinner,sun8i-h3-pwm
|
|
- items:
|
|
- const: allwinner,sun8i-a83t-pwm
|
|
- const: allwinner,sun8i-h3-pwm
|
|
- items:
|
|
- enum:
|
|
- allwinner,suniv-f1c100s-pwm
|
|
- allwinner,sun8i-v3s-pwm
|
|
- const: allwinner,sun7i-a20-pwm
|
|
- items:
|
|
- const: allwinner,sun50i-a64-pwm
|
|
- const: allwinner,sun5i-a13-pwm
|
|
- items:
|
|
- const: allwinner,sun50i-h5-pwm
|
|
- const: allwinner,sun5i-a13-pwm
|
|
- const: allwinner,sun50i-h6-pwm
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
minItems: 1
|
|
items:
|
|
- description: Module Clock
|
|
- description: Bus Clock
|
|
|
|
clock-names:
|
|
minItems: 1
|
|
items:
|
|
- const: mod
|
|
- const: bus
|
|
|
|
resets:
|
|
maxItems: 1
|
|
|
|
|
|
allOf:
|
|
- $ref: pwm.yaml#
|
|
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
const: allwinner,sun50i-h6-pwm
|
|
|
|
then:
|
|
properties:
|
|
clocks:
|
|
maxItems: 2
|
|
|
|
clock-names:
|
|
items:
|
|
- const: mod
|
|
- const: bus
|
|
|
|
required:
|
|
- clock-names
|
|
- resets
|
|
|
|
else:
|
|
properties:
|
|
clocks:
|
|
maxItems: 1
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- clocks
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
pwm: pwm@1c20e00 {
|
|
compatible = "allwinner,sun7i-a20-pwm";
|
|
reg = <0x01c20e00 0xc>;
|
|
clocks = <&osc24M>;
|
|
#pwm-cells = <3>;
|
|
};
|
|
|
|
- |
|
|
#include <dt-bindings/clock/sun50i-h6-ccu.h>
|
|
#include <dt-bindings/reset/sun50i-h6-ccu.h>
|
|
|
|
pwm@300a000 {
|
|
compatible = "allwinner,sun50i-h6-pwm";
|
|
reg = <0x0300a000 0x400>;
|
|
clocks = <&osc24M>, <&ccu CLK_BUS_PWM>;
|
|
clock-names = "mod", "bus";
|
|
resets = <&ccu RST_BUS_PWM>;
|
|
#pwm-cells = <3>;
|
|
};
|
|
|
|
...
|