1*8ff35bb2SSowjanya Komatineni# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2*8ff35bb2SSowjanya Komatineni%YAML 1.2
3*8ff35bb2SSowjanya Komatineni---
4*8ff35bb2SSowjanya Komatineni$id: http://devicetree.org/schemas/ata/nvidia,tegra-ahci.yaml#
5*8ff35bb2SSowjanya Komatineni$schema: http://devicetree.org/meta-schemas/core.yaml#
6*8ff35bb2SSowjanya Komatineni
7*8ff35bb2SSowjanya Komatinenititle: Tegra AHCI SATA Controller
8*8ff35bb2SSowjanya Komatineni
9*8ff35bb2SSowjanya Komatinenimaintainers:
10*8ff35bb2SSowjanya Komatineni  - Thierry Reding <thierry.reding@gmail.com>
11*8ff35bb2SSowjanya Komatineni  - Jonathan Hunter <jonathanh@nvidia.com>
12*8ff35bb2SSowjanya Komatineni
13*8ff35bb2SSowjanya Komatineniproperties:
14*8ff35bb2SSowjanya Komatineni  compatible:
15*8ff35bb2SSowjanya Komatineni    enum:
16*8ff35bb2SSowjanya Komatineni      - nvidia,tegra124-ahci
17*8ff35bb2SSowjanya Komatineni      - nvidia,tegra132-ahci
18*8ff35bb2SSowjanya Komatineni      - nvidia,tegra210-ahci
19*8ff35bb2SSowjanya Komatineni
20*8ff35bb2SSowjanya Komatineni  reg:
21*8ff35bb2SSowjanya Komatineni    minItems: 2
22*8ff35bb2SSowjanya Komatineni    maxItems: 3
23*8ff35bb2SSowjanya Komatineni    items:
24*8ff35bb2SSowjanya Komatineni      - description: AHCI registers
25*8ff35bb2SSowjanya Komatineni      - description: SATA configuration and IPFS registers
26*8ff35bb2SSowjanya Komatineni      - description: SATA AUX registers
27*8ff35bb2SSowjanya Komatineni
28*8ff35bb2SSowjanya Komatineni  interrupts:
29*8ff35bb2SSowjanya Komatineni    maxItems: 1
30*8ff35bb2SSowjanya Komatineni
31*8ff35bb2SSowjanya Komatineni  clock-names:
32*8ff35bb2SSowjanya Komatineni    items:
33*8ff35bb2SSowjanya Komatineni      - const: sata
34*8ff35bb2SSowjanya Komatineni      - const: sata-oob
35*8ff35bb2SSowjanya Komatineni
36*8ff35bb2SSowjanya Komatineni  clocks:
37*8ff35bb2SSowjanya Komatineni    maxItems: 2
38*8ff35bb2SSowjanya Komatineni
39*8ff35bb2SSowjanya Komatineni  reset-names:
40*8ff35bb2SSowjanya Komatineni    items:
41*8ff35bb2SSowjanya Komatineni      - const: sata
42*8ff35bb2SSowjanya Komatineni      - const: sata-cold
43*8ff35bb2SSowjanya Komatineni      - const: sata-oob
44*8ff35bb2SSowjanya Komatineni
45*8ff35bb2SSowjanya Komatineni  resets:
46*8ff35bb2SSowjanya Komatineni    maxItems: 3
47*8ff35bb2SSowjanya Komatineni
48*8ff35bb2SSowjanya Komatineni  phy-names:
49*8ff35bb2SSowjanya Komatineni    items:
50*8ff35bb2SSowjanya Komatineni      - const: sata-0
51*8ff35bb2SSowjanya Komatineni
52*8ff35bb2SSowjanya Komatineni  phys:
53*8ff35bb2SSowjanya Komatineni    maxItems: 1
54*8ff35bb2SSowjanya Komatineni
55*8ff35bb2SSowjanya Komatineni  hvdd-supply:
56*8ff35bb2SSowjanya Komatineni    description: SATA HVDD regulator supply.
57*8ff35bb2SSowjanya Komatineni
58*8ff35bb2SSowjanya Komatineni  vddio-supply:
59*8ff35bb2SSowjanya Komatineni    description: SATA VDDIO regulator supply.
60*8ff35bb2SSowjanya Komatineni
61*8ff35bb2SSowjanya Komatineni  avdd-supply:
62*8ff35bb2SSowjanya Komatineni    description: SATA AVDD regulator supply.
63*8ff35bb2SSowjanya Komatineni
64*8ff35bb2SSowjanya Komatineni  target-5v-supply:
65*8ff35bb2SSowjanya Komatineni    description: SATA 5V power regulator supply.
66*8ff35bb2SSowjanya Komatineni
67*8ff35bb2SSowjanya Komatineni  target-12v-supply:
68*8ff35bb2SSowjanya Komatineni    description: SATA 12V power regulator supply.
69*8ff35bb2SSowjanya Komatineni
70*8ff35bb2SSowjanya Komatinenirequired:
71*8ff35bb2SSowjanya Komatineni  - compatible
72*8ff35bb2SSowjanya Komatineni  - reg
73*8ff35bb2SSowjanya Komatineni  - interrupts
74*8ff35bb2SSowjanya Komatineni  - clock-names
75*8ff35bb2SSowjanya Komatineni  - clocks
76*8ff35bb2SSowjanya Komatineni  - reset-names
77*8ff35bb2SSowjanya Komatineni  - resets
78*8ff35bb2SSowjanya Komatineni
79*8ff35bb2SSowjanya KomatineniallOf:
80*8ff35bb2SSowjanya Komatineni  - if:
81*8ff35bb2SSowjanya Komatineni      properties:
82*8ff35bb2SSowjanya Komatineni        compatible:
83*8ff35bb2SSowjanya Komatineni          contains:
84*8ff35bb2SSowjanya Komatineni            enum:
85*8ff35bb2SSowjanya Komatineni              - nvidia,tegra124-ahci
86*8ff35bb2SSowjanya Komatineni              - nvidia,tegra132-ahci
87*8ff35bb2SSowjanya Komatineni    then:
88*8ff35bb2SSowjanya Komatineni      properties:
89*8ff35bb2SSowjanya Komatineni        reg:
90*8ff35bb2SSowjanya Komatineni          maxItems: 2
91*8ff35bb2SSowjanya Komatineni        reset-names:
92*8ff35bb2SSowjanya Komatineni          minItems: 3
93*8ff35bb2SSowjanya Komatineni        resets:
94*8ff35bb2SSowjanya Komatineni          minItems: 3
95*8ff35bb2SSowjanya Komatineni      required:
96*8ff35bb2SSowjanya Komatineni        - phys
97*8ff35bb2SSowjanya Komatineni        - phy-names
98*8ff35bb2SSowjanya Komatineni        - hvdd-supply
99*8ff35bb2SSowjanya Komatineni        - vddio-supply
100*8ff35bb2SSowjanya Komatineni        - avdd-supply
101*8ff35bb2SSowjanya Komatineni
102*8ff35bb2SSowjanya Komatineni  - if:
103*8ff35bb2SSowjanya Komatineni      properties:
104*8ff35bb2SSowjanya Komatineni        compatible:
105*8ff35bb2SSowjanya Komatineni          contains:
106*8ff35bb2SSowjanya Komatineni            enum:
107*8ff35bb2SSowjanya Komatineni              - nvidia,tegra210-ahci
108*8ff35bb2SSowjanya Komatineni    then:
109*8ff35bb2SSowjanya Komatineni      properties:
110*8ff35bb2SSowjanya Komatineni        reg:
111*8ff35bb2SSowjanya Komatineni          minItems: 3
112*8ff35bb2SSowjanya Komatineni        reset-names:
113*8ff35bb2SSowjanya Komatineni          minItems: 3
114*8ff35bb2SSowjanya Komatineni        resets:
115*8ff35bb2SSowjanya Komatineni          minItems: 3
116*8ff35bb2SSowjanya Komatineni
117*8ff35bb2SSowjanya KomatineniadditionalProperties: true
118*8ff35bb2SSowjanya Komatineni
119*8ff35bb2SSowjanya Komatineniexamples:
120*8ff35bb2SSowjanya Komatineni  - |
121*8ff35bb2SSowjanya Komatineni    #include <dt-bindings/clock/tegra210-car.h>
122*8ff35bb2SSowjanya Komatineni    #include <dt-bindings/reset/tegra210-car.h>
123*8ff35bb2SSowjanya Komatineni    #include <dt-bindings/interrupt-controller/arm-gic.h>
124*8ff35bb2SSowjanya Komatineni
125*8ff35bb2SSowjanya Komatineni    sata@70020000 {
126*8ff35bb2SSowjanya Komatineni            compatible = "nvidia,tegra210-ahci";
127*8ff35bb2SSowjanya Komatineni            reg = <0x70027000 0x00002000>, /* AHCI */
128*8ff35bb2SSowjanya Komatineni                  <0x70020000 0x00007000>, /* SATA */
129*8ff35bb2SSowjanya Komatineni                  <0x70001100 0x00010000>; /* SATA AUX */
130*8ff35bb2SSowjanya Komatineni            interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;
131*8ff35bb2SSowjanya Komatineni            clocks = <&tegra_car TEGRA210_CLK_SATA>,
132*8ff35bb2SSowjanya Komatineni                     <&tegra_car TEGRA210_CLK_SATA_OOB>;
133*8ff35bb2SSowjanya Komatineni            clock-names = "sata", "sata-oob";
134*8ff35bb2SSowjanya Komatineni            resets = <&tegra_car 124>,
135*8ff35bb2SSowjanya Komatineni                     <&tegra_car 129>,
136*8ff35bb2SSowjanya Komatineni                     <&tegra_car 123>;
137*8ff35bb2SSowjanya Komatineni            reset-names = "sata", "sata-cold", "sata-oob";
138*8ff35bb2SSowjanya Komatineni    };
139