public inbox for linux-sound@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 0/4] Enable audio over HDMI and
@ 2026-04-13  9:19 Kumar Anurag
  2026-04-13  9:19 ` [PATCH v1 1/4] arm64: dts: qcom: Enable secondary mi2s Kumar Anurag
                   ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: Kumar Anurag @ 2026-04-13  9:19 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Mark Brown,
	Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, devicetree, linux-kernel, linux-sound,
	Kumar Anurag

This series adds the dt and driver changes for enabling 
audio over HDMI and Displayport. 

Kumar Anurag (4):
  arm64: dts: qcom: Enable secondary mi2s
  arm64: dts: qcom: qcs6490: Enable DP audio
  ASoC: qcom: q6dsp: Update bit format support for secondary i2s
  ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup

 arch/arm64/boot/dts/qcom/kodiak.dtsi         |  5 ++
 arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 59 ++++++++++++++++++++
 sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c     |  7 ++-
 sound/soc/qcom/sc8280xp.c                    |  2 -
 4 files changed, 69 insertions(+), 4 deletions(-)

-- 
2.34.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH v1 1/4] arm64: dts: qcom: Enable secondary mi2s
  2026-04-13  9:19 [PATCH v1 0/4] Enable audio over HDMI and Kumar Anurag
@ 2026-04-13  9:19 ` Kumar Anurag
  2026-04-14 11:58   ` Konrad Dybcio
  2026-04-14 14:56   ` Dmitry Baryshkov
  2026-04-13  9:19 ` [PATCH v1 2/4] arm64: dts: qcom: qcs6490: Enable DP audio Kumar Anurag
                   ` (4 subsequent siblings)
  5 siblings, 2 replies; 16+ messages in thread
From: Kumar Anurag @ 2026-04-13  9:19 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Mark Brown,
	Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, devicetree, linux-kernel, linux-sound,
	Kumar Anurag

Enable secondary mi2s to support HDMI audio.

Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/kodiak.dtsi         |  5 +++
 arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 43 ++++++++++++++++++++
 2 files changed, 48 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/kodiak.dtsi b/arch/arm64/boot/dts/qcom/kodiak.dtsi
index 6079e67ea829..d1009debc12b 100644
--- a/arch/arm64/boot/dts/qcom/kodiak.dtsi
+++ b/arch/arm64/boot/dts/qcom/kodiak.dtsi
@@ -5827,6 +5827,11 @@ mi2s1_ws: mi2s1-ws-state {
 				function = "mi2s1_ws";
 			};
 
