1# SPDX-License-Identifier: GPL-2.0 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/pwm/allwinner,sun4i-a10-pwm.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Allwinner A10 PWM Device Tree Bindings 8 9maintainers: 10 - Chen-Yu Tsai <wens@csie.org> 11 - Maxime Ripard <mripard@kernel.org> 12 13properties: 14 "#pwm-cells": 15 const: 3 16 17 compatible: 18 oneOf: 19 - const: allwinner,sun4i-a10-pwm 20 - const: allwinner,sun5i-a10s-pwm 21 - const: allwinner,sun5i-a13-pwm 22 - const: allwinner,sun7i-a20-pwm 23 - const: allwinner,sun8i-h3-pwm 24 - items: 25 - const: allwinner,sun8i-a83t-pwm 26 - const: allwinner,sun8i-h3-pwm 27 - items: 28 - const: allwinner,sun8i-v3s-pwm 29 - const: allwinner,sun7i-a20-pwm 30 - items: 31 - const: allwinner,sun50i-a64-pwm 32 - const: allwinner,sun5i-a13-pwm 33 - items: 34 - const: allwinner,sun50i-h5-pwm 35 - const: allwinner,sun5i-a13-pwm 36 - const: allwinner,sun50i-h6-pwm 37 38 reg: 39 maxItems: 1 40 41 clocks: 42 minItems: 1 43 items: 44 - description: Module Clock 45 - description: Bus Clock 46 47 # Even though it only applies to subschemas under the conditionals, 48 # not listing them here will trigger a warning because of the 49 # additionalsProperties set to false. 50 clock-names: true 51 52 resets: 53 maxItems: 1 54 55if: 56 properties: 57 compatible: 58 contains: 59 const: allwinner,sun50i-h6-pwm 60 61then: 62 properties: 63 clocks: 64 maxItems: 2 65 66 clock-names: 67 items: 68 - const: mod 69 - const: bus 70 71 required: 72 - clock-names 73 - resets 74 75else: 76 properties: 77 clocks: 78 maxItems: 1 79 80required: 81 - "#pwm-cells" 82 - compatible 83 - reg 84 - clocks 85 86additionalProperties: false 87 88examples: 89 - | 90 pwm: pwm@1c20e00 { 91 compatible = "allwinner,sun7i-a20-pwm"; 92 reg = <0x01c20e00 0xc>; 93 clocks = <&osc24M>; 94 #pwm-cells = <3>; 95 }; 96 97 - | 98 #include <dt-bindings/clock/sun50i-h6-ccu.h> 99 #include <dt-bindings/reset/sun50i-h6-ccu.h> 100 101 pwm@300a000 { 102 compatible = "allwinner,sun50i-h6-pwm"; 103 reg = <0x0300a000 0x400>; 104 clocks = <&osc24M>, <&ccu CLK_BUS_PWM>; 105 clock-names = "mod", "bus"; 106 resets = <&ccu RST_BUS_PWM>; 107 #pwm-cells = <3>; 108 }; 109 110... 111