Re: [PATCH 1/2] ASoC: dt-bindings: qcom,q6dsp-lpass-ports: Add WSA2 audio ports IDs
From: neil . armstrong
Date: Mon Jan 26 2026 - 10:34:12 EST
[replaced krzk's and srini's adresses with korg ones]
On 10/23/23 13:41, Krzysztof Kozlowski wrote:
On 23/10/2023 10:37, Srinivas Kandagatla wrote:
Hi Krzysztof,
On 19/10/2023 16:35, Krzysztof Kozlowski wrote:
Add defines for audio ports used on Qualcomm WSA2 LPASS (Low Power
Audio SubSystem).
Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
---
include/dt-bindings/sound/qcom,q6dsp-lpass-ports.h | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/include/dt-bindings/sound/qcom,q6dsp-lpass-ports.h b/include/dt-bindings/sound/qcom,q6dsp-lpass-ports.h
index 39f203256c4f..c5ea35abf129 100644
--- a/include/dt-bindings/sound/qcom,q6dsp-lpass-ports.h
+++ b/include/dt-bindings/sound/qcom,q6dsp-lpass-ports.h
@@ -139,6 +139,11 @@
#define DISPLAY_PORT_RX_5 133
#define DISPLAY_PORT_RX_6 134
#define DISPLAY_PORT_RX_7 135
+#define WSA2_CODEC_DMA_RX_0 136
+#define WSA2_CODEC_DMA_TX_0 137
+#define WSA2_CODEC_DMA_RX_1 138
+#define WSA2_CODEC_DMA_TX_1 139
+#define WSA2_CODEC_DMA_TX_2 140
Patches looks fine as it is, but do you realize that this s a dead code
w.r.t upstream.
WSA2 is used only with 4 speaker setup and in such cases we use WSA
codec dma to drive 4 channels.
So WSA2 will not be used by itself.
I would prefer support for this to be added when we are really able to
test WSA2 by itself.
Sorry to dig a very old thread, but I'm hitting an issue with this on the Ayaneo Pocket S2.
The soundwire speakers are connected to the swr3 which is connected to WSA2, but nothing is connected
to swr0, so in order to play audio on those speakers the channel mask should be set to 1100, the lower
bits representing the WSA channels and the upper bits the WSA2 channels.
In the current setup, we can only pass num_channels, which will fill the mask as:
active_channels_mask = (1 << cfg->num_channels) - 1
So it's currently impossible to setup the mask for WSA2 only, and since the WSA2 lpaif_type doesn't exist
we cannot use that either.. With some small hack in sound/soc/qcom/qdsp6/audioreach.c we can set the mask correctly
but could you help figure out a proper way to handle this ?
I guess that in addition to min-channels & max-channels of DEVICE_SG_ADD() we could pass a mask ?
Neil
OK, the patchset can be ignored.
Best regards,
Krzysztof