]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - Bindings/net/wireless/qcom,ath11k.yaml
Import device-tree files from Linux 5.17
[FreeBSD/FreeBSD.git] / Bindings / net / wireless / qcom,ath11k.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 # Copyright (c) 2018-2019 The Linux Foundation. All rights reserved.
3
4 %YAML 1.2
5 ---
6 $id: http://devicetree.org/schemas/net/wireless/qcom,ath11k.yaml#
7 $schema: http://devicetree.org/meta-schemas/core.yaml#
8
9 title: Qualcomm Technologies ath11k wireless devices Generic Binding
10
11 maintainers:
12   - Kalle Valo <kvalo@codeaurora.org>
13
14 description: |
15   These are dt entries for Qualcomm Technologies, Inc. IEEE 802.11ax
16   devices, for example like AHB based IPQ8074.
17
18 properties:
19   compatible:
20     enum:
21       - qcom,ipq8074-wifi
22       - qcom,ipq6018-wifi
23
24   reg:
25     maxItems: 1
26
27   interrupts:
28     items:
29       - description: misc-pulse1 interrupt events
30       - description: misc-latch interrupt events
31       - description: sw exception interrupt events
32       - description: watchdog interrupt events
33       - description: interrupt event for ring CE0
34       - description: interrupt event for ring CE1
35       - description: interrupt event for ring CE2
36       - description: interrupt event for ring CE3
37       - description: interrupt event for ring CE4
38       - description: interrupt event for ring CE5
39       - description: interrupt event for ring CE6
40       - description: interrupt event for ring CE7
41       - description: interrupt event for ring CE8
42       - description: interrupt event for ring CE9
43       - description: interrupt event for ring CE10
44       - description: interrupt event for ring CE11
45       - description: interrupt event for ring host2wbm-desc-feed
46       - description: interrupt event for ring host2reo-re-injection
47       - description: interrupt event for ring host2reo-command
48       - description: interrupt event for ring host2rxdma-monitor-ring3
49       - description: interrupt event for ring host2rxdma-monitor-ring2
50       - description: interrupt event for ring host2rxdma-monitor-ring1
51       - description: interrupt event for ring reo2ost-exception
52       - description: interrupt event for ring wbm2host-rx-release
53       - description: interrupt event for ring reo2host-status
54       - description: interrupt event for ring reo2host-destination-ring4
55       - description: interrupt event for ring reo2host-destination-ring3
56       - description: interrupt event for ring reo2host-destination-ring2
57       - description: interrupt event for ring reo2host-destination-ring1
58       - description: interrupt event for ring rxdma2host-monitor-destination-mac3
59       - description: interrupt event for ring rxdma2host-monitor-destination-mac2
60       - description: interrupt event for ring rxdma2host-monitor-destination-mac1
61       - description: interrupt event for ring ppdu-end-interrupts-mac3
62       - description: interrupt event for ring ppdu-end-interrupts-mac2
63       - description: interrupt event for ring ppdu-end-interrupts-mac1
64       - description: interrupt event for ring rxdma2host-monitor-status-ring-mac3
65       - description: interrupt event for ring rxdma2host-monitor-status-ring-mac2
66       - description: interrupt event for ring rxdma2host-monitor-status-ring-mac1
67       - description: interrupt event for ring host2rxdma-host-buf-ring-mac3
68       - description: interrupt event for ring host2rxdma-host-buf-ring-mac2
69       - description: interrupt event for ring host2rxdma-host-buf-ring-mac1
70       - description: interrupt event for ring rxdma2host-destination-ring-mac3
71       - description: interrupt event for ring rxdma2host-destination-ring-mac2
72       - description: interrupt event for ring rxdma2host-destination-ring-mac1
73       - description: interrupt event for ring host2tcl-input-ring4
74       - description: interrupt event for ring host2tcl-input-ring3
75       - description: interrupt event for ring host2tcl-input-ring2
76       - description: interrupt event for ring host2tcl-input-ring1
77       - description: interrupt event for ring wbm2host-tx-completions-ring3
78       - description: interrupt event for ring wbm2host-tx-completions-ring2
79       - description: interrupt event for ring wbm2host-tx-completions-ring1
80       - description: interrupt event for ring tcl2host-status-ring
81
82
83   interrupt-names:
84     items:
85       - const: misc-pulse1
86       - const: misc-latch
87       - const: sw-exception
88       - const: watchdog
89       - const: ce0
90       - const: ce1
91       - const: ce2
92       - const: ce3
93       - const: ce4
94       - const: ce5
95       - const: ce6
96       - const: ce7
97       - const: ce8
98       - const: ce9
99       - const: ce10
100       - const: ce11
101       - const: host2wbm-desc-feed
102       - const: host2reo-re-injection
103       - const: host2reo-command
104       - const: host2rxdma-monitor-ring3
105       - const: host2rxdma-monitor-ring2
106       - const: host2rxdma-monitor-ring1
107       - const: reo2ost-exception
108       - const: wbm2host-rx-release
109       - const: reo2host-status
110       - const: reo2host-destination-ring4
111       - const: reo2host-destination-ring3
112       - const: reo2host-destination-ring2
113       - const: reo2host-destination-ring1
114       - const: rxdma2host-monitor-destination-mac3
115       - const: rxdma2host-monitor-destination-mac2
116       - const: rxdma2host-monitor-destination-mac1
117       - const: ppdu-end-interrupts-mac3
118       - const: ppdu-end-interrupts-mac2
119       - const: ppdu-end-interrupts-mac1
120       - const: rxdma2host-monitor-status-ring-mac3
121       - const: rxdma2host-monitor-status-ring-mac2
122       - const: rxdma2host-monitor-status-ring-mac1
123       - const: host2rxdma-host-buf-ring-mac3
124       - const: host2rxdma-host-buf-ring-mac2
125       - const: host2rxdma-host-buf-ring-mac1
126       - const: rxdma2host-destination-ring-mac3
127       - const: rxdma2host-destination-ring-mac2
128       - const: rxdma2host-destination-ring-mac1
129       - const: host2tcl-input-ring4
130       - const: host2tcl-input-ring3
131       - const: host2tcl-input-ring2
132       - const: host2tcl-input-ring1
133       - const: wbm2host-tx-completions-ring3
134       - const: wbm2host-tx-completions-ring2
135       - const: wbm2host-tx-completions-ring1
136       - const: tcl2host-status-ring
137
138   qcom,rproc:
139     $ref: /schemas/types.yaml#/definitions/phandle
140     description:
141       DT entry of q6v5-wcss remoteproc driver.
142       Phandle to a node that can contain the following properties
143         * compatible
144         * reg
145         * reg-names
146
147   qcom,ath11k-calibration-variant:
148     $ref: /schemas/types.yaml#/definitions/string
149     description:
150       string to uniquely identify variant of the calibration data in the
151       board-2.bin for designs with colliding bus and device specific ids
152
153   memory-region:
154     maxItems: 1
155     description:
156       phandle to a node describing reserved memory (System RAM memory)
157       used by ath11k firmware (see bindings/reserved-memory/reserved-memory.txt)
158
159 required:
160   - compatible
161   - reg
162   - interrupts
163   - interrupt-names
164   - qcom,rproc
165
166 additionalProperties: false
167
168 examples:
169   - |
170
171     q6v5_wcss: q6v5_wcss@CD00000 {
172         compatible = "qcom,ipq8074-wcss-pil";
173         reg = <0xCD00000 0x4040>,
174               <0x4AB000 0x20>;
175         reg-names = "qdsp6",
176                     "rmb";
177     };
178
179     wifi0: wifi@c000000 {
180         compatible = "qcom,ipq8074-wifi";
181         reg = <0xc000000 0x2000000>;
182         interrupts = <0 320 1>,
183                      <0 319 1>,
184                      <0 318 1>,
185                      <0 317 1>,
186                      <0 316 1>,
187                      <0 315 1>,
188                      <0 314 1>,
189                      <0 311 1>,
190                      <0 310 1>,
191                      <0 411 1>,
192                      <0 410 1>,
193                      <0 40 1>,
194                      <0 39 1>,
195                      <0 302 1>,
196                      <0 301 1>,
197                      <0 37 1>,
198                      <0 36 1>,
199                      <0 296 1>,
200                      <0 295 1>,
201                      <0 294 1>,
202                      <0 293 1>,
203                      <0 292 1>,
204                      <0 291 1>,
205                      <0 290 1>,
206                      <0 289 1>,
207                      <0 288 1>,
208                      <0 239 1>,
209                      <0 236 1>,
210                      <0 235 1>,
211                      <0 234 1>,
212                      <0 233 1>,
213                      <0 232 1>,
214                      <0 231 1>,
215                      <0 230 1>,
216                      <0 229 1>,
217                      <0 228 1>,
218                      <0 224 1>,
219                      <0 223 1>,
220                      <0 203 1>,
221                      <0 183 1>,
222                      <0 180 1>,
223                      <0 179 1>,
224                      <0 178 1>,
225                      <0 177 1>,
226                      <0 176 1>,
227                      <0 163 1>,
228                      <0 162 1>,
229                      <0 160 1>,
230                      <0 159 1>,
231                      <0 158 1>,
232                      <0 157 1>,
233                      <0 156 1>;
234         interrupt-names = "misc-pulse1",
235                           "misc-latch",
236                           "sw-exception",
237                           "watchdog",
238                           "ce0",
239                           "ce1",
240                           "ce2",
241                           "ce3",
242                           "ce4",
243                           "ce5",
244                           "ce6",
245                           "ce7",
246                           "ce8",
247                           "ce9",
248                           "ce10",
249                           "ce11",
250                           "host2wbm-desc-feed",
251                           "host2reo-re-injection",
252                           "host2reo-command",
253                           "host2rxdma-monitor-ring3",
254                           "host2rxdma-monitor-ring2",
255                           "host2rxdma-monitor-ring1",
256                           "reo2ost-exception",
257                           "wbm2host-rx-release",
258                           "reo2host-status",
259                           "reo2host-destination-ring4",
260                           "reo2host-destination-ring3",
261                           "reo2host-destination-ring2",
262                           "reo2host-destination-ring1",
263                           "rxdma2host-monitor-destination-mac3",
264                           "rxdma2host-monitor-destination-mac2",
265                           "rxdma2host-monitor-destination-mac1",
266                           "ppdu-end-interrupts-mac3",
267                           "ppdu-end-interrupts-mac2",
268                           "ppdu-end-interrupts-mac1",
269                           "rxdma2host-monitor-status-ring-mac3",
270                           "rxdma2host-monitor-status-ring-mac2",
271                           "rxdma2host-monitor-status-ring-mac1",
272                           "host2rxdma-host-buf-ring-mac3",
273                           "host2rxdma-host-buf-ring-mac2",
274                           "host2rxdma-host-buf-ring-mac1",
275                           "rxdma2host-destination-ring-mac3",
276                           "rxdma2host-destination-ring-mac2",
277                           "rxdma2host-destination-ring-mac1",
278                           "host2tcl-input-ring4",
279                           "host2tcl-input-ring3",
280                           "host2tcl-input-ring2",
281                           "host2tcl-input-ring1",
282                           "wbm2host-tx-completions-ring3",
283                           "wbm2host-tx-completions-ring2",
284                           "wbm2host-tx-completions-ring1",
285                           "tcl2host-status-ring";
286         qcom,rproc = <&q6v5_wcss>;
287     };
288
289   - |
290
291     reserved-memory {
292         #address-cells = <2>;
293         #size-cells = <2>;
294
295         qcn9074_0: qcn9074_0@51100000 {
296             no-map;
297             reg = <0x0 0x51100000 0x0 0x03500000>;
298         };
299     };
300
301     pci {
302         pcie0 {
303             #size-cells = <2>;
304             #address-cells = <3>;
305  
306             wifi_0: wifi@0 {
307                 reg = <0 0 0 0 0>;
308                 memory-region = <&qcn9074_0>;
309             };
310         };
311     };