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