File Index
Files and directories
Sign in
FILE

qcom,ath12k-wsi.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/net/wireless/qcom,ath12k-wsi.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2# Copyright (c) 2024 Qualcomm Innovation Center, Inc. All rights reserved.
  3%YAML 1.2
  4---
  5$id: http://devicetree.org/schemas/net/wireless/qcom,ath12k-wsi.yaml#
  6$schema: http://devicetree.org/meta-schemas/core.yaml#
  7
  8title: Qualcomm Technologies ath12k wireless devices (PCIe) with WSI interface
  9
 10maintainers:
 11  - Jeff Johnson <jjohnson@kernel.org>
 12
 13description: |
 14  Qualcomm Technologies IEEE 802.11be PCIe devices with WSI interface.
 15
 16  The ath12k devices (QCN9274) feature WSI support. WSI stands for
 17  WLAN Serial Interface. It is used for the exchange of specific
 18  control information across radios based on the doorbell mechanism.
 19  This WSI connection is essential to exchange control information
 20  among these devices.
 21
 22  The WSI interface includes TX and RX ports, which are used to connect
 23  multiple WSI-supported devices together, forming a WSI group.
 24
 25  Diagram to represent one WSI connection (one WSI group) among
 26  three devices.
 27
 28           +-------+        +-------+        +-------+
 29           | pcie1 |        | pcie2 |        | pcie3 |
 30           |       |        |       |        |       |
 31    +----->|  wsi  |------->|  wsi  |------->|  wsi  |-----+
 32    |      | grp 0 |        | grp 0 |        | grp 0 |     |
 33    |      +-------+        +-------+        +-------+     |
 34    +------------------------------------------------------+
 35
 36  Diagram to represent two WSI connections (two separate WSI groups)
 37  among four devices.
 38
 39       +-------+    +-------+          +-------+    +-------+
 40       | pcie0 |    | pcie1 |          | pcie2 |    | pcie3 |
 41       |       |    |       |          |       |    |       |
 42   +-->|  wsi  |--->|  wsi  |--+   +-->|  wsi  |--->|  wsi  |--+
 43   |   | grp 0 |    | grp 0 |  |   |   | grp 1 |    | grp 1 |  |
 44   |   +-------+    +-------+  |   |   +-------+    +-------+  |
 45   +---------------------------+   +---------------------------+
 46
 47properties:
 48  compatible:
 49    enum:
 50      - pci17cb,1109  # QCN9274
 51
 52  reg:
 53    maxItems: 1
 54
 55  qcom,calibration-variant:
 56    $ref: /schemas/types.yaml#/definitions/string
 57    description:
 58      String to uniquely identify variant of the calibration data for designs
 59      with colliding bus and device ids
 60
 61  qcom,ath12k-calibration-variant:
 62    $ref: /schemas/types.yaml#/definitions/string
 63    deprecated: true
 64    description:
 65      String to uniquely identify variant of the calibration data for designs
 66      with colliding bus and device ids
 67
 68  qcom,wsi-controller:
 69    $ref: /schemas/types.yaml#/definitions/flag
 70    description:
 71      The WSI controller device in the WSI group aids (is capable) to
 72      synchronize the Timing Synchronization Function (TSF) clock across
 73      all devices in the WSI group.
 74
 75  ports:
 76    $ref: /schemas/graph.yaml#/properties/ports
 77    properties:
 78      port@0:
 79        $ref: /schemas/graph.yaml#/properties/port
 80        description:
 81          This is the TX port of WSI interface. It is attached to the RX
 82          port of the next device in the WSI connection.
 83
 84      port@1:
 85        $ref: /schemas/graph.yaml#/properties/port
 86        description:
 87          This is the RX port of WSI interface. It is attached to the TX
 88          port of the previous device in the WSI connection.
 89
 90required:
 91  - compatible
 92  - reg
 93
 94additionalProperties: false
 95
 96examples:
 97  - |
 98    pcie {
 99        #address-cells = <3>;
100        #size-cells = <2>;
101
102        pcie@0 {
103            device_type = "pci";
104            reg = <0x0 0x0 0x0 0x0 0x0>;
105            #address-cells = <3>;
106            #size-cells = <2>;
107            ranges;
108
109            wifi@0 {
110                compatible = "pci17cb,1109";
111                reg = <0x0 0x0 0x0 0x0 0x0>;
112
113                qcom,calibration-variant = "RDP433_1";
114
115                ports {
116                    #address-cells = <1>;
117                    #size-cells = <0>;
118
119                    port@0 {
120                        reg = <0>;
121
122                        wifi1_wsi_tx: endpoint {
123                            remote-endpoint = <&wifi2_wsi_rx>;
124                        };
125                    };
126
127                    port@1 {
128                        reg = <1>;
129
130                        wifi1_wsi_rx: endpoint {
131                            remote-endpoint = <&wifi3_wsi_tx>;
132                        };
133                    };
134                };
135            };
136        };
137
138        pcie@1 {
139            device_type = "pci";
140            reg = <0x0 0x0 0x1 0x0 0x0>;
141            #address-cells = <3>;
142            #size-cells = <2>;
143            ranges;
144
145            wifi@0 {
146                compatible = "pci17cb,1109";
147                reg = <0x0 0x0 0x0 0x0 0x0>;
148
149                qcom,calibration-variant = "RDP433_2";
150                qcom,wsi-controller;
151
152                ports {
153                    #address-cells = <1>;
154                    #size-cells = <0>;
155
156                    port@0 {
157                        reg = <0>;
158
159                        wifi2_wsi_tx: endpoint {
160                            remote-endpoint = <&wifi3_wsi_rx>;
161                        };
162                    };
163
164                    port@1 {
165                        reg = <1>;
166
167                        wifi2_wsi_rx: endpoint {
168                            remote-endpoint = <&wifi1_wsi_tx>;
169                        };
170                    };
171                };
172            };
173        };
174
175        pcie@2 {
176            device_type = "pci";
177            reg = <0x0 0x0 0x2 0x0 0x0>;
178            #address-cells = <3>;
179            #size-cells = <2>;
180            ranges;
181
182            wifi@0 {
183                compatible = "pci17cb,1109";
184                reg = <0x0 0x0 0x0 0x0 0x0>;
185
186                qcom,calibration-variant = "RDP433_3";
187
188                ports {
189                    #address-cells = <1>;
190                    #size-cells = <0>;
191
192                    port@0 {
193                        reg = <0>;
194
195                        wifi3_wsi_tx: endpoint {
196                            remote-endpoint = <&wifi1_wsi_rx>;
197                        };
198                    };
199
200                    port@1 {
201                        reg = <1>;
202
203                        wifi3_wsi_rx: endpoint {
204                            remote-endpoint = <&wifi2_wsi_tx>;
205                        };
206                    };
207                };
208            };
209        };
210    };
~/ Read-only file preview.