+			mi2s1_mclk: mi2s1-mclk-state {
+				pins = "gpio105";
+				function = "sec_mi2s";
+			};
+
 			pcie0_clkreq_n: pcie0-clkreq-n-state {
 				pins = "gpio88";
 				function = "pcie0_clkreqn";
diff --git a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
index e3d2f01881ae..2e4062052828 100644
--- a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
+++ b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
@@ -672,6 +672,7 @@ &i2c0 {
 	lt9611_codec: hdmi-bridge@2b {
 		compatible = "lontium,lt9611uxc";
 		reg = <0x2b>;
+		#sound-dai-cells = <1>;
 
 		interrupts-extended = <&tlmm 24 IRQ_TYPE_EDGE_FALLING>;
 		reset-gpios = <&pm7250b_gpios 2 GPIO_ACTIVE_HIGH>;
@@ -1110,6 +1111,9 @@ &sound {
 	compatible = "qcom,qcs6490-rb3gen2-sndcard";
 	model = "QCS6490-RB3Gen2";
 
+	pinctrl-0 = <&mi2s1_data0>, <&mi2s1_mclk>, <&mi2s1_sclk>, <&mi2s1_ws>;
+	pinctrl-names = "default";
+
 	audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
 			"SpkrRight IN", "WSA_SPK2 OUT",
 			"VA DMIC0", "vdd-micb",
@@ -1149,6 +1153,22 @@ platform {
 			sound-dai = <&q6apm>;
 		};
 	};
+
+	mi2s1-playback-dai-link {
+		link-name = "Secondary MI2S Playback";
+
+		codec {
+			sound-dai = <&lt9611_codec 0>;
+		};
+
+		cpu {
+			sound-dai = <&q6apmbedai SECONDARY_MI2S_RX>;
+		};
+
+		platform {
+			sound-dai = <&q6apm>;
+		};
+	};
 };
 
 &swr2 {
@@ -1437,3 +1457,26 @@ &lpass_audiocc {
 	compatible = "qcom,qcm6490-lpassaudiocc";
 	/delete-property/ power-domains;
 };
+
+&mi2s1_data0 {
+	drive-strength = <8>;
+	bias-disable;
+};
+
+&mi2s1_mclk {
+	drive-strength = <8>;
+	bias-disable;
+	output-high;
+};
+
+&mi2s1_sclk {
+	drive-strength = <8>;
+	bias-disable;
+	output-high;
+};
+
+&mi2s1_ws {
+	drive-strength = <8>;
+	bias-disable;
+	output-high;
+};
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 2/4] arm64: dts: qcom: qcs6490: Enable DP audio
  2026-04-13  9:19 [PATCH v1 0/4] Enable audio over HDMI and Kumar Anurag
  2026-04-13  9:19 ` [PATCH v1 1/4] arm64: dts: qcom: Enable secondary mi2s Kumar Anurag
@ 2026-04-13  9:19 ` Kumar Anurag
  2026-04-14  9:28   ` Konrad Dybcio
  2026-04-14 14:58   ` Dmitry Baryshkov
  2026-04-13  9:19 ` [PATCH v1 3/4] ASoC: qcom: q6dsp: Update bit format support for secondary i2s Kumar Anurag
                   ` (3 subsequent siblings)
  5 siblings, 2 replies; 16+ messages in thread
From: Kumar Anurag @ 2026-04-13  9:19 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Mark Brown,
	Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, devicetree, linux-kernel, linux-sound,
	Kumar Anurag

Add new dai link to enable DP audio.

Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
index 2e4062052828..90fd8822dabd 100644
--- a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
+++ b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
@@ -1169,6 +1169,22 @@ platform {
 			sound-dai = <&q6apm>;
 		};
 	};
+
+	dp-dai-link {
+		link-name = "DisplayPort0 Playback";
+
+		codec {
+			sound-dai = <&mdss_dp>;
+		};
+
+		cpu {
+			sound-dai = <&q6apmbedai DISPLAY_PORT_RX_0>;
+		};
+
+		platform {
+			sound-dai = <&q6apm>;
+		};
+	};
 };
 
 &swr2 {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 3/4] ASoC: qcom: q6dsp: Update bit format support for secondary i2s
  2026-04-13  9:19 [PATCH v1 0/4] Enable audio over HDMI and Kumar Anurag
  2026-04-13  9:19 ` [PATCH v1 1/4] arm64: dts: qcom: Enable secondary mi2s Kumar Anurag
  2026-04-13  9:19 ` [PATCH v1 2/4] arm64: dts: qcom: qcs6490: Enable DP audio Kumar Anurag
