1# SPDX-License-Identifier: GPL-2.0 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/pwm/pwm-rockchip.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Rockchip PWM controller 8 9maintainers: 10 - Heiko Stuebner <heiko@sntech.de> 11 12properties: 13 compatible: 14 oneOf: 15 - const: rockchip,rk2928-pwm 16 - const: rockchip,rk3288-pwm 17 - const: rockchip,rk3328-pwm 18 - const: rockchip,vop-pwm 19 - items: 20 - const: rockchip,rk3036-pwm 21 - const: rockchip,rk2928-pwm 22 - items: 23 - enum: 24 - rockchip,rk3128-pwm 25 - rockchip,rk3368-pwm 26 - rockchip,rk3399-pwm 27 - rockchip,rv1108-pwm 28 - const: rockchip,rk3288-pwm 29 - items: 30 - enum: 31 - rockchip,px30-pwm 32 - rockchip,rk3308-pwm 33 - rockchip,rk3528-pwm 34 - rockchip,rk3562-pwm 35 - rockchip,rk3568-pwm 36 - rockchip,rk3588-pwm 37 - rockchip,rv1126-pwm 38 - const: rockchip,rk3328-pwm 39 40 reg: 41 maxItems: 1 42 43 clocks: 44 minItems: 1 45 maxItems: 2 46 47 clock-names: 48 maxItems: 2 49 50 "#pwm-cells": 51 enum: [2, 3] 52 description: 53 Must be 2 (rk2928) or 3 (rk3288 and later). 54 See pwm.yaml for a description of the cell format. 55 56required: 57 - compatible 58 - reg 59 60allOf: 61 - $ref: pwm.yaml# 62 63 - if: 64 properties: 65 compatible: 66 contains: 67 enum: 68 - rockchip,rk3328-pwm 69 - rockchip,rv1108-pwm 70 71 then: 72 properties: 73 clocks: 74 items: 75 - description: Used to derive the functional clock for the device. 76 - description: Used as the APB bus clock. 77 78 clock-names: 79 items: 80 - const: pwm 81 - const: pclk 82 83 required: 84 - clocks 85 - clock-names 86 87 else: 88 properties: 89 clocks: 90 maxItems: 1 91 description: 92 Used both to derive the functional clock 93 for the device and as the bus clock. 94 95 required: 96 - clocks 97 98additionalProperties: false 99 100examples: 101 - | 102 #include <dt-bindings/clock/rk3188-cru-common.h> 103 pwm0: pwm@20030000 { 104 compatible = "rockchip,rk2928-pwm"; 105 reg = <0x20030000 0x10>; 106 clocks = <&cru PCLK_PWM01>; 107 #pwm-cells = <2>; 108 }; 109