[PATCH RFC 07/23] ASoC: dt-bindings: qcom,lpass-cpu: document the SM8650 LPASS

From: Neil Armstrong

Date: Fri Nov 13 2026 - 14:47:23 EST


The SM8650 LPASS can be driven by Linux through lpass-cpu, with extra LPAIF
instances, LPMs and clocks compared to the other SoCs.

Document the SM8650 LPASS CPU registers, clocks and interrupts.

Signed-off-by: Neil Armstrong <neil.armstrong@xxxxxxxxxx>
---
.../devicetree/bindings/sound/qcom,lpass-cpu.yaml | 74 ++++++++++++++++++++--
1 file changed, 68 insertions(+), 6 deletions(-)

diff --git a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
index 3a559bd07a79..f431173a0e88 100644
--- a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
+++ b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
@@ -23,32 +23,33 @@ properties:
- qcom,apq8016-lpass-cpu
- qcom,sc7180-lpass-cpu
- qcom,sc7280-lpass-cpu
+ - qcom,sm8650-lpass-cpu

reg:
minItems: 1
- maxItems: 6
+ maxItems: 8
description: LPAIF core registers

reg-names:
minItems: 1
- maxItems: 6
+ maxItems: 8

clocks:
minItems: 3
- maxItems: 10
+ maxItems: 16

clock-names:
minItems: 1
- maxItems: 10
+ maxItems: 16

interrupts:
minItems: 1
- maxItems: 4
+ maxItems: 6
description: LPAIF DMA buffer interrupt

interrupt-names:
minItems: 1
- maxItems: 4
+ maxItems: 6

qcom,adsp:
$ref: /schemas/types.yaml#/definitions/phandle
@@ -59,6 +60,8 @@ properties:
maxItems: 3
description: Phandle to apps_smmu node with sid mask

+ dma-coherent: true
+
power-domains:
maxItems: 1

@@ -241,6 +244,65 @@ allOf:
- iommus
- power-domains

+ - if:
+ properties:
+ compatible:
+ contains:
+ const: qcom,sm8650-lpass-cpu
+
+ then:
+ properties:
+ clocks:
+ minItems: 16
+ maxItems: 16
+ clock-names:
+ items:
+ - const: aon_cc_audio_hm_h
+ - const: core_cc_sysnoc_mport_core
+ - const: core_cc_ext_mclk0
+ - const: core_cc_ext_if0_ibit
+ - const: core_cc_ext_if1_ibit
+ - const: aon_cc_ext_if1_ibit
+ - const: audio_cc_ext_if1_ibit
+ - const: audio_cc_ext_if2_ibit
+ - const: audio_cc_ext_if4_ibit
+ - const: audio_cc_ext_if5_ibit
+ - const: audio_cc_codec_mem
+ - const: audio_cc_codec_mem0
+ - const: audio_cc_codec_mem1
+ - const: audio_cc_codec_mem2
+ - const: audio_cc_codec_mem3
+ - const: aon_cc_va_mem0
+ reg:
+ minItems: 8
+ maxItems: 8
+ reg-names:
+ items:
+ - const: lpass-hdmiif
+ - const: lpass-lpaif
+ - const: lpass-rxtx-cdc-dma-lpm
+ - const: lpass-rxtx-lpaif
+ - const: lpass-va-lpaif
+ - const: lpass-va-cdc-dma-lpm
+ - const: lpass-wsa-lpaif
+ - const: lpass-aud-lpaif
+ interrupts:
+ minItems: 6
+ maxItems: 6
+ interrupt-names:
+ items:
+ - const: lpass-irq-lpaif
+ - const: lpass-irq-hdmi
+ - const: lpass-irq-vaif
+ - const: lpass-irq-rxtxif
+ - const: lpass-irq-wsaif
+ - const: lpass-irq-audif
+ power-domain-names: false
+
+ required:
+ - iommus
+ - power-domains
+
examples:
- |
#include <dt-bindings/sound/sc7180-lpass.h>

--
2.34.1