@ 2026-04-13  9:19 ` Kumar Anurag
  2026-04-14  9:54   ` Konrad Dybcio
                     ` (2 more replies)
  2026-04-13  9:19 ` [PATCH v1 4/4] ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup Kumar Anurag
                   ` (2 subsequent siblings)
  5 siblings, 3 replies; 16+ messages in thread
From: Kumar Anurag @ 2026-04-13  9:19 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Mark Brown,
	Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, devicetree, linux-kernel, linux-sound,
	Kumar Anurag

Add 32bit for playback and capture over secondary mi2s.

Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
---
 sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c b/sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c
index 4eed54b071a5..0664f18d7a44 100644
--- a/sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c
+++ b/sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c
@@ -380,7 +380,9 @@ static struct snd_soc_dai_driver q6dsp_audio_fe_dais[] = {
 			.stream_name = "Secondary MI2S Playback",
 			.rates = SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_8000 |
 				 SNDRV_PCM_RATE_16000,
-			.formats = SNDRV_PCM_FMTBIT_S16_LE,
+			.formats = SNDRV_PCM_FMTBIT_S16_LE |
+				   SNDRV_PCM_FMTBIT_S24_LE |
+				   SNDRV_PCM_FMTBIT_S32_LE,
 			.channels_min = 1,
 			.channels_max = 8,
 			.rate_min =     8000,
@@ -394,7 +396,8 @@ static struct snd_soc_dai_driver q6dsp_audio_fe_dais[] = {
 			.rates = SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_8000 |
 				 SNDRV_PCM_RATE_16000,
 			.formats = SNDRV_PCM_FMTBIT_S16_LE |
-				   SNDRV_PCM_FMTBIT_S24_LE,
+				   SNDRV_PCM_FMTBIT_S24_LE |
+				   SNDRV_PCM_FMTBIT_S32_LE,
 			.channels_min = 1,
 			.channels_max = 8,
 			.rate_min =     8000,
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 4/4] ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup
  2026-04-13  9:19 [PATCH v1 0/4] Enable audio over HDMI and Kumar Anurag
                   ` (2 preceding siblings ...)
  2026-04-13  9:19 ` [PATCH v1 3/4] ASoC: qcom: q6dsp: Update bit format support for secondary i2s Kumar Anurag
@ 2026-04-13  9:19 ` Kumar Anurag
  2026-04-14 11:40   ` Mark Brown
  2026-04-15 11:06   ` Alexey Klimov
  2026-04-14 14:54 ` [PATCH v1 0/4] Enable audio over HDMI and Dmitry Baryshkov
  2026-04-14 14:58 ` Dmitry Baryshkov
  5 siblings, 2 replies; 16+ messages in thread
From: Kumar Anurag @ 2026-04-13  9:19 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Mark Brown,
	Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, devicetree, linux-kernel, linux-sound,
	Kumar Anurag

The machine driver was unconditionally forcing S16_LE in
sc8280xp_be_hw_params_fixup(), which prevents links (e.g. HDMI bridges)
that require 32-bit formats from working. Drop the format override and
keep only the fixed rate/channels constraints.

Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
---
 sound/soc/qcom/sc8280xp.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/sound/soc/qcom/sc8280xp.c b/sound/soc/qcom/sc8280xp.c
index 7925aa3f63ba..c00eabf200b7 100644
--- a/sound/soc/qcom/sc8280xp.c
+++ b/sound/soc/qcom/sc8280xp.c
@@ -75,10 +75,8 @@ static int sc8280xp_be_hw_params_fixup(struct snd_soc_pcm_runtime *rtd,
 					SNDRV_PCM_HW_PARAM_RATE);
 	struct snd_interval *channels = hw_param_interval(params,
 					SNDRV_PCM_HW_PARAM_CHANNELS);
-	struct snd_mask *fmt = hw_param_mask(params, SNDRV_PCM_HW_PARAM_FORMAT);
 
 	rate->min = rate->max = 48000;
-	snd_mask_set_format(fmt, SNDRV_PCM_FORMAT_S16_LE);
 	channels->min = 2;
 	channels->max = 2;
 	switch (cpu_dai->id) {
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 2/4] arm64: dts: qcom: qcs6490: Enable DP audio
  2026-04-13  9:19 ` [PATCH v1 2/4] arm64: dts: qcom: qcs6490: Enable DP audio Kumar Anurag
@ 2026-04-14  9:28   ` Konrad Dybcio
  2026-04-14 14:58   ` Dmitry Baryshkov
  1 sibling, 0 replies; 16+ messages in thread
From: Konrad Dybcio @ 2026-04-14  9:28 UTC (permalink / raw)
  To: Kumar Anurag, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Srinivas Kandagatla,
	Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, devicetree, linux-kernel, linux-sound

On 4/13/26 11:19 AM, Kumar Anurag wrote:
> Add new dai link to enable DP audio.
> 
> Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
> ---

subject: qcs6490-rb3gen2

Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>

Konrad

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 3/4] ASoC: qcom: q6dsp: Update bit format support for secondary i2s
  2026-04-13  9:19 ` [PATCH v1 3/4] ASoC: qcom: q6dsp: Update bit format support for secondary i2s Kumar Anurag
