1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/soundwire/qcom,soundwire.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Qualcomm SoundWire Controller
10 - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
11 - Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
14 The Qualcomm SoundWire controller along with its board specific bus parameters.
19 - qcom,soundwire-v1.3.0
20 - qcom,soundwire-v1.5.0
21 - qcom,soundwire-v1.5.1
22 - qcom,soundwire-v1.6.0
23 - qcom,soundwire-v1.7.0
24 - qcom,soundwire-v2.0.0
32 - description: specify the SoundWire controller core.
33 - description: specify the Soundwire controller wake IRQ.
43 - description: iface clock
51 - description: SWR_AUDIO_CGCR RESET
55 - const: swr_audio_cgcr
69 $ref: /schemas/types.yaml#/definitions/uint32
70 description: count of data in ports
73 $ref: /schemas/types.yaml#/definitions/uint32
74 description: count of data out ports
76 qcom,ports-word-length:
77 $ref: /schemas/types.yaml#/definitions/uint8-array
79 Size of payload channel sample.
80 Value of 0xff indicates that this option is not implemented
81 or applicable for the respective data port.
82 More info in MIPI Alliance SoundWire 1.0 Specifications.
86 qcom,ports-sinterval-low:
87 $ref: /schemas/types.yaml#/definitions/uint8-array
89 Sample interval (only lowest byte) of each data port.
90 Out ports followed by In ports. Used for Sample Interval calculation.
91 Value of 0xff indicates that this option is not implemented
92 or applicable for the respective data port.
93 More info in MIPI Alliance SoundWire 1.0 Specifications.
98 $ref: /schemas/types.yaml#/definitions/uint16-array
100 Sample interval of each data port.
101 Out ports followed by In ports. Used for Sample Interval calculation.
102 Value of 0xffff indicates that this option is not implemented
103 or applicable for the respective data port.
104 More info in MIPI Alliance SoundWire 1.0 Specifications.
109 $ref: /schemas/types.yaml#/definitions/uint8-array
111 Payload transport window offset1 of each data port.
112 Out ports followed by In ports.
113 Value of 0xff indicates that this option is not implemented
114 or applicable for the respective data port.
115 More info in MIPI Alliance SoundWire 1.0 Specifications.
120 $ref: /schemas/types.yaml#/definitions/uint8-array
122 Payload transport window offset2 of each data port.
123 Out ports followed by In ports.
124 Value of 0xff indicates that this option is not implemented
125 or applicable for the respective data port.
126 More info in MIPI Alliance SoundWire 1.0 Specifications.
130 qcom,ports-lane-control:
131 $ref: /schemas/types.yaml#/definitions/uint8-array
133 Identify which data lane the data port uses.
134 Out ports followed by In ports.
135 Value of 0xff indicates that this option is not implemented
136 or applicable for the respective data port.
137 More info in MIPI Alliance SoundWire 1.0 Specifications.
141 qcom,ports-block-pack-mode:
142 $ref: /schemas/types.yaml#/definitions/uint8-array
144 Indicate the block packing mode.
145 0 to indicate Blocks are per Channel
146 1 to indicate Blocks are per Port.
147 Out ports followed by In ports.
148 Value of 0xff indicates that this option is not implemented
149 or applicable for the respective data port.
150 More info in MIPI Alliance SoundWire 1.0 Specifications.
160 $ref: /schemas/types.yaml#/definitions/uint8-array
162 Identifying lowerst numbered column in SoundWire Frame,
163 i.e. left edge of the Transport sub-frame for each port.
164 Out ports followed by In ports.
165 Value of 0xff indicates that this option is not implemented
166 or applicable for the respective data port.
167 More info in MIPI Alliance SoundWire 1.0 Specifications.
177 $ref: /schemas/types.yaml#/definitions/uint8-array
179 Identifying highest numbered column in SoundWire Frame,
180 i.e. the right edge of the Transport
181 sub-frame for each port. Out ports followed by In ports.
182 Value of 0xff indicates that this option is not implemented
183 or applicable for the respective data port.
184 More info in MIPI Alliance SoundWire 1.0 Specifications.
193 qcom,ports-block-group-count:
194 $ref: /schemas/types.yaml#/definitions/uint8-array
196 In range 1 to 4 to indicate how many sample intervals are combined
197 into a payload. Out ports followed by In ports.
198 Value of 0xff indicates that this option is not implemented
199 or applicable for the respective data port.
200 More info in MIPI Alliance SoundWire 1.0 Specifications.
228 - qcom,ports-sinterval-low
230 - qcom,ports-sinterval
233 - $ref: soundwire-controller.yaml#
235 unevaluatedProperties: false
239 #include <dt-bindings/interrupt-controller/arm-gic.h>
240 #include <dt-bindings/interrupt-controller/irq.h>
241 #include <dt-bindings/clock/qcom,lpassaudiocc-sc7280.h>
244 compatible = "qcom,soundwire-v1.6.0";
245 reg = <0x03210000 0x2000>;
247 interrupts = <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>,
248 <&pdc 130 IRQ_TYPE_LEVEL_HIGH>;
250 interrupt-names = "core", "wakeup";
252 clocks = <&lpass_rx_macro>;
253 clock-names = "iface";
255 qcom,din-ports = <0>;
256 qcom,dout-ports = <5>;
258 resets = <&lpass_audiocc LPASS_AUDIO_SWR_RX_CGCR>;
259 reset-names = "swr_audio_cgcr";
261 qcom,ports-word-length = /bits/ 8 <0x01 0x07 0x04 0xff 0xff>;
262 qcom,ports-sinterval-low = /bits/ 8 <0x03 0x3f 0x1f 0x03 0x03>;
263 qcom,ports-offset1 = /bits/ 8 <0x00 0x00 0x0b 0x01 0x01>;
264 qcom,ports-offset2 = /bits/ 8 <0x00 0x00 0x0b 0x00 0x00>;
265 qcom,ports-lane-control = /bits/ 8 <0x01 0x00 0x00 0x00 0x00>;
266 qcom,ports-block-pack-mode = /bits/ 8 <0xff 0x00 0x01 0xff 0xff>;
267 qcom,ports-hstart = /bits/ 8 <0xff 0x03 0xff 0xff 0xff>;
268 qcom,ports-hstop = /bits/ 8 <0xff 0x06 0xff 0xff 0xff>;
269 qcom,ports-block-group-count = /bits/ 8 <0xff 0xff 0xff 0xff 0x00>;
271 #sound-dai-cells = <1>;
272 #address-cells = <2>;
276 compatible = "sdw20217010d00";
278 qcom,rx-port-mapping = <1 2 3 4 5>;