xref: /freebsd/sys/contrib/device-tree/Bindings/pwm/opencores,pwm.yaml (revision 01950c46b8155250f64374fb72fc11faa44bf099)
1*01950c46SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*01950c46SEmmanuel Vadot%YAML 1.2
3*01950c46SEmmanuel Vadot---
4*01950c46SEmmanuel Vadot$id: http://devicetree.org/schemas/pwm/opencores,pwm.yaml#
5*01950c46SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*01950c46SEmmanuel Vadot
7*01950c46SEmmanuel Vadottitle: OpenCores PWM controller
8*01950c46SEmmanuel Vadot
9*01950c46SEmmanuel Vadotmaintainers:
10*01950c46SEmmanuel Vadot  - William Qiu <william.qiu@starfivetech.com>
11*01950c46SEmmanuel Vadot
12*01950c46SEmmanuel Vadotdescription:
13*01950c46SEmmanuel Vadot  The OpenCores PTC ip core contains a PWM controller. When operating in PWM
14*01950c46SEmmanuel Vadot  mode, the PTC core generates binary signal with user-programmable low and
15*01950c46SEmmanuel Vadot  high periods. All PTC counters and registers are 32-bit.
16*01950c46SEmmanuel Vadot
17*01950c46SEmmanuel VadotallOf:
18*01950c46SEmmanuel Vadot  - $ref: pwm.yaml#
19*01950c46SEmmanuel Vadot
20*01950c46SEmmanuel Vadotproperties:
21*01950c46SEmmanuel Vadot  compatible:
22*01950c46SEmmanuel Vadot    items:
23*01950c46SEmmanuel Vadot      - enum:
24*01950c46SEmmanuel Vadot          - starfive,jh7100-pwm
25*01950c46SEmmanuel Vadot          - starfive,jh7110-pwm
26*01950c46SEmmanuel Vadot          - starfive,jh8100-pwm
27*01950c46SEmmanuel Vadot      - const: opencores,pwm-v1
28*01950c46SEmmanuel Vadot
29*01950c46SEmmanuel Vadot  reg:
30*01950c46SEmmanuel Vadot    maxItems: 1
31*01950c46SEmmanuel Vadot
32*01950c46SEmmanuel Vadot  clocks:
33*01950c46SEmmanuel Vadot    maxItems: 1
34*01950c46SEmmanuel Vadot
35*01950c46SEmmanuel Vadot  resets:
36*01950c46SEmmanuel Vadot    maxItems: 1
37*01950c46SEmmanuel Vadot
38*01950c46SEmmanuel Vadot  "#pwm-cells":
39*01950c46SEmmanuel Vadot    const: 3
40*01950c46SEmmanuel Vadot
41*01950c46SEmmanuel Vadotrequired:
42*01950c46SEmmanuel Vadot  - compatible
43*01950c46SEmmanuel Vadot  - reg
44*01950c46SEmmanuel Vadot  - clocks
45*01950c46SEmmanuel Vadot
46*01950c46SEmmanuel VadotadditionalProperties: false
47*01950c46SEmmanuel Vadot
48*01950c46SEmmanuel Vadotexamples:
49*01950c46SEmmanuel Vadot  - |
50*01950c46SEmmanuel Vadot    pwm@12490000 {
51*01950c46SEmmanuel Vadot        compatible = "starfive,jh7110-pwm", "opencores,pwm-v1";
52*01950c46SEmmanuel Vadot        reg = <0x12490000 0x10000>;
53*01950c46SEmmanuel Vadot        clocks = <&clkgen 181>;
54*01950c46SEmmanuel Vadot        resets = <&rstgen 109>;
55*01950c46SEmmanuel Vadot        #pwm-cells = <3>;
56*01950c46SEmmanuel Vadot    };
57