@ 2026-04-14  9:54   ` Konrad Dybcio
  2026-04-14 11:38   ` Mark Brown
  2026-04-14 14:21   ` Srinivas Kandagatla
  2 siblings, 0 replies; 16+ messages in thread
From: Konrad Dybcio @ 2026-04-14  9:54 UTC (permalink / raw)
  To: Kumar Anurag, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Srinivas Kandagatla,
	Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, devicetree, linux-kernel, linux-sound

On 4/13/26 11:19 AM, Kumar Anurag wrote:
> Add 32bit for playback and capture over secondary mi2s.
> 
> Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
> ---

Would this apply to the other 5 I2S ports as well?

Konrad

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 3/4] ASoC: qcom: q6dsp: Update bit format support for secondary i2s
  2026-04-13  9:19 ` [PATCH v1 3/4] ASoC: qcom: q6dsp: Update bit format support for secondary i2s Kumar Anurag
  2026-04-14  9:54   ` Konrad Dybcio
@ 2026-04-14 11:38   ` Mark Brown
  2026-04-14 14:21   ` Srinivas Kandagatla
  2 siblings, 0 replies; 16+ messages in thread
From: Mark Brown @ 2026-04-14 11:38 UTC (permalink / raw)
  To: Kumar Anurag
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Jaroslav Kysela,
	Takashi Iwai, linux-arm-msm, devicetree, linux-kernel,
	linux-sound

[-- Attachment #1: Type: text/plain, Size: 342 bytes --]

On Mon, Apr 13, 2026 at 02:19:36AM -0700, Kumar Anurag wrote:

> Add 32bit for playback and capture over secondary mi2s.

> -			.formats = SNDRV_PCM_FMTBIT_S16_LE,
> +			.formats = SNDRV_PCM_FMTBIT_S16_LE |
> +				   SNDRV_PCM_FMTBIT_S24_LE |
> +				   SNDRV_PCM_FMTBIT_S32_LE,

The commit message said 32 bit but this is both 24 and 32 bit.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 4/4] ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup
  2026-04-13  9:19 ` [PATCH v1 4/4] ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup Kumar Anurag
@ 2026-04-14 11:40   ` Mark Brown
  2026-04-15 11:06   ` Alexey Klimov
  1 sibling, 0 replies; 16+ messages in thread
From: Mark Brown @ 2026-04-14 11:40 UTC (permalink / raw)
  To: Kumar Anurag
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Jaroslav Kysela,
	Takashi Iwai, linux-arm-msm, devicetree, linux-kernel,
	linux-sound

[-- Attachment #1: Type: text/plain, Size: 872 bytes --]

On Mon, Apr 13, 2026 at 02:19:37AM -0700, Kumar Anurag wrote:
> The machine driver was unconditionally forcing S16_LE in
> sc8280xp_be_hw_params_fixup(), which prevents links (e.g. HDMI bridges)
> that require 32-bit formats from working. Drop the format override and
> keep only the fixed rate/channels constraints.

>  	struct snd_interval *channels = hw_param_interval(params,
>  					SNDRV_PCM_HW_PARAM_CHANNELS);
> -	struct snd_mask *fmt = hw_param_mask(params, SNDRV_PCM_HW_PARAM_FORMAT);
>  
>  	rate->min = rate->max = 48000;
> -	snd_mask_set_format(fmt, SNDRV_PCM_FORMAT_S16_LE);

This breaks compressed playback, for compressed streams we need to
override the format since the DSP will be converting an input compressed
stream to a PCM one.  See 9565c9d53c5b (ASoC: qcom: sc8280xp: explicitly
set S16LE format in sc8280xp_be_hw_params_fixup()).

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 1/4] arm64: dts: qcom: Enable secondary mi2s
  2026-04-13  9:19 ` [PATCH v1 1/4] arm64: dts: qcom: Enable secondary mi2s Kumar Anurag
@ 2026-04-14 11:58   ` Konrad Dybcio
  2026-04-14 14:56   ` Dmitry Baryshkov
  1 sibling, 0 replies; 16+ messages in thread
From: Konrad Dybcio @ 2026-04-14 11:58 UTC (permalink / raw)
  To: Kumar Anurag, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Srinivas Kandagatla,
	Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, devicetree, linux-kernel, linux-sound

On 4/13/26 11:19 AM, Kumar Anurag wrote:
> Enable secondary mi2s to support HDMI audio.
> 
> Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
> ---

[...]

> +&mi2s1_data0 {
> +	drive-strength = <8>;
> +	bias-disable;
> +};
> +
> +&mi2s1_mclk {
> +	drive-strength = <8>;
> +	bias-disable;
> +	output-high;
> +};
> +
> +&mi2s1_sclk {
> +	drive-strength = <8>;
> +	bias-disable;
> +	output-high;
> +};
> +
> +&mi2s1_ws {
> +	drive-strength = <8>;
> +	bias-disable;
> +	output-high;

For these pins in their "mission mode" function, do we expect these
pincfg settings to ever change (i.e. across boards, will the drive-strength/
bias/output properties differ?)

Konrad

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 3/4] ASoC: qcom: q6dsp: Update bit format support for secondary i2s
  2026-04-13  9:19 ` [PATCH v1 3/4] ASoC: qcom: q6dsp: Update bit format support for secondary i2s Kumar Anurag
  2026-04-14  9:54   ` Konrad Dybcio
  2026-04-14 11:38   ` Mark Brown
