Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: GPL-2.0
0002 %YAML 1.2
0003 ---
0004 $id: http://devicetree.org/schemas/pwm/renesas,tpu-pwm.yaml#
0005 $schema: http://devicetree.org/meta-schemas/core.yaml#
0006 
0007 title: Renesas R-Car Timer Pulse Unit PWM Controller
0008 
0009 maintainers:
0010   - Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
0011 
0012 select:
0013   properties:
0014     compatible:
0015       contains:
0016         const: renesas,tpu
0017   required:
0018     - compatible
0019     - '#pwm-cells'
0020 
0021 properties:
0022   compatible:
0023     items:
0024       - enum:
0025           - renesas,tpu-r8a73a4   # R-Mobile APE6
0026           - renesas,tpu-r8a7740   # R-Mobile A1
0027           - renesas,tpu-r8a7742   # RZ/G1H
0028           - renesas,tpu-r8a7743   # RZ/G1M
0029           - renesas,tpu-r8a7744   # RZ/G1N
0030           - renesas,tpu-r8a7745   # RZ/G1E
0031           - renesas,tpu-r8a7790   # R-Car H2
0032           - renesas,tpu-r8a7791   # R-Car M2-W
0033           - renesas,tpu-r8a7792   # R-Car V2H
0034           - renesas,tpu-r8a7793   # R-Car M2-N
0035           - renesas,tpu-r8a7794   # R-Car E2
0036           - renesas,tpu-r8a7795   # R-Car H3
0037           - renesas,tpu-r8a7796   # R-Car M3-W
0038           - renesas,tpu-r8a77961  # R-Car M3-W+
0039           - renesas,tpu-r8a77965  # R-Car M3-N
0040           - renesas,tpu-r8a77970  # R-Car V3M
0041           - renesas,tpu-r8a77980  # R-Car V3H
0042           - renesas,tpu-r8a779a0  # R-Car V3U
0043       - const: renesas,tpu
0044 
0045   reg:
0046     # Base address and length of each memory resource used by the PWM
0047     # controller hardware module.
0048     maxItems: 1
0049 
0050   interrupts:
0051     maxItems: 1
0052 
0053   '#pwm-cells':
0054     # should be 3. See pwm.yaml in this directory for a description of
0055     # the cells format. The only third cell flag supported by this binding is
0056     # PWM_POLARITY_INVERTED.
0057     const: 3
0058 
0059   clocks:
0060     maxItems: 1
0061 
0062   power-domains:
0063     maxItems: 1
0064 
0065   resets:
0066     maxItems: 1
0067 
0068 required:
0069   - compatible
0070   - reg
0071   - clocks
0072   - power-domains
0073 
0074 allOf:
0075   - $ref: pwm.yaml#
0076 
0077   - if:
0078       not:
0079         properties:
0080           compatible:
0081             contains:
0082               enum:
0083                 - renesas,tpu-r8a73a4
0084                 - renesas,tpu-r8a7740
0085     then:
0086       required:
0087         - resets
0088 
0089 additionalProperties: false
0090 
0091 examples:
0092   - |
0093     #include <dt-bindings/clock/r8a7740-clock.h>
0094 
0095     tpu: pwm@e6600000 {
0096         compatible = "renesas,tpu-r8a7740", "renesas,tpu";
0097         reg = <0xe6600000 0x148>;
0098         clocks = <&mstp3_clks R8A7740_CLK_TPU0>;
0099         power-domains = <&pd_a3sp>;
0100         #pwm-cells = <3>;
0101     };