Merge tag 'kvm-x86-misc-6.9' of https://github.com/kvm-x86/linux into HEAD
[linux-2.6-block.git] / Documentation / devicetree / bindings / ata / ceva,ahci-1v84.yaml
CommitLineData
f2fb1b50
PM
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/ata/ceva,ahci-1v84.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Ceva AHCI SATA Controller
8
9maintainers:
2d3b3ab8
RSP
10 - Mubin Sayyed <mubin.sayyed@amd.com>
11 - Radhey Shyam Pandey <radhey.shyam.pandey@amd.com>
f2fb1b50
PM
12
13description: |
14 The Ceva SATA controller mostly conforms to the AHCI interface with some
15 special extensions to add functionality, is a high-performance dual-port
16 SATA host controller with an AHCI compliant command layer which supports
17 advanced features such as native command queuing and frame information
18 structure (FIS) based switching for systems employing port multipliers.
19
20properties:
21 compatible:
22 const: ceva,ahci-1v84
23
24 reg:
25 maxItems: 1
26
27 clocks:
28 maxItems: 1
29
30 dma-coherent: true
31
32 interrupts:
33 maxItems: 1
34
35 iommus:
a7844528 36 maxItems: 4
f2fb1b50
PM
37
38 power-domains:
39 maxItems: 1
40
41 ceva,p0-cominit-params:
42 $ref: /schemas/types.yaml#/definitions/uint8-array
43 description: |
44 OOB timing value for COMINIT parameter for port 0.
45 The fields for the above parameter must be as shown below:-
46 ceva,p0-cominit-params = /bits/ 8 <CIBGMN CIBGMX CIBGN CINMP>;
47 items:
48 - description: CINMP - COMINIT Negate Minimum Period.
49 - description: CIBGN - COMINIT Burst Gap Nominal.
50 - description: CIBGMX - COMINIT Burst Gap Maximum.
51 - description: CIBGMN - COMINIT Burst Gap Minimum.
52
53 ceva,p0-comwake-params:
54 $ref: /schemas/types.yaml#/definitions/uint8-array
55 description: |
56 OOB timing value for COMWAKE parameter for port 0.
57 The fields for the above parameter must be as shown below:-
58 ceva,p0-comwake-params = /bits/ 8 <CWBGMN CWBGMX CWBGN CWNMP>;
59 items:
60 - description: CWBGMN - COMWAKE Burst Gap Minimum.
61 - description: CWBGMX - COMWAKE Burst Gap Maximum.
62 - description: CWBGN - COMWAKE Burst Gap Nominal.
63 - description: CWNMP - COMWAKE Negate Minimum Period.
64
65 ceva,p0-burst-params:
66 $ref: /schemas/types.yaml#/definitions/uint8-array
67 description: |
68 Burst timing value for COM parameter for port 0.
69 The fields for the above parameter must be as shown below:-
70 ceva,p0-burst-params = /bits/ 8 <BMX BNM SFD PTST>;
71 items:
72 - description: BMX - COM Burst Maximum.
73 - description: BNM - COM Burst Nominal.
74 - description: SFD - Signal Failure Detection value.
75 - description: PTST - Partial to Slumber timer value.
76
77 ceva,p0-retry-params:
78 $ref: /schemas/types.yaml#/definitions/uint16-array
79 description: |
80 Retry interval timing value for port 0.
81 The fields for the above parameter must be as shown below:-
82 ceva,p0-retry-params = /bits/ 16 <RIT RCT>;
83 items:
84 - description: RIT - Retry Interval Timer.
85 - description: RCT - Rate Change Timer.
86
87 ceva,p1-cominit-params:
88 $ref: /schemas/types.yaml#/definitions/uint8-array
89 description: |
90 OOB timing value for COMINIT parameter for port 1.
91 The fields for the above parameter must be as shown below:-
92 ceva,p1-cominit-params = /bits/ 8 <CIBGMN CIBGMX CIBGN CINMP>;
93 items:
94 - description: CINMP - COMINIT Negate Minimum Period.
95 - description: CIBGN - COMINIT Burst Gap Nominal.
96 - description: CIBGMX - COMINIT Burst Gap Maximum.
97 - description: CIBGMN - COMINIT Burst Gap Minimum.
98
99 ceva,p1-comwake-params:
100 $ref: /schemas/types.yaml#/definitions/uint8-array
101 description: |
102 OOB timing value for COMWAKE parameter for port 1.
103 The fields for the above parameter must be as shown below:-
104 ceva,p1-comwake-params = /bits/ 8 <CWBGMN CWBGMX CWBGN CWNMP>;
105 items:
106 - description: CWBGMN - COMWAKE Burst Gap Minimum.
107 - description: CWBGMX - COMWAKE Burst Gap Maximum.
108 - description: CWBGN - COMWAKE Burst Gap Nominal.
109 - description: CWNMP - COMWAKE Negate Minimum Period.
110
111 ceva,p1-burst-params:
112 $ref: /schemas/types.yaml#/definitions/uint8-array
113 description: |
114 Burst timing value for COM parameter for port 1.
115 The fields for the above parameter must be as shown below:-
116 ceva,p1-burst-params = /bits/ 8 <BMX BNM SFD PTST>;
117 items:
118 - description: BMX - COM Burst Maximum.
119 - description: BNM - COM Burst Nominal.
120 - description: SFD - Signal Failure Detection value.
121 - description: PTST - Partial to Slumber timer value.
122
123 ceva,p1-retry-params:
124 $ref: /schemas/types.yaml#/definitions/uint16-array
125 description: |
126 Retry interval timing value for port 1.
127 The fields for the above parameter must be as shown below:-
128 ceva,pN-retry-params = /bits/ 16 <RIT RCT>;
129 items:
130 - description: RIT - Retry Interval Timer.
131 - description: RCT - Rate Change Timer.
132
133 ceva,broken-gen2:
134 $ref: /schemas/types.yaml#/definitions/flag
135 description: |
136 limit to gen1 speed instead of gen2.
137
138 phys:
139 maxItems: 1
140
141 phy-names:
142 items:
143 - const: sata-phy
144
145 resets:
146 maxItems: 1
147
148required:
149 - compatible
150 - reg
151 - clocks
152 - interrupts
153 - ceva,p0-cominit-params
154 - ceva,p0-comwake-params
155 - ceva,p0-burst-params
156 - ceva,p0-retry-params
157 - ceva,p1-cominit-params
158 - ceva,p1-comwake-params
159 - ceva,p1-burst-params
160 - ceva,p1-retry-params
161
162additionalProperties: false
163
164examples:
165 - |
166 #include <dt-bindings/clock/xlnx-zynqmp-clk.h>
167 #include <dt-bindings/interrupt-controller/irq.h>
168 #include <dt-bindings/power/xlnx-zynqmp-power.h>
169 #include <dt-bindings/reset/xlnx-zynqmp-resets.h>
170 #include <dt-bindings/clock/xlnx-zynqmp-clk.h>
171 #include <dt-bindings/phy/phy.h>
172
173 sata: ahci@fd0c0000 {
174 compatible = "ceva,ahci-1v84";
175 reg = <0xfd0c0000 0x200>;
176 interrupt-parent = <&gic>;
177 interrupts = <0 133 IRQ_TYPE_LEVEL_HIGH>;
178 clocks = <&zynqmp_clk SATA_REF>;
179 ceva,p0-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
180 ceva,p0-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
181 ceva,p0-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;
182 ceva,p0-retry-params = /bits/ 16 <0x0216 0x7F06>;
183 ceva,p1-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
184 ceva,p1-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
185 ceva,p1-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;
186 ceva,p1-retry-params = /bits/ 16 <0x0216 0x7F06>;
187 ceva,broken-gen2;
188 phys = <&psgtr 1 PHY_TYPE_SATA 1 1>;
189 resets = <&zynqmp_reset ZYNQMP_RESET_SATA>;
190 };