@ 2026-04-14 14:21   ` Srinivas Kandagatla
  2 siblings, 0 replies; 16+ messages in thread
From: Srinivas Kandagatla @ 2026-04-14 14:21 UTC (permalink / raw)
  To: Kumar Anurag, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Srinivas Kandagatla,
	Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, devicetree, linux-kernel, linux-sound



On 4/13/26 9:19 AM, Kumar Anurag wrote:
> Add 32bit for playback and capture over secondary mi2s.
> 
> Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
> ---

Pretty much simillar changes a are already submitted by "	[PATCH v1 0/2]
ASoC: qcom: q6dsp-lpass-ports: Add support for extended sampling rates
and PCM formats"  https://lkml.org/lkml/2025/11/18/673


--srini


>  sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c b/sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c
> index 4eed54b071a5..0664f18d7a44 100644
> --- a/sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c
> +++ b/sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c
> @@ -380,7 +380,9 @@ static struct snd_soc_dai_driver q6dsp_audio_fe_dais[] = {
>  			.stream_name = "Secondary MI2S Playback",
>  			.rates = SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_8000 |
>  				 SNDRV_PCM_RATE_16000,
> -			.formats = SNDRV_PCM_FMTBIT_S16_LE,
> +			.formats = SNDRV_PCM_FMTBIT_S16_LE |
> +				   SNDRV_PCM_FMTBIT_S24_LE |
> +				   SNDRV_PCM_FMTBIT_S32_LE,
>  			.channels_min = 1,
>  			.channels_max = 8,
>  			.rate_min =     8000,
> @@ -394,7 +396,8 @@ static struct snd_soc_dai_driver q6dsp_audio_fe_dais[] = {
>  			.rates = SNDRV_PCM_RATE_48000 | SNDRV_PCM_RATE_8000 |
>  				 SNDRV_PCM_RATE_16000,
>  			.formats = SNDRV_PCM_FMTBIT_S16_LE |
> -				   SNDRV_PCM_FMTBIT_S24_LE,
> +				   SNDRV_PCM_FMTBIT_S24_LE |
> +				   SNDRV_PCM_FMTBIT_S32_LE,
>  			.channels_min = 1,
>  			.channels_max = 8,
>  			.rate_min =     8000,


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 0/4] Enable audio over HDMI and
  2026-04-13  9:19 [PATCH v1 0/4] Enable audio over HDMI and Kumar Anurag
                   ` (3 preceding siblings ...)
  2026-04-13  9:19 ` [PATCH v1 4/4] ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup Kumar Anurag
@ 2026-04-14 14:54 ` Dmitry Baryshkov
  2026-04-14 14:58 ` Dmitry Baryshkov
  5 siblings, 0 replies; 16+ messages in thread
From: Dmitry Baryshkov @ 2026-04-14 14:54 UTC (permalink / raw)
  To: Kumar Anurag
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Mark Brown,
	Jaroslav Kysela, Takashi Iwai, linux-arm-msm, devicetree,
	linux-kernel, linux-sound

On Mon, Apr 13, 2026 at 02:19:33AM -0700, Kumar Anurag wrote:
> This series adds the dt and driver changes for enabling 
> audio over HDMI and Displayport. 

Starting from the cover letter subject. On which platform?

> 
> Kumar Anurag (4):
>   arm64: dts: qcom: Enable secondary mi2s
>   arm64: dts: qcom: qcs6490: Enable DP audio
>   ASoC: qcom: q6dsp: Update bit format support for secondary i2s
>   ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup
> 
>  arch/arm64/boot/dts/qcom/kodiak.dtsi         |  5 ++
>  arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 59 ++++++++++++++++++++
>  sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c     |  7 ++-
>  sound/soc/qcom/sc8280xp.c                    |  2 -
>  4 files changed, 69 insertions(+), 4 deletions(-)
> 
> -- 
> 2.34.1
> 

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 1/4] arm64: dts: qcom: Enable secondary mi2s
  2026-04-13  9:19 ` [PATCH v1 1/4] arm64: dts: qcom: Enable secondary mi2s Kumar Anurag
  2026-04-14 11:58   ` Konrad Dybcio
@ 2026-04-14 14:56   ` Dmitry Baryshkov
  1 sibling, 0 replies; 16+ messages in thread
From: Dmitry Baryshkov @ 2026-04-14 14:56 UTC (permalink / raw)
  To: Kumar Anurag
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Mark Brown,
	Jaroslav Kysela, Takashi Iwai, linux-arm-msm, devicetree,
	linux-kernel, linux-sound

On Mon, Apr 13, 2026 at 02:19:34AM -0700, Kumar Anurag wrote:
> Enable secondary mi2s to support HDMI audio.

Please also correct subject line to mention kodiak.

> 
> Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
> ---
>  arch/arm64/boot/dts/qcom/kodiak.dtsi         |  5 +++
>  arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 43 ++++++++++++++++++++
>  2 files changed, 48 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/kodiak.dtsi b/arch/arm64/boot/dts/qcom/kodiak.dtsi
> index 6079e67ea829..d1009debc12b 100644
> --- a/arch/arm64/boot/dts/qcom/kodiak.dtsi
> +++ b/arch/arm64/boot/dts/qcom/kodiak.dtsi
> @@ -5827,6 +5827,11 @@ mi2s1_ws: mi2s1-ws-state {
>  				function = "mi2s1_ws";
>  			};
>  
> +			mi2s1_mclk: mi2s1-mclk-state {
> +				pins = "gpio105";
> +				function = "sec_mi2s";
> +			};
> +
>  			pcie0_clkreq_n: pcie0-clkreq-n-state {
>  				pins = "gpio88";
>  				function = "pcie0_clkreqn";
> diff --git a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
> index e3d2f01881ae..2e4062052828 100644
> --- a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
> +++ b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
> @@ -672,6 +672,7 @@ &i2c0 {
>  	lt9611_codec: hdmi-bridge@2b {
>  		compatible = "lontium,lt9611uxc";
>  		reg = <0x2b>;
> +		#sound-dai-cells = <1>;

Separate patch.

>  
>  		interrupts-extended = <&tlmm 24 IRQ_TYPE_EDGE_FALLING>;
>  		reset-gpios = <&pm7250b_gpios 2 GPIO_ACTIVE_HIGH>;
> @@ -1110,6 +1111,9 @@ &sound {
>  	compatible = "qcom,qcs6490-rb3gen2-sndcard";
>  	model = "QCS6490-RB3Gen2";
>  
> +	pinctrl-0 = <&mi2s1_data0>, <&mi2s1_mclk>, <&mi2s1_sclk>, <&mi2s1_ws>;
> +	pinctrl-names = "default";
> +
>  	audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
>  			"SpkrRight IN", "WSA_SPK2 OUT",
>  			"VA DMIC0", "vdd-micb",
> @@ -1149,6 +1153,22 @@ platform {
>  			sound-dai = <&q6apm>;
>  		};
>  	};
> +
> +	mi2s1-playback-dai-link {

Keep the entries sorted. mi2s1 < va

> +		link-name = "Secondary MI2S Playback";
> +
> +		codec {
> +			sound-dai = <&lt9611_codec 0>;
> +		};
> +
> +		cpu {
> +			sound-dai = <&q6apmbedai SECONDARY_MI2S_RX>;
> +		};
> +
> +		platform {
> +			sound-dai = <&q6apm>;
> +		};
> +	};
>  };
>  
>  &swr2 {
> @@ -1437,3 +1457,26 @@ &lpass_audiocc {
>  	compatible = "qcom,qcm6490-lpassaudiocc";
>  	/delete-property/ power-domains;
>  };
> +
> +&mi2s1_data0 {
> +	drive-strength = <8>;
> +	bias-disable;
> +};
> +
> +&mi2s1_mclk {
> +	drive-strength = <8>;
> +	bias-disable;
> +	output-high;
> +};
> +
> +&mi2s1_sclk {
> +	drive-strength = <8>;
> +	bias-disable;
> +	output-high;
> +};
> +
> +&mi2s1_ws {
> +	drive-strength = <8>;
> +	bias-disable;
> +	output-high;
> +};
> -- 
> 2.34.1
> 

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 2/4] arm64: dts: qcom: qcs6490: Enable DP audio
  2026-04-13  9:19 ` [PATCH v1 2/4] arm64: dts: qcom: qcs6490: Enable DP audio Kumar Anurag
  2026-04-14  9:28   ` Konrad Dybcio
@ 2026-04-14 14:58   ` Dmitry Baryshkov
  1 sibling, 0 replies; 16+ messages in thread
From: Dmitry Baryshkov @ 2026-04-14 14:58 UTC (permalink / raw)
  To: Kumar Anurag
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Mark Brown,
	Jaroslav Kysela, Takashi Iwai, linux-arm-msm, devicetree,
	linux-kernel, linux-sound

On Mon, Apr 13, 2026 at 02:19:35AM -0700, Kumar Anurag wrote:
> Add new dai link to enable DP audio.

DAI

Also, will this enable audio for the USB-C DP only? Please add support
for audio over the mini-DP port (or mention that it's not available in
HW).

> 
> Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
> ---
>  arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
> index 2e4062052828..90fd8822dabd 100644
> --- a/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
> +++ b/arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts
> @@ -1169,6 +1169,22 @@ platform {
>  			sound-dai = <&q6apm>;
>  		};
>  	};
> +
> +	dp-dai-link {

Still keep it sorted.

> +		link-name = "DisplayPort0 Playback";
> +
> +		codec {
> +			sound-dai = <&mdss_dp>;
> +		};
> +
> +		cpu {
> +			sound-dai = <&q6apmbedai DISPLAY_PORT_RX_0>;
> +		};
> +
> +		platform {
> +			sound-dai = <&q6apm>;
> +		};
> +	};
>  };
>  
>  &swr2 {
> -- 
> 2.34.1
> 

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 0/4] Enable audio over HDMI and
  2026-04-13  9:19 [PATCH v1 0/4] Enable audio over HDMI and Kumar Anurag
                   ` (4 preceding siblings ...)
  2026-04-14 14:54 ` [PATCH v1 0/4] Enable audio over HDMI and Dmitry Baryshkov
@ 2026-04-14 14:58 ` Dmitry Baryshkov
  5 siblings, 0 replies; 16+ messages in thread
From: Dmitry Baryshkov @ 2026-04-14 14:58 UTC (permalink / raw)
  To: Kumar Anurag
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Srinivas Kandagatla, Liam Girdwood, Mark Brown,
	Jaroslav Kysela, Takashi Iwai, linux-arm-msm, devicetree,
	linux-kernel, linux-sound

On Mon, Apr 13, 2026 at 02:19:33AM -0700, Kumar Anurag wrote:
> This series adds the dt and driver changes for enabling 
> audio over HDMI and Displayport. 

Do we need topology changes or UCM changes for these to work?

> 
> Kumar Anurag (4):
>   arm64: dts: qcom: Enable secondary mi2s
>   arm64: dts: qcom: qcs6490: Enable DP audio
>   ASoC: qcom: q6dsp: Update bit format support for secondary i2s
>   ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup
> 
>  arch/arm64/boot/dts/qcom/kodiak.dtsi         |  5 ++
>  arch/arm64/boot/dts/qcom/qcs6490-rb3gen2.dts | 59 ++++++++++++++++++++
>  sound/soc/qcom/qdsp6/q6dsp-lpass-ports.c     |  7 ++-
>  sound/soc/qcom/sc8280xp.c                    |  2 -
>  4 files changed, 69 insertions(+), 4 deletions(-)
> 
> -- 
> 2.34.1
> 

-- 
With best wishes
Dmitry

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 4/4] ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup
  2026-04-13  9:19 ` [PATCH v1 4/4] ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup Kumar Anurag
  2026-04-14 11:40   ` Mark Brown
@ 2026-04-15 11:06   ` Alexey Klimov
  1 sibling, 0 replies; 16+ messages in thread
From: Alexey Klimov @ 2026-04-15 11:06 UTC (permalink / raw)
  To: Kumar Anurag, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Srinivas Kandagatla,
	Liam Girdwood, Mark Brown, Jaroslav Kysela, Takashi Iwai
  Cc: linux-arm-msm, devicetree, linux-kernel, linux-sound

On Mon Apr 13, 2026 at 10:19 AM BST, Kumar Anurag wrote:
> The machine driver was unconditionally forcing S16_LE in
> sc8280xp_be_hw_params_fixup(), which prevents links (e.g. HDMI bridges)
> that require 32-bit formats from working. Drop the format override and
> keep only the fixed rate/channels constraints.

Why the format override is no longer needed? Please add it in the
description.

> Signed-off-by: Kumar Anurag <kumar.singh@oss.qualcomm.com>
> ---
>  sound/soc/qcom/sc8280xp.c | 2 --
>  1 file changed, 2 deletions(-)
>
> diff --git a/sound/soc/qcom/sc8280xp.c b/sound/soc/qcom/sc8280xp.c
> index 7925aa3f63ba..c00eabf200b7 100644
> --- a/sound/soc/qcom/sc8280xp.c
> +++ b/sound/soc/qcom/sc8280xp.c
> @@ -75,10 +75,8 @@ static int sc8280xp_be_hw_params_fixup(struct snd_soc_pcm_runtime *rtd,
>  					SNDRV_PCM_HW_PARAM_RATE);
>  	struct snd_interval *channels = hw_param_interval(params,
>  					SNDRV_PCM_HW_PARAM_CHANNELS);
> -	struct snd_mask *fmt = hw_param_mask(params, SNDRV_PCM_HW_PARAM_FORMAT);
>  
>  	rate->min = rate->max = 48000;
> -	snd_mask_set_format(fmt, SNDRV_PCM_FORMAT_S16_LE);

Does compressed playback work after this change? How did you test it?

Will it be possible with this series to have compressed playback via
HDMI (with 32-bit format, right?)? You might need to add some
functionality for this in topology.

Thanks,
Alexey

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2026-04-15 11:06 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-13  9:19 [PATCH v1 0/4] Enable audio over HDMI and Kumar Anurag
2026-04-13  9:19 ` [PATCH v1 1/4] arm64: dts: qcom: Enable secondary mi2s Kumar Anurag
2026-04-14 11:58   ` Konrad Dybcio
2026-04-14 14:56   ` Dmitry Baryshkov
2026-04-13  9:19 ` [PATCH v1 2/4] arm64: dts: qcom: qcs6490: Enable DP audio Kumar Anurag
2026-04-14  9:28   ` Konrad Dybcio
2026-04-14 14:58   ` Dmitry Baryshkov
2026-04-13  9:19 ` [PATCH v1 3/4] ASoC: qcom: q6dsp: Update bit format support for secondary i2s Kumar Anurag
2026-04-14  9:54   ` Konrad Dybcio
2026-04-14 11:38   ` Mark Brown
2026-04-14 14:21   ` Srinivas Kandagatla
2026-04-13  9:19 ` [PATCH v1 4/4] ASoC: qcom: sc8280xp: don't force S16_LE in hw_params fixup Kumar Anurag
2026-04-14 11:40   ` Mark Brown
2026-04-15 11:06   ` Alexey Klimov
2026-04-14 14:54 ` [PATCH v1 0/4] Enable audio over HDMI and Dmitry Baryshkov
2026-04-14 14:58 ` Dmitry Baryshkov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox