1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/sound/qcom,lpass-cpu.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Qualcomm Technologies Inc. LPASS CPU dai driver
10 - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
11 - Rohit kumar <quic_rohkumar@quicinc.com>
14 Qualcomm Technologies Inc. SOC Low-Power Audio SubSystem (LPASS) that consist
15 of MI2S interface for audio data transfer on external codecs. LPASS cpu driver
16 is a module to configure Low-Power Audio Interface(LPAIF) core registers
17 across different IP versions.
23 - qcom,apq8016-lpass-cpu
24 - qcom,sc7180-lpass-cpu
25 - qcom,sc7280-lpass-cpu
30 description: LPAIF core registers
47 description: LPAIF DMA buffer interrupt
54 $ref: /schemas/types.yaml#/definitions/phandle
55 description: Phandle for the audio DSP node
60 description: Phandle to apps_smmu node with sid mask
81 "^dai-link@[0-9a-f]+$":
84 LPASS CPU dai node for each I2S device or Soundwire device. Bindings of each node
85 depends on the specific driver providing the functionality and
90 description: Must be one of the DAI ID
92 qcom,playback-sd-lines:
93 $ref: /schemas/types.yaml#/definitions/uint32-array
94 description: list of MI2S data lines for playback
96 qcom,capture-sd-lines:
97 $ref: /schemas/types.yaml#/definitions/uint32-array
98 description: list of MI2S data lines for capture
103 additionalProperties: false
115 unevaluatedProperties: false
118 - $ref: dai-common.yaml#
123 const: qcom,lpass-cpu
132 - const: mi2s-osr-clk
133 - const: mi2s-bit-clk
139 const: qcom,apq8016-lpass-cpu
149 - const: mi2s-bit-clk0
150 - const: mi2s-bit-clk1
151 - const: mi2s-bit-clk2
152 - const: mi2s-bit-clk3
153 - const: pcnoc-mport-clk
154 - const: pcnoc-sway-clk
160 const: qcom,sc7180-lpass-cpu
169 - const: pcnoc-sway-clk
172 - const: pcnoc-mport-clk
173 - const: mi2s-bit-clk0
174 - const: mi2s-bit-clk1
180 - const: lpass-hdmiif
187 - const: lpass-irq-lpaif
188 - const: lpass-irq-hdmi
197 const: qcom,sc7280-lpass-cpu
206 - const: aon_cc_audio_hm_h
207 - const: audio_cc_ext_mclk0
208 - const: core_cc_sysnoc_mport_core
209 - const: core_cc_ext_if0_ibit
210 - const: core_cc_ext_if1_ibit
211 - const: audio_cc_codec_mem
212 - const: audio_cc_codec_mem0
213 - const: audio_cc_codec_mem1
214 - const: audio_cc_codec_mem2
215 - const: aon_cc_va_mem0
221 - const: lpass-hdmiif
223 - const: lpass-rxtx-cdc-dma-lpm
224 - const: lpass-rxtx-lpaif
225 - const: lpass-va-lpaif
226 - const: lpass-va-cdc-dma-lpm
232 - const: lpass-irq-lpaif
233 - const: lpass-irq-hdmi
234 - const: lpass-irq-vaif
235 - const: lpass-irq-rxtxif
246 #include <dt-bindings/sound/sc7180-lpass.h>
249 #address-cells = <2>;
252 compatible = "qcom,sc7180-lpass-cpu";
254 reg = <0 0x62d87000 0 0x68000>,
255 <0 0x62f00000 0 0x29000>;
256 reg-names = "lpass-hdmiif",
258 iommus = <&apps_smmu 0x1020 0>,
259 <&apps_smmu 0x1032 0>;
260 power-domains = <&lpass_hm 0>;
269 clock-names = "pcnoc-sway-clk", "audio-core",
270 "mclk0", "pcnoc-mport-clk",
271 "mi2s-bit-clk0", "mi2s-bit-clk1";
273 interrupts = <0 160 1>,
275 interrupt-names = "lpass-irq-lpaif",
277 #sound-dai-cells = <1>;
279 #address-cells = <1>;
281 /* Optional to set different MI2S SD lines */
283 reg = <MI2S_PRIMARY>;
284 qcom,playback-sd-lines = <1>;
285 qcom,capture-sd-lines = <0>;