1 Qualcomm SoundWire Controller Bindings
4 This binding describes the Qualcomm SoundWire Controller along with its
5 board specific bus parameters.
9 Value type: <stringlist>
10 Definition: must be "qcom,soundwire-v<MAJOR>.<MINOR>.<STEP>",
12 "qcom,soundwire-v1.3.0"
13 "qcom,soundwire-v1.5.0"
14 "qcom,soundwire-v1.5.1"
15 "qcom,soundwire-v1.6.0"
18 Value type: <prop-encoded-array>
19 Definition: the base address and size of SoundWire controller
24 Value type: <prop-encoded-array>
25 Definition: should specify the SoundWire Controller core and optional
31 Value type: <stringlist>
32 Definition: should be "core" for core and "wakeup" for wake interrupt.
37 Definition: should specify if SoundWire Controller is wake up capable.
41 Value type: <stringlist>
42 Definition: should be "iface" for SoundWire Controller interface clock
46 Value type: <prop-encoded-array>
47 Definition: should specify the SoundWire Controller interface clock
52 Definition: must be 1 for digital audio interfaces on the controller.
57 Definition: must be count of data out ports
62 Definition: must be count of data in ports
66 Value type: <prop-encoded-array>
67 Definition: should specify payload transport window offset1 of each
68 data port. Out ports followed by In ports.
69 Value of 0xFF indicates that this option is not implemented
70 or applicable for the respective data port.
71 More info in MIPI Alliance SoundWire 1.0 Specifications.
75 Value type: <prop-encoded-array>
76 Definition: should specify payload transport window offset2 of each
77 data port. Out ports followed by In ports.
78 Value of 0xFF indicates that this option is not implemented
79 or applicable for the respective data port.
80 More info in MIPI Alliance SoundWire 1.0 Specifications.
82 - qcom,ports-sinterval-low:
84 Value type: <prop-encoded-array>
85 Definition: should be sample interval low of each data port.
86 Out ports followed by In ports. Used for Sample Interval
88 Value of 0xFF indicates that this option is not implemented
89 or applicable for the respective data port.
90 More info in MIPI Alliance SoundWire 1.0 Specifications.
92 - qcom,ports-word-length:
94 Value type: <prop-encoded-array>
95 Definition: should be size of payload channel sample.
96 Value of 0xFF indicates that this option is not implemented
97 or applicable for the respective data port.
98 More info in MIPI Alliance SoundWire 1.0 Specifications.
100 - qcom,ports-block-pack-mode:
102 Value type: <prop-encoded-array>
103 Definition: should be 0 or 1 to indicate the block packing mode.
104 0 to indicate Blocks are per Channel
105 1 to indicate Blocks are per Port.
106 Out ports followed by In ports.
107 Value of 0xFF indicates that this option is not implemented
108 or applicable for the respective data port.
109 More info in MIPI Alliance SoundWire 1.0 Specifications.
111 - qcom,ports-block-group-count:
113 Value type: <prop-encoded-array>
114 Definition: should be in range 1 to 4 to indicate how many sample
115 intervals are combined into a payload.
116 Out ports followed by In ports.
117 Value of 0xFF indicates that this option is not implemented
118 or applicable for the respective data port.
119 More info in MIPI Alliance SoundWire 1.0 Specifications.
121 - qcom,ports-lane-control:
123 Value type: <prop-encoded-array>
124 Definition: should be in range 0 to 7 to identify which data lane
126 Out ports followed by In ports.
127 Value of 0xFF indicates that this option is not implemented
128 or applicable for the respective data port.
129 More info in MIPI Alliance SoundWire 1.0 Specifications.
133 Value type: <prop-encoded-array>
134 Definition: should be number identifying lowerst numbered coloum in
135 SoundWire Frame, i.e. left edge of the Transport sub-frame
136 for each port. Values between 0 and 15 are valid.
137 Out ports followed by In ports.
138 Value of 0xFF indicates that this option is not implemented
139 or applicable for the respective data port.
140 More info in MIPI Alliance SoundWire 1.0 Specifications.
144 Value type: <prop-encoded-array>
145 Definition: should be number identifying highest numbered coloum in
146 SoundWire Frame, i.e. the right edge of the Transport
147 sub-frame for each port. Values between 0 and 15 are valid.
148 Out ports followed by In ports.
149 Value of 0xFF indicates that this option is not implemented
150 or applicable for the respective data port.
151 More info in MIPI Alliance SoundWire 1.0 Specifications.
155 Value type: <prop-encoded-array>
156 Definition: should be one of the following types
160 Out ports followed by In ports.
161 Value of 0xFF indicates that this option is not implemented
162 or applicable for the respective data port.
163 More info in MIPI Alliance SoundWire 1.0 Specifications.
167 Value type: <prop-encoded-array>
168 Definition: Should specify the SoundWire audio CSR reset controller interface,
169 which is required for SoundWire version 1.6.0 and above.
173 Value type: <stringlist>
174 Definition: should be "swr_audio_cgcr" for SoundWire audio CSR reset
175 controller interface.
178 More Information on detail of encoding of these fields can be
179 found in MIPI Alliance SoundWire 1.0 Specifications.
182 Each subnode of the bus represents SoundWire device attached to it.
183 The properties of these nodes are defined by the individual bindings.
186 The following example represents a SoundWire controller on DB845c board
187 which has controller integrated inside WCD934x codec on SDM845 SoC.
189 soundwire: soundwire@c85 {
190 compatible = "qcom,soundwire-v1.3.0";
192 interrupts = <20 IRQ_TYPE_EDGE_RISING>;
194 clock-names = "iface";
195 resets = <&lpass_audiocc LPASS_AUDIO_SWR_TX_CGCR>;
196 reset-names = "swr_audio_cgcr";
197 #sound-dai-cells = <1>;
198 qcom,dports-type = <0>;
199 qcom,dout-ports = <6>;
200 qcom,din-ports = <2>;
201 qcom,ports-sinterval-low = /bits/ 8 <0x07 0x1F 0x3F 0x7 0x1F 0x3F 0x0F 0x0F>;
202 qcom,ports-offset1 = /bits/ 8 <0x01 0x02 0x0C 0x6 0x12 0x0D 0x07 0x0A >;
203 qcom,ports-offset2 = /bits/ 8 <0x00 0x00 0x1F 0x00 0x00 0x1F 0x00 0x00>;