* [PATCH v1] arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link
@ 2026-11-05 10:40 Chiluka Rohith
2026-11-05 11:03 ` sashiko-bot
0 siblings, 1 reply; 7+ messages in thread
From: Chiluka Rohith @ 2026-11-05 10:40 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: Abel Vesa, linux-arm-msm, devicetree, linux-kernel,
Chiluka Rohith
Add a DAI link for the DisplayPort RX path so that audio can be
routed over DisplayPort on glymur-crd. The link wires up the
DISPLAY_PORT_RX_1 backend of the q6apm ADSP to the mdss_dp1
controller, with q6apm providing the platform (DMA) component.
Signed-off-by: Chiluka Rohith <rohith.chiluka@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/glymur-crd.dtsi | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
index 58158b51fe29..eee75da20198 100644
--- a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
+++ b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
@@ -268,6 +268,22 @@ platform {
};
};
+ dp-dai-link {
+ link-name = "DISPLAY_PORT-RX";
+
+ codec {
+ sound-dai = <&mdss_dp1>;
+ };
+
+ cpu {
+ sound-dai = <&q6apmbedai DISPLAY_PORT_RX_1>;
+ };
+
+ platform {
+ sound-dai = <&q6apm>;
+ };
+ };
+
va-dai-link {
link-name = "VA Capture";
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v1] arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link
@ 2026-11-05 10:46 Chiluka Rohith
2026-11-05 10:56 ` sashiko-bot
0 siblings, 1 reply; 7+ messages in thread
From: Chiluka Rohith @ 2026-11-05 10:46 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: Abel Vesa, linux-arm-msm, devicetree, linux-kernel,
Chiluka Rohith
Add a DAI link for the DisplayPort RX path so that audio can be
routed over DisplayPort on glymur-crd. The link wires up the
DISPLAY_PORT_RX_1 backend of the q6apm ADSP to the mdss_dp1
controller, with q6apm providing the platform (DMA) component.
Signed-off-by: Chiluka Rohith <rohith.chiluka@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/glymur-crd.dtsi | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
index 58158b51fe29..eee75da20198 100644
--- a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
+++ b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
@@ -268,6 +268,22 @@ platform {
};
};
+ dp-dai-link {
+ link-name = "DISPLAY_PORT-RX";
+
+ codec {
+ sound-dai = <&mdss_dp1>;
+ };
+
+ cpu {
+ sound-dai = <&q6apmbedai DISPLAY_PORT_RX_1>;
+ };
+
+ platform {
+ sound-dai = <&q6apm>;
+ };
+ };
+
va-dai-link {
link-name = "VA Capture";
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH v1] arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link
@ 2026-11-05 10:46 Chiluka Rohith
2026-11-05 11:11 ` sashiko-bot
2026-11-05 12:07 ` Konrad Dybcio
0 siblings, 2 replies; 7+ messages in thread
From: Chiluka Rohith @ 2026-11-05 10:46 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: Abel Vesa, linux-arm-msm, devicetree, linux-kernel,
Chiluka Rohith
Add a DAI link for the DisplayPort RX path so that audio can be
routed over DisplayPort on glymur-crd. The link wires up the
DISPLAY_PORT_RX_1 backend of the q6apm ADSP to the mdss_dp1
controller, with q6apm providing the platform (DMA) component.
Signed-off-by: Chiluka Rohith <rohith.chiluka@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/glymur-crd.dtsi | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
index 58158b51fe29..eee75da20198 100644
--- a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
+++ b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
@@ -268,6 +268,22 @@ platform {
};
};
+ dp-dai-link {
+ link-name = "DISPLAY_PORT-RX";
+
+ codec {
+ sound-dai = <&mdss_dp1>;
+ };
+
+ cpu {
+ sound-dai = <&q6apmbedai DISPLAY_PORT_RX_1>;
+ };
+
+ platform {
+ sound-dai = <&q6apm>;
+ };
+ };
+
va-dai-link {
link-name = "VA Capture";
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH v1] arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link
2026-11-05 10:46 Chiluka Rohith
@ 2026-11-05 10:56 ` sashiko-bot
0 siblings, 0 replies; 7+ messages in thread
From: sashiko-bot @ 2026-11-05 10:56 UTC (permalink / raw)
To: Chiluka Rohith; +Cc: devicetree, robh, conor+dt
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] arm64: dts: qcom: glymur-crd: dp-dai-link breaks sound probe on mahua-crd
--
commit a434cb6530336de83a46c26f22333629bcaaf510
Author: Chiluka Rohith <rohith.chiluka@oss.qualcomm.com>
arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link
This commit adds a DisplayPort RX DAI link to the sound node in
glymur-crd.dtsi, wiring the DISPLAY_PORT_RX_1 backend of q6apmbedai to the
mdss_dp1 controller.
> diff --git a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
> index 58158b51fe295..eee75da201983 100644
> --- a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
> +++ b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
> @@ -268,6 +268,22 @@ platform {
> };
> };
>
> + dp-dai-link {
> + link-name = "DISPLAY_PORT-RX";
> +
> + codec {
> + sound-dai = <&mdss_dp1>;
> + };
> +
> + cpu {
> + sound-dai = <&q6apmbedai DISPLAY_PORT_RX_1>;
> + };
> +
> + platform {
> + sound-dai = <&q6apm>;
> + };
> + };
[Severity: High]
Will adding this unconditionally enabled dp-dai-link node in glymur-crd.dtsi
break sound card probe on mahua-crd?
arch/arm64/boot/dts/qcom/glymur-crd.dtsi is shared by both glymur-crd.dts and
mahua-crd.dts:
arch/arm64/boot/dts/qcom/mahua-crd.dts:
#include "mahua.dtsi"
#include "glymur-crd.dtsi"
In arch/arm64/boot/dts/qcom/glymur.dtsi (included by both glymur-crd.dts and
mahua.dtsi), mdss_dp0 and mdss_dp1 default to disabled:
arch/arm64/boot/dts/qcom/glymur.dtsi:
mdss_dp1: displayport-controller@aea0000 {
...
#sound-dai-cells = <0>;
status = "disabled";
mdss_dp0 and mdss_dp1 are only enabled in glymur-crd.dts, while remaining
disabled in mahua.dtsi and mahua-crd.dts:
arch/arm64/boot/dts/qcom/glymur-crd.dts:
&mdss_dp0 {
status = "okay";
};
&mdss_dp1 {
status = "okay";
};
When x1e80100_platform_probe() -> qcom_snd_parse_of() parses the available
child nodes of /sound on mahua-crd, it calls:
qcom_snd_parse_of()
-> snd_soc_of_get_dai_link_codecs()
-> snd_soc_of_get_dlc()
-> snd_soc_get_dlc()
Because mdss_dp1 is disabled on mahua-crd, the DP controller never probes or
registers its hdmi-audio-codec ASoC component, causing snd_soc_get_dlc() to
return -EPROBE_DEFER indefinitely and preventing the entire sound card (and
existing WSA speaker and VA capture links) from probing on Mahua CRD.
In addition, glymur-crd.dts enables both mdss_dp0 and mdss_dp1, whereas this
patch only adds a DAI link for mdss_dp1. Should the DP DAI link(s) match the
enabled DP controllers and only be enabled where the corresponding mdss_dp
nodes are enabled?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261105104624.621024-1-rohith.chiluka@oss.qualcomm.com?part=1
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v1] arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link
2026-11-05 10:40 Chiluka Rohith
@ 2026-11-05 11:03 ` sashiko-bot
0 siblings, 0 replies; 7+ messages in thread
From: sashiko-bot @ 2026-11-05 11:03 UTC (permalink / raw)
To: Chiluka Rohith; +Cc: devicetree, robh, conor+dt
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [High] arm64: dts: qcom: glymur-crd: dp-dai-link breaks sound probe on mahua-crd
- [Medium] arm64: dts: qcom: glymur-crd: missing mdss_dp0 DAI link and disabled mdss_dp1 on mahua-crd
--
commit 08a824dc35410c5805c76e45de4e1800714bcfaf
Author: Chiluka Rohith <rohith.chiluka@oss.qualcomm.com>
arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link
This commit adds a DisplayPort RX DAI link to the sound node in
glymur-crd.dtsi, connecting the q6apmbedai DISPLAY_PORT_RX_1 backend to the
mdss_dp1 controller.
> diff --git a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
> index 58158b51fe295..eee75da201983 100644
> --- a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
> +++ b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
> @@ -268,6 +268,22 @@ platform {
> };
> };
>
> + dp-dai-link {
> + link-name = "DISPLAY_PORT-RX";
> +
> + codec {
> + sound-dai = <&mdss_dp1>;
> + };
[Severity: High]
Does adding this dp-dai-link unconditionally in glymur-crd.dtsi break sound
card probing on mahua-crd?
In arch/arm64/boot/dts/qcom/glymur.dtsi, mdss_dp1 is disabled by default. It
is only enabled in arch/arm64/boot/dts/qcom/glymur-crd.dts:
&mdss_dp1 {
status = "okay";
};
However, arch/arm64/boot/dts/qcom/mahua-crd.dts also includes glymur-crd.dtsi
without enabling mdss_dp1:
#include "mahua.dtsi"
#include "glymur-crd.dtsi"
When mahua-crd boots, x1e80100_platform_probe() -> qcom_snd_parse_of()
iterates over all available child nodes of /sound and calls
snd_soc_of_get_dai_link_codecs() -> snd_soc_of_get_dlc() ->
snd_soc_get_dlc():
sound/soc/qcom/common.c:qcom_snd_parse_of() {
...
if (codec) {
ret = snd_soc_of_get_dai_link_codecs(dev, codec, link);
if (ret < 0) {
dev_err_probe(dev, ret,
"%s: codec dai not found\n", link->name);
return ret;
}
...
}
Because mdss_dp1 remains disabled on mahua-crd, its ASoC component is never
registered, causing snd_soc_get_dlc() to return -EPROBE_DEFER permanently and
preventing the entire sound card (including speaker playback and VA DMIC
capture) from registering on Mahua CRD.
> +
> + cpu {
> + sound-dai = <&q6apmbedai DISPLAY_PORT_RX_1>;
> + };
> +
> + platform {
> + sound-dai = <&q6apm>;
> + };
> + };
[Severity: Medium]
Should mdss_dp0 (DISPLAY_PORT_RX_0) also be wired up here, and should the node
and link names match the other qcom,glymur-sndcard boards?
Both USB Type-C connectors in arch/arm64/boot/dts/qcom/glymur-crd.dtsi route
DisplayPort (connector@0 via usb_0_qmpphy to mdss_dp0, and connector@1 via
usb_1_qmpphy to mdss_dp1), and arch/arm64/boot/dts/qcom/glymur-crd.dts enables
both mdss_dp0 and mdss_dp1:
&mdss_dp0 {
status = "okay";
};
&mdss_dp0_out {
link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
};
&mdss_dp1 {
status = "okay";
};
Additionally, sibling boards using the same sound card driver
(sound/soc/qcom/x1e80100.c), such as
arch/arm64/boot/dts/qcom/mahua-lenovo-thinkpad-t14s-gen7-lcd.dts and
arch/arm64/boot/dts/qcom/x1-crd.dtsi, define both links using
displayport-0-dai-link and displayport-1-dai-link:
displayport-0-dai-link {
link-name = "DisplayPort0 Playback";
cpu {
sound-dai = <&q6apmbedai DISPLAY_PORT_RX_0>;
};
codec {
sound-dai = <&mdss_dp0>;
};
platform {
sound-dai = <&q6apm>;
};
};
displayport-1-dai-link {
link-name = "DisplayPort1 Playback";
Wait: if mdss_dp0 and mdss_dp1 are only enabled in glymur-crd.dts while
remaining disabled in mahua-crd.dts, should the DisplayPort DAI links either
be placed in glymur-crd.dts or have mdss_dp0 and mdss_dp1 enabled across the
boards that include glymur-crd.dtsi?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261105104013.614413-1-rohith.chiluka@oss.qualcomm.com?part=1
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v1] arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link
2026-11-05 10:46 [PATCH v1] arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link Chiluka Rohith
@ 2026-11-05 11:11 ` sashiko-bot
2026-11-05 12:07 ` Konrad Dybcio
1 sibling, 0 replies; 7+ messages in thread
From: sashiko-bot @ 2026-11-05 11:11 UTC (permalink / raw)
To: Chiluka Rohith; +Cc: devicetree, robh, conor+dt
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [High] arm64: dts: qcom: glymur-crd: dp-dai-link breaks sound probe on mahua-crd
- [Medium] arm64: dts: qcom: glymur-crd: incomplete and unenabled DP audio DAI link
--
commit bb4f3b10ef946c74b24095ec32db334ac56b222c
Author: Chiluka Rohith <rohith.chiluka@oss.qualcomm.com>
arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link
This commit adds a DisplayPort RX DAI link to the sound node in
glymur-crd.dtsi, wiring the DISPLAY_PORT_RX_1 backend of q6apm to the
mdss_dp1 controller.
> diff --git a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
> index 58158b51fe295..eee75da201983 100644
> --- a/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
> +++ b/arch/arm64/boot/dts/qcom/glymur-crd.dtsi
> @@ -268,6 +268,22 @@ platform {
> };
> };
>
> + dp-dai-link {
> + link-name = "DISPLAY_PORT-RX";
> +
> + codec {
> + sound-dai = <&mdss_dp1>;
> + };
[Severity: High]
Does adding this active dp-dai-link node to the shared
arch/arm64/boot/dts/qcom/glymur-crd.dtsi break probing of the entire sound
card on mahua-crd?
arch/arm64/boot/dts/qcom/glymur-crd.dtsi is included by both
arch/arm64/boot/dts/qcom/glymur-crd.dts and
arch/arm64/boot/dts/qcom/mahua-crd.dts:
arch/arm64/boot/dts/qcom/mahua-crd.dts:
#include "mahua.dtsi"
#include "glymur-crd.dtsi"
In arch/arm64/boot/dts/qcom/glymur.dtsi, mdss_dp1 defaults to disabled:
arch/arm64/boot/dts/qcom/glymur.dtsi:
mdss_dp1: displayport-controller@af5c000 {
...
#sound-dai-cells = <0>;
status = "disabled";
};
While arch/arm64/boot/dts/qcom/glymur-crd.dts enables mdss_dp1, neither
glymur-crd.dtsi nor mahua-crd.dts enables it.
When booting mahua-crd, x1e80100_platform_probe() -> qcom_snd_parse_of()
iterates over all available child nodes of /sound and calls
snd_soc_of_get_dai_link_codecs() -> snd_soc_of_get_dlc() ->
snd_soc_get_dlc():
sound/soc/qcom/common.c:qcom_snd_parse_of()
if (codec) {
ret = snd_soc_of_get_dai_link_codecs(dev, codec, link);
if (ret < 0) {
dev_err_probe(dev, ret,
"%s: codec dai not found\n", link->name);
return ret;
}
}
Because mdss_dp1 is disabled on mahua-crd, msm_dp_display_probe() never runs
for mdss_dp1 and never registers its ASoC codec component, causing
snd_soc_get_dlc() to return -EPROBE_DEFER permanently and preventing the
qcom,glymur-sndcard sound card (including WSA speaker playback and VA DMIC
capture) from registering on mahua-crd.
> +
> + cpu {
> + sound-dai = <&q6apmbedai DISPLAY_PORT_RX_1>;
> + };
> +
> + platform {
> + sound-dai = <&q6apm>;
> + };
> + };
[Severity: Medium]
Should this also wire up the first DisplayPort controller (mdss_dp0 with
DISPLAY_PORT_RX_0) and follow the DisplayPort DAI link naming used by other
boards handled by sound/soc/qcom/x1e80100.c?
In arch/arm64/boot/dts/qcom/glymur-crd.dtsi, two DisplayPort-capable USB-C
connectors are defined under pmic-glink (connector@0 routed via usb_0_qmpphy
to mdss_dp0, and connector@1 routed via usb_1_qmpphy to mdss_dp1), and
arch/arm64/boot/dts/qcom/glymur-crd.dts enables both controllers:
arch/arm64/boot/dts/qcom/glymur-crd.dts:
&mdss_dp0 {
status = "okay";
};
...
&mdss_dp1 {
status = "okay";
};
However, this patch only adds a link for mdss_dp1 (DISPLAY_PORT_RX_1) and
omits mdss_dp0 (DISPLAY_PORT_RX_0).
In addition, other boards using sound/soc/qcom/x1e80100.c (such as
arch/arm64/boot/dts/qcom/mahua-lenovo-thinkpad-t14s-gen7-lcd.dts, which also
uses compatible = "qcom,glymur-sndcard", as well as x1-crd.dtsi) name these
nodes displayport-0-dai-link and displayport-1-dai-link with link-name set
to "DisplayPort0 Playback" and "DisplayPort1 Playback" instead of
dp-dai-link and "DISPLAY_PORT-RX":
arch/arm64/boot/dts/qcom/mahua-lenovo-thinkpad-t14s-gen7-lcd.dts:
displayport-0-dai-link {
link-name = "DisplayPort0 Playback";
cpu {
sound-dai = <&q6apmbedai DISPLAY_PORT_RX_0>;
};
codec {
sound-dai = <&mdss_dp0>;
};
platform {
sound-dai = <&q6apm>;
};
};
displayport-1-dai-link {
link-name = "DisplayPort1 Playback";
...
};
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261105104657.621104-1-rohith.chiluka@oss.qualcomm.com?part=1
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH v1] arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link
2026-11-05 10:46 [PATCH v1] arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link Chiluka Rohith
2026-11-05 11:11 ` sashiko-bot
@ 2026-11-05 12:07 ` Konrad Dybcio
1 sibling, 0 replies; 7+ messages in thread
From: Konrad Dybcio @ 2026-11-05 12:07 UTC (permalink / raw)
To: Chiluka Rohith, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: Abel Vesa, linux-arm-msm, devicetree, linux-kernel
On 11/5/26 11:46 AM, Chiluka Rohith wrote:
> Add a DAI link for the DisplayPort RX path so that audio can be
> routed over DisplayPort on glymur-crd. The link wires up the
> DISPLAY_PORT_RX_1 backend of the q6apm ADSP to the mdss_dp1
> controller, with q6apm providing the platform (DMA) component.
Why do you think we should only have audio on dp1?
Konrad
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-11-05 12:07 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-05 10:46 [PATCH v1] arm64: dts: qcom: glymur-crd: add DisplayPort audio DAI link Chiluka Rohith
2026-11-05 11:11 ` sashiko-bot
2026-11-05 12:07 ` Konrad Dybcio
-- strict thread matches above, loose matches on Subject: below --
2026-11-05 10:46 Chiluka Rohith
2026-11-05 10:56 ` sashiko-bot
2026-11-05 10:40 Chiluka Rohith
2026-11-05 11:03 ` sashiko-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox