1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: "http://devicetree.org/schemas/ata/renesas,rcar-sata.yaml#"
5$schema: "http://devicetree.org/meta-schemas/core.yaml#"
6
7title: Renesas R-Car Serial-ATA Interface
8
9maintainers:
10  - Geert Uytterhoeven <geert+renesas@glider.be>
11
12properties:
13  compatible:
14    oneOf:
15      - items:
16          - enum:
17              - renesas,sata-r8a7779      # R-Car H1
18      - items:
19          - enum:
20              - renesas,sata-r8a7742      # RZ/G1H
21              - renesas,sata-r8a7790-es1  # R-Car H2 ES1
22              - renesas,sata-r8a7790      # R-Car H2 other than ES1
23              - renesas,sata-r8a7791      # R-Car M2-W
24              - renesas,sata-r8a7793      # R-Car M2-N
25          - const: renesas,rcar-gen2-sata # generic R-Car Gen2
26      - items:
27          - enum:
28              - renesas,sata-r8a774b1     # RZ/G2N
29              - renesas,sata-r8a7795      # R-Car H3
30              - renesas,sata-r8a77965     # R-Car M3-N
31          - const: renesas,rcar-gen3-sata # generic R-Car Gen3 or RZ/G2
32
33  reg:
34    maxItems: 1
35
36  interrupts:
37    maxItems: 1
38
39  clocks:
40    maxItems: 1
41
42  iommus:
43    maxItems: 1
44
45  power-domains:
46    maxItems: 1
47
48  resets:
49    maxItems: 1
50
51required:
52  - compatible
53  - reg
54  - interrupts
55  - clocks
56  - power-domains
57
58if:
59  not:
60    properties:
61      compatible:
62        contains:
63          const: renesas,sata-r8a7779
64then:
65  required:
66    - resets
67
68additionalProperties: false
69
70examples:
71  - |
72    #include <dt-bindings/clock/r8a7791-cpg-mssr.h>
73    #include <dt-bindings/interrupt-controller/arm-gic.h>
74    #include <dt-bindings/power/r8a7791-sysc.h>
75
76    sata@ee300000 {
77            compatible = "renesas,sata-r8a7791", "renesas,rcar-gen2-sata";
78            reg = <0xee300000 0x200000>;
79            interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>;
80            clocks = <&cpg CPG_MOD 815>;
81            power-domains = <&sysc R8A7791_PD_ALWAYS_ON>;
82            resets = <&cpg 815>;
83    };
84