18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/pwm/renesas,tpu-pwm.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: Renesas R-Car Timer Pulse Unit PWM Controller
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cimaintainers:
108c2ecf20Sopenharmony_ci  - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_ciproperties:
138c2ecf20Sopenharmony_ci  compatible:
148c2ecf20Sopenharmony_ci    items:
158c2ecf20Sopenharmony_ci      - enum:
168c2ecf20Sopenharmony_ci          - renesas,tpu-r8a73a4   # R-Mobile APE6
178c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7740   # R-Mobile A1
188c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7742   # RZ/G1H
198c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7743   # RZ/G1M
208c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7744   # RZ/G1N
218c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7745   # RZ/G1E
228c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7790   # R-Car H2
238c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7791   # R-Car M2-W
248c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7792   # R-Car V2H
258c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7793   # R-Car M2-N
268c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7794   # R-Car E2
278c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7795   # R-Car H3
288c2ecf20Sopenharmony_ci          - renesas,tpu-r8a7796   # R-Car M3-W
298c2ecf20Sopenharmony_ci          - renesas,tpu-r8a77965  # R-Car M3-N
308c2ecf20Sopenharmony_ci          - renesas,tpu-r8a77970  # R-Car V3M
318c2ecf20Sopenharmony_ci          - renesas,tpu-r8a77980  # R-Car V3H
328c2ecf20Sopenharmony_ci      - const: renesas,tpu
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ci  reg:
358c2ecf20Sopenharmony_ci    # Base address and length of each memory resource used by the PWM
368c2ecf20Sopenharmony_ci    # controller hardware module.
378c2ecf20Sopenharmony_ci    maxItems: 1
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci  interrupts:
408c2ecf20Sopenharmony_ci    maxItems: 1
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci  '#pwm-cells':
438c2ecf20Sopenharmony_ci    # should be 3. See pwm.yaml in this directory for a description of
448c2ecf20Sopenharmony_ci    # the cells format. The only third cell flag supported by this binding is
458c2ecf20Sopenharmony_ci    # PWM_POLARITY_INVERTED.
468c2ecf20Sopenharmony_ci    const: 3
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ci  clocks:
498c2ecf20Sopenharmony_ci    maxItems: 1
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci  power-domains:
528c2ecf20Sopenharmony_ci    maxItems: 1
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_ci  resets:
558c2ecf20Sopenharmony_ci    maxItems: 1
568c2ecf20Sopenharmony_ci
578c2ecf20Sopenharmony_cirequired:
588c2ecf20Sopenharmony_ci  - compatible
598c2ecf20Sopenharmony_ci  - reg
608c2ecf20Sopenharmony_ci  - '#pwm-cells'
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_ciadditionalProperties: false
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ciexamples:
658c2ecf20Sopenharmony_ci  - |
668c2ecf20Sopenharmony_ci    #include <dt-bindings/clock/r8a7740-clock.h>
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ci    tpu: pwm@e6600000 {
698c2ecf20Sopenharmony_ci        compatible = "renesas,tpu-r8a7740", "renesas,tpu";
708c2ecf20Sopenharmony_ci        reg = <0xe6600000 0x148>;
718c2ecf20Sopenharmony_ci        clocks = <&mstp3_clks R8A7740_CLK_TPU0>;
728c2ecf20Sopenharmony_ci        power-domains = <&pd_a3sp>;
738c2ecf20Sopenharmony_ci        #pwm-cells = <3>;
748c2ecf20Sopenharmony_ci    };
75