From nobody Mon Sep 28 10:49:41 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8A4333655E6; Sun, 23 Aug 2026 08:35:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787474151; cv=none; b=lZYLkhSGHL559id2Z4c4UOVO4BtDU1aZz9p5w/VT64gwRusHOCXtLVXzYHvXZjIMKqAbfeRlOErzOigz8o9cz7zLtWNJyrEg1XTmybJ//KHzTo2Z7W1/OW8XmNEqGlUItAgOtB2+CGLxFn4O07J9Oh6q7jqUTjIQnw3QPXzze74= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787474151; c=relaxed/simple; bh=FSFoCK6IHrRjmW5HyaObQ6LDcPClFVEMEOre0yaXIkE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=qXPiDBoUVoZqcazHCCMqRRjTcwEwvLDG0C4nqXQFEfwgMSZ77mwDfULaORUJHo/fKPORKwk3AaEHNWO6JK6unOeCYgwJx5o/P9Mw0XKyPE3uuXhUL2xU8uQ31cSChCrzCriY3w47N88iuAYL8XzL9H2epG0qTq4J50ZNHdNbJQU= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=cS7YrKqC; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="cS7YrKqC" Received: by smtp.kernel.org (Postfix) with ESMTPS id 19705C2BCC7; Sun, 23 Aug 2026 08:35:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1787474151; bh=FSFoCK6IHrRjmW5HyaObQ6LDcPClFVEMEOre0yaXIkE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=cS7YrKqCIzovtMAzJrMmuk9xO6kJdNBaSaZNr2leWTWFxaT4vJidCAGDhJiCuHxpQ O621ZIlDJ5kKjhxvEK/GtizokalTpAlgv/jNqn4jKRS7ZdBpiKC0HRUpmpsfV8GvE7 c5/LlK3XweobHYwqYxCoQKlOJ0roAqaimtRGmmJig1nRtuyJWlpmMQJ+HLbXi+ZXnX q8m6aYmgTaje7iSdjMKaSw/Rc7loV9pyx5dgctmYCR9gHbQrfLD9TbR7iYfmSBmtRw 3mMM8A+/R2H0IEEhJrzbrHew/16LITfFGdtBC5VjyAUy4oOlusohcA8LgtnyBfijrx qqFuLprEr5qbw== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id E773FC5DF81; Sun, 23 Aug 2026 08:35:50 +0000 (UTC) From: Jens Glathe via B4 Relay Date: Sun, 23 Aug 2026 10:35:28 +0200 Subject: [PATCH 1/2] arm64: dts: qcom: sc8280xp-microsoft-blackrock: enable DisplayPort audio Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260823-blackrock-audio-v1-1-f319387fc6a6@oldschoolsolutions.biz> References: <20260823-blackrock-audio-v1-0-f319387fc6a6@oldschoolsolutions.biz> In-Reply-To: <20260823-blackrock-audio-v1-0-f319387fc6a6@oldschoolsolutions.biz> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Konrad Dybcio , =?utf-8?q?J=C3=A9r=C3=B4me_de_Bretagne?= , linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jens Glathe X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1787474149; l=5573; i=jens.glathe@oldschoolsolutions.biz; s=20240919; h=from:subject:message-id; bh=32rGsJ0/lgmsGUI4MsIonhCViNoJkotGVHvYJscYBpo=; b=IhYtoCQwM8xR2VJWBBhq9Q3iLMStKQEBR2KoBO39aWk5E+uI2y9BauTVy+sj7fRtv9GFQAcTc 8V19dos4uDbByTPztWu+bgII5FoNzl0AjOkFh+HVpUuDSULjt7Z1HHc X-Developer-Key: i=jens.glathe@oldschoolsolutions.biz; a=ed25519; pk=JcRJqJc/y8LsxOlPakALD3juGfOKmFBWtO+GfELMJVg= X-Endpoint-Received: by B4 Relay for jens.glathe@oldschoolsolutions.biz/20240919 with auth_id=216 X-Original-From: Jens Glathe Reply-To: jens.glathe@oldschoolsolutions.biz From: Jens Glathe The Windows Dev Kit 2023 has no built-in speakers, microphones or headphone jack. Likewise the device with the same mainboard, Surface Pro 9 5G [1]. The previous WCD938x / WSA / VA sound card definition was therefore non-functional. Replace the unused codec nodes, SoundWire controllers, LPASS macros and related pinctrl with DisplayPort DAI links (DP0/DP1/DP2) so that audio is available over the DP connectors. Add the required sound-name-prefix properties and update the card model name to the conventional SC8280XP-MICROSOFT-BLACKROCK form. [1]: https://support.microsoft.com/en-us/surface/models/surface-pro-9-featu= res-and-specs Fixes: 16a7fed11714 ("arm64: dts: qcom: sc8280xp-blackrock: dt definition f= or WDK2023") Signed-off-by: Jens Glathe --- .../boot/dts/qcom/sc8280xp-microsoft-blackrock.dts | 134 +++--------------= ---- 1 file changed, 20 insertions(+), 114 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dts b/ar= ch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dts index 4f4b5f4285ec2..a94141d670f62 100644 --- a/arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dts +++ b/arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dts @@ -28,32 +28,6 @@ aliases { serial1 =3D &uart2; }; =20 - wcd938x: audio-codec { - compatible =3D "qcom,wcd9380-codec"; - - pinctrl-0 =3D <&wcd_default>; - pinctrl-names =3D "default"; - - reset-gpios =3D <&tlmm 106 GPIO_ACTIVE_LOW>; - - vdd-buck-supply =3D <&vreg_s10b>; - vdd-rxtx-supply =3D <&vreg_s10b>; - vdd-io-supply =3D <&vreg_s10b>; - vdd-mic-bias-supply =3D <&vreg_bob>; - - qcom,micbias1-microvolt =3D <1800000>; - qcom,micbias2-microvolt =3D <1800000>; - qcom,micbias3-microvolt =3D <1800000>; - qcom,micbias4-microvolt =3D <1800000>; - qcom,mbhc-buttons-vthreshold-microvolt =3D <75000 150000 237000 500000 5= 00000 500000 500000 500000>; - qcom,mbhc-headset-vthreshold-microvolt =3D <1700000>; - qcom,mbhc-headphone-vthreshold-microvolt =3D <50000>; - qcom,rx-device =3D <&wcd_rx>; - qcom,tx-device =3D <&wcd_tx>; - - #sound-dai-cells =3D <1>; - }; - dp3_connector: connector { compatible =3D "dp-connector"; label =3D "DP-3"; @@ -585,6 +559,7 @@ &mdss0 { }; =20 &mdss0_dp0 { + sound-name-prefix =3D "DisplayPort0"; status =3D "okay"; }; =20 @@ -594,6 +569,7 @@ &mdss0_dp0_out { }; =20 &mdss0_dp1 { + sound-name-prefix =3D "DisplayPort1"; status =3D "okay"; }; =20 @@ -603,6 +579,7 @@ &mdss0_dp1_out { }; =20 &mdss0_dp2 { + sound-name-prefix =3D "DisplayPort2"; compatible =3D "qcom,sc8280xp-dp"; =20 data-lanes =3D <0 1 2 3>; @@ -858,17 +835,17 @@ &rxmacro { =20 &sound { compatible =3D "qcom,sc8280xp-sndcard"; - model =3D "microsoft/blackrock"; + model =3D "SC8280XP-MICROSOFT-BLACKROCK"; =20 - wcd-playback-dai-link { - link-name =3D "WCD Playback"; + dp0-dai-link { + link-name =3D "DP0 Playback"; =20 - cpu { - sound-dai =3D <&q6apmbedai RX_CODEC_DMA_RX_0>; + codec { + sound-dai =3D <&mdss0_dp0>; }; =20 - codec { - sound-dai =3D <&wcd938x 0>, <&swr1 0>, <&rxmacro 0>; + cpu { + sound-dai =3D <&q6apmbedai DISPLAY_PORT_RX_0>; }; =20 platform { @@ -876,15 +853,15 @@ platform { }; }; =20 - wcd-capture-dai-link { - link-name =3D "WCD Capture"; + dp1-dai-link { + link-name =3D "DP1 Playback"; =20 - cpu { - sound-dai =3D <&q6apmbedai TX_CODEC_DMA_TX_3>; + codec { + sound-dai =3D <&mdss0_dp1>; }; =20 - codec { - sound-dai =3D <&wcd938x 1>, <&swr2 0>, <&txmacro 0>; + cpu { + sound-dai =3D <&q6apmbedai DISPLAY_PORT_RX_1>; }; =20 platform { @@ -892,67 +869,23 @@ platform { }; }; =20 - wsa-dai-link { - link-name =3D "WSA Playback"; - - cpu { - sound-dai =3D <&q6apmbedai WSA_CODEC_DMA_RX_0>; - }; + dp2-dai-link { + link-name =3D "DP2 Playback"; =20 codec { - sound-dai =3D <&swr0 0>, <&wsamacro 0>; - }; - - platform { - sound-dai =3D <&q6apm>; + sound-dai =3D <&mdss0_dp2>; }; - }; - - va-dai-link { - link-name =3D "VA Capture"; =20 cpu { - sound-dai =3D <&q6apmbedai VA_CODEC_DMA_TX_0>; + sound-dai =3D <&q6apmbedai DISPLAY_PORT_RX_2>; }; =20 platform { sound-dai =3D <&q6apm>; }; - - codec { - sound-dai =3D <&vamacro 0>; - }; - }; -}; - -&swr0 { - status =3D "okay"; -}; - -&swr1 { - status =3D "okay"; - - wcd_rx: wcd9380-rx@0,4 { - compatible =3D "sdw20217010d00"; - reg =3D <0 4>; - qcom,rx-port-mapping =3D <1 2 3 4 5>; - }; -}; - -&swr2 { - status =3D "okay"; - - wcd_tx: wcd9380-tx@0,3 { - compatible =3D "sdw20217010d00"; - reg =3D <0 3>; - qcom,tx-port-mapping =3D <1 1 2 3>; }; }; =20 -&txmacro { - status =3D "okay"; -}; - &uart2 { pinctrl-0 =3D <&uart2_default>; pinctrl-names =3D "default"; @@ -1076,31 +1009,12 @@ &usb_2_qmpphy0 { status =3D "okay"; }; =20 -&vamacro { - pinctrl-0 =3D <&dmic01_default>, <&dmic23_default>; - pinctrl-names =3D "default"; - - vdd-micb-supply =3D <&vreg_s10b>; - - qcom,dmic-sample-rate =3D <4800000>; - - status =3D "okay"; -}; - -&wsamacro { - status =3D "okay"; -}; - &xo_board_clk { clock-frequency =3D <38400000>; }; =20 /* PINCTRL */ =20 -&lpass_tlmm { - status =3D "okay"; -}; - &pmc8280_1_gpios { misc_3p3_reg_en: misc-3p3-reg-en-state { pins =3D "gpio1"; @@ -1302,14 +1216,6 @@ usb2_en_state: usb2-en-state { output-low; }; =20 - wcd_default: wcd-default-state { - reset-pins { - pins =3D "gpio106"; - function =3D "gpio"; - bias-disable; - }; - }; - wlan_en: wlan-en-state { pins =3D "gpio134"; function =3D "gpio"; --=20 2.53.0 From nobody Mon Sep 28 10:49:41 2026 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 8A2E33655C0; Sun, 23 Aug 2026 08:35:51 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787474151; cv=none; b=JSVsSivTGwUWRWsqYydgcEj6ymfsjGVRoxF29LRRqmKPxA1gMY3KfitZJwCKUPBN7xE5IZlucV7JbuBMK75amDQ9pFXHUBo6yAi2aZn5mjeGlgGbf0R3xc3XibhaN6ynFt1JiawdydrFLAidfs1g06pixUgmlGk31gleARkBq1E= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787474151; c=relaxed/simple; bh=OScqHlcIGrFn0GPDSiFH2yr5J2fHbFH65CQvX8SqyUA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=q1fAQrDTvRes65flmizqDgGxEoPEkzTiybBIQGgfH1k6EVoChbOe4hjXJWVRS4hNDtciu+xlsawQhhku5GAly63bgHwGt9MdkpzIfFFzwUSgmhU4GYicjaYBdvP9mss/Ix/ezIknN2hxO1fdIUsl1As6wQ7aUErNwPojGDX4eSc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=BG6NoR9r; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="BG6NoR9r" Received: by smtp.kernel.org (Postfix) with ESMTPS id 2B823C2BCFD; Sun, 23 Aug 2026 08:35:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1787474151; bh=OScqHlcIGrFn0GPDSiFH2yr5J2fHbFH65CQvX8SqyUA=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=BG6NoR9rtXDdMniBDXxB50EZ1miQAv1k4OBykVmtbVjBeSa7FDkKXEdBJ2HN3WGdy iNX2je2qqzZ7QV/zpKiK8VYYGIpGdjDVLU1Mz4Vbb1CsCkh2lOXpsf38tL5UIO+Dur aQ/nNrKscNOoBPIBjrKROX+Aw12ZqfZ1kOBoxnzdun8ym2FZJQHB98YR6vwdgsuC2k 6h8goytvePUU8hHgn3B0aNAG8BIqjSKiKxeNtYLod+V8sH5fqSiyRXd60Fx9ZcQ+0U GQtu/34e1qPzoy9TKe22hPOBWvvcG+PWEAz2Js7duMHRXApQ233hGw+lX0i7qqdUDO cfceZT5LHNkNg== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id 0BE05C5DF8C; Sun, 23 Aug 2026 08:35:51 +0000 (UTC) From: Jens Glathe via B4 Relay Date: Sun, 23 Aug 2026 10:35:29 +0200 Subject: [PATCH 2/2] arm64: dts: qcom: sc8280xp-microsoft-blackrock: enable 4-lane DP altmode Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260823-blackrock-audio-v1-2-f319387fc6a6@oldschoolsolutions.biz> References: <20260823-blackrock-audio-v1-0-f319387fc6a6@oldschoolsolutions.biz> In-Reply-To: <20260823-blackrock-audio-v1-0-f319387fc6a6@oldschoolsolutions.biz> To: Bjorn Andersson , Konrad Dybcio , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: Konrad Dybcio , =?utf-8?q?J=C3=A9r=C3=B4me_de_Bretagne?= , linux-arm-msm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Jens Glathe X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1787474149; l=2037; i=jens.glathe@oldschoolsolutions.biz; s=20240919; h=from:subject:message-id; bh=I7UKGMSk+s4dyW5AvgjG/TZCmq97eEd3LiG6adDQR/4=; b=/BdBee6Uq0Z/jqdf9lcGcx2a2obr8yN0u1TYyKWAl3NYqjaEM47SWXjG58PaI5+nl4LaBJStR 2pqepi312DyD8IeD0fstKTWghPTwLzaejCXoACQgYiyx2w7VNjwTUYe X-Developer-Key: i=jens.glathe@oldschoolsolutions.biz; a=ed25519; pk=JcRJqJc/y8LsxOlPakALD3juGfOKmFBWtO+GfELMJVg= X-Endpoint-Received: by B4 Relay for jens.glathe@oldschoolsolutions.biz/20240919 with auth_id=216 X-Original-From: Jens Glathe Reply-To: jens.glathe@oldschoolsolutions.biz From: Jens Glathe Allow up to 4 lanes for the DisplayPort links on the USB-C ports and the mini-DP connector. Add the standard link-frequencies and move data-lanes to the out endpoints where required by the current bindings. Also enable mode-switch on the QMP combo PHYs so that altmode events can reach them (same treatment as on the X13s). Signed-off-by: Jens Glathe Reviewed-by: Konrad Dybcio --- arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dts | 15 +++++++++++= ---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dts b/ar= ch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dts index a94141d670f62..aceeda96911db 100644 --- a/arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dts +++ b/arch/arm64/boot/dts/qcom/sc8280xp-microsoft-blackrock.dts @@ -564,7 +564,9 @@ &mdss0_dp0 { }; =20 &mdss0_dp0_out { - data-lanes =3D <0 1>; + data-lanes =3D <0 1 2 3>; + + link-frequencies =3D /bits/ 64 <1620000000 2700000000 5400000000 81000000= 00>; remote-endpoint =3D <&usb_0_qmpphy_dp_in>; }; =20 @@ -574,7 +576,9 @@ &mdss0_dp1 { }; =20 &mdss0_dp1_out { - data-lanes =3D <0 1>; + data-lanes =3D <0 1 2 3>; + link-frequencies =3D /bits/ 64 <1620000000 2700000000 5400000000 81000000= 00>; + remote-endpoint =3D <&usb_1_qmpphy_dp_in>; }; =20 @@ -582,12 +586,13 @@ &mdss0_dp2 { sound-name-prefix =3D "DisplayPort2"; compatible =3D "qcom,sc8280xp-dp"; =20 - data-lanes =3D <0 1 2 3>; - status =3D "okay"; }; =20 &mdss0_dp2_out { + data-lanes =3D <0 1 2 3>; + link-frequencies =3D /bits/ 64 <1620000000 2700000000 5400000000 81000000= 00>; + remote-endpoint =3D <&dp1_connector_in>; }; =20 @@ -932,6 +937,7 @@ &usb_0_qmpphy { vdda-phy-supply =3D <&vreg_l9d>; vdda-pll-supply =3D <&vreg_l4d>; =20 + mode-switch; orientation-switch; =20 status =3D "okay"; @@ -969,6 +975,7 @@ &usb_1_qmpphy { vdda-phy-supply =3D <&vreg_l4b>; vdda-pll-supply =3D <&vreg_l3b>; =20 + mode-switch; orientation-switch; =20 status =3D "okay"; --=20 2.53.0