* [PATCH v4 0/2] Enable audio on lemans-evk board
@ 2025-08-22 13:19 Mohammad Rafi Shaik
2025-08-22 13:19 ` [PATCH v4 1/2] arm64: dts: qcom: lemans: Add gpr node Mohammad Rafi Shaik
2025-08-22 13:19 ` [PATCH v4 2/2] arm64: dts: qcom: lemans-evk: Add sound card Mohammad Rafi Shaik
0 siblings, 2 replies; 5+ messages in thread
From: Mohammad Rafi Shaik @ 2025-08-22 13:19 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, kernel
Enable audio support on lemans-evk board.
Introduce HS (High-Speed) MI2S pin control support.
The I2S max98357a speaker amplifier is connected via HS0 and I2S
microphones utilize the HS2 interface.
DT-Binding link for sound compatible:
https://lore.kernel.org/linux-sound/20250519083244.4070689-3-mohammad.rafi.shaik@oss.qualcomm.com/
changes in [v4]:
- Nodes sorted in the proper order reported by Konrad Dybcio.
- Since the base SoC device tree Renamed from sa8775p.dtsi to lemans.dtsi, and
the board-specific device tree from qcs9075-iq-9075-evk.dts to lemans-evk.dts,
moved audio support device tree nodes to the new lemans device tree.
Renamed device tree reference Link: https://lore.kernel.org/all/20250803110113.401927-1-wasim.nazir@oss.qualcomm.com/
- Link to V3 : https://lore.kernel.org/linux-arm-msm/20250724155632.236675-1-mohammad.rafi.shaik@oss.qualcomm.com/
changes in [v3]:
- Updated link-name from HS0 MI2S to HS1 MI2S and sorted nodes in order.
- Link to V2 : https://lore.kernel.org/linux-arm-msm/20250616070405.4113564-1-mohammad.rafi.shaik@oss.qualcomm.com/
changes in [v2]:
- Updated commit message as suggested by Dmitry Baryshkov.
- Link to V1 : https://lore.kernel.org/linux-arm-msm/20250525155356.2081362-1-mohammad.rafi.shaik@oss.qualcomm.com/
Mohammad Rafi Shaik (2):
arm64: dts: qcom: lemans: Add gpr node
arm64: dts: qcom: lemans-evk: Add sound card
arch/arm64/boot/dts/qcom/lemans-evk.dts | 52 ++++++++++++++++++++++++
arch/arm64/boot/dts/qcom/lemans.dtsi | 54 +++++++++++++++++++++++++
2 files changed, 106 insertions(+)
base-commit: 0f4c93f7eb861acab537dbe94441817a270537bf
--
2.34.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v4 1/2] arm64: dts: qcom: lemans: Add gpr node
2025-08-22 13:19 [PATCH v4 0/2] Enable audio on lemans-evk board Mohammad Rafi Shaik
@ 2025-08-22 13:19 ` Mohammad Rafi Shaik
2025-08-22 13:19 ` [PATCH v4 2/2] arm64: dts: qcom: lemans-evk: Add sound card Mohammad Rafi Shaik
1 sibling, 0 replies; 5+ messages in thread
From: Mohammad Rafi Shaik @ 2025-08-22 13:19 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, kernel, Konrad Dybcio
Add GPR(Generic Pack router) node along with
APM(Audio Process Manager) and PRM(Proxy resource
Manager) audio services.
Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/lemans.dtsi | 40 ++++++++++++++++++++++++++++
1 file changed, 40 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/lemans.dtsi b/arch/arm64/boot/dts/qcom/lemans.dtsi
index 64f5378c6a47..7026f25877c8 100644
--- a/arch/arm64/boot/dts/qcom/lemans.dtsi
+++ b/arch/arm64/boot/dts/qcom/lemans.dtsi
@@ -18,6 +18,7 @@
#include <dt-bindings/mailbox/qcom-ipcc.h>
#include <dt-bindings/firmware/qcom,scm.h>
#include <dt-bindings/power/qcom-rpmpd.h>
+#include <dt-bindings/soc/qcom,gpr.h>
#include <dt-bindings/soc/qcom,rpmh-rsc.h>
/ {
@@ -6596,6 +6597,45 @@ compute-cb@5 {
dma-coherent;
};
};
+
+ gpr {
+ compatible = "qcom,gpr";
+ qcom,glink-channels = "adsp_apps";
+ qcom,domain = <GPR_DOMAIN_ID_ADSP>;
+ qcom,intents = <512 20>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ q6apm: service@1 {
+ compatible = "qcom,q6apm";
+ reg = <GPR_APM_MODULE_IID>;
+ #sound-dai-cells = <0>;
+ qcom,protection-domain = "avs/audio",
+ "msm/adsp/audio_pd";
+
+ q6apmbedai: bedais {
+ compatible = "qcom,q6apm-lpass-dais";
+ #sound-dai-cells = <1>;
+ };
+
+ q6apmdai: dais {
+ compatible = "qcom,q6apm-dais";
+ iommus = <&apps_smmu 0x3001 0x0>;
+ };
+ };
+
+ q6prm: service@2 {
+ compatible = "qcom,q6prm";
+ reg = <GPR_PRM_MODULE_IID>;
+ qcom,protection-domain = "avs/audio",
+ "msm/adsp/audio_pd";
+
+ q6prmcc: clock-controller {
+ compatible = "qcom,q6prm-lpass-clocks";
+ #clock-cells = <2>;
+ };
+ };
+ };
};
};
};
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH v4 2/2] arm64: dts: qcom: lemans-evk: Add sound card
2025-08-22 13:19 [PATCH v4 0/2] Enable audio on lemans-evk board Mohammad Rafi Shaik
2025-08-22 13:19 ` [PATCH v4 1/2] arm64: dts: qcom: lemans: Add gpr node Mohammad Rafi Shaik
@ 2025-08-22 13:19 ` Mohammad Rafi Shaik
2025-09-03 12:14 ` Konrad Dybcio
2025-09-03 12:14 ` Konrad Dybcio
1 sibling, 2 replies; 5+ messages in thread
From: Mohammad Rafi Shaik @ 2025-08-22 13:19 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, kernel
Add the sound card node with tested playback over max98357a
I2S speakers amplifier and I2S mic.
Introduce HS (High-Speed) MI2S pin control support.
The I2S max98357a speaker amplifier is connected via HS0 and I2S
microphones utilize the HS2 interface.
Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/lemans-evk.dts | 52 +++++++++++++++++++++++++
arch/arm64/boot/dts/qcom/lemans.dtsi | 14 +++++++
2 files changed, 66 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/lemans-evk.dts b/arch/arm64/boot/dts/qcom/lemans-evk.dts
index 669ac52f4cf6..d67a9307cc75 100644
--- a/arch/arm64/boot/dts/qcom/lemans-evk.dts
+++ b/arch/arm64/boot/dts/qcom/lemans-evk.dts
@@ -6,6 +6,7 @@
/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/sound/qcom,q6afe.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include "lemans.dtsi"
@@ -22,6 +23,57 @@ aliases {
chosen {
stdout-path = "serial0:115200n8";
};
+
+ dmic: audio-codec-0 {
+ compatible = "dmic-codec";
+ #sound-dai-cells = <0>;
+ num-channels = <1>;
+ };
+
+ max98357a: audio-codec-1 {
+ compatible = "maxim,max98357a";
+ #sound-dai-cells = <0>;
+ };
+
+ sound {
+ compatible = "qcom,qcs9100-sndcard";
+ model = "LEMANS-EVK";
+
+ pinctrl-0 = <&hs0_mi2s_active>, <&hs2_mi2s_active>;
+ pinctrl-names = "default";
+
+ hs0-mi2s-playback-dai-link {
+ link-name = "HS0 MI2S Playback";
+
+ codec {
+ sound-dai = <&max98357a>;
+ };
+
+ cpu {
+ sound-dai = <&q6apmbedai PRIMARY_MI2S_RX>;
+ };
+
+ platform {
+ sound-dai = <&q6apm>;
+ };
+ };
+
+ hs2-mi2s-capture-dai-link {
+ link-name = "HS2 MI2S Capture";
+
+ codec {
+ sound-dai = <&dmic>;
+ };
+
+ cpu {
+ sound-dai = <&q6apmbedai TERTIARY_MI2S_TX>;
+ };
+
+ platform {
+ sound-dai = <&q6apm>;
+ };
+ };
+ };
};
&apps_rsc {
diff --git a/arch/arm64/boot/dts/qcom/lemans.dtsi b/arch/arm64/boot/dts/qcom/lemans.dtsi
index 7026f25877c8..d73037d6d97a 100644
--- a/arch/arm64/boot/dts/qcom/lemans.dtsi
+++ b/arch/arm64/boot/dts/qcom/lemans.dtsi
@@ -5005,6 +5005,20 @@ tlmm: pinctrl@f000000 {
gpio-ranges = <&tlmm 0 0 149>;
wakeup-parent = <&pdc>;
+ hs0_mi2s_active: hs0-mi2s-active-state {
+ pins = "gpio114", "gpio115", "gpio116", "gpio117";
+ function = "hs0_mi2s";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
+ hs2_mi2s_active: hs2-mi2s-active-state {
+ pins = "gpio122", "gpio123", "gpio124", "gpio125";
+ function = "hs2_mi2s";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
qup_i2c0_default: qup-i2c0-state {
pins = "gpio20", "gpio21";
function = "qup0_se0";
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH v4 2/2] arm64: dts: qcom: lemans-evk: Add sound card
2025-08-22 13:19 ` [PATCH v4 2/2] arm64: dts: qcom: lemans-evk: Add sound card Mohammad Rafi Shaik
@ 2025-09-03 12:14 ` Konrad Dybcio
2025-09-03 12:14 ` Konrad Dybcio
1 sibling, 0 replies; 5+ messages in thread
From: Konrad Dybcio @ 2025-09-03 12:14 UTC (permalink / raw)
To: Mohammad Rafi Shaik, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, kernel
On 8/22/25 3:19 PM, Mohammad Rafi Shaik wrote:
> Add the sound card node with tested playback over max98357a
> I2S speakers amplifier and I2S mic.
>
> Introduce HS (High-Speed) MI2S pin control support.
> The I2S max98357a speaker amplifier is connected via HS0 and I2S
> microphones utilize the HS2 interface.
>
> Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
> ---
> arch/arm64/boot/dts/qcom/lemans-evk.dts | 52 +++++++++++++++++++++++++
> arch/arm64/boot/dts/qcom/lemans.dtsi | 14 +++++++
> 2 files changed, 66 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/lemans-evk.dts b/arch/arm64/boot/dts/qcom/lemans-evk.dts
> index 669ac52f4cf6..d67a9307cc75 100644
> --- a/arch/arm64/boot/dts/qcom/lemans-evk.dts
> +++ b/arch/arm64/boot/dts/qcom/lemans-evk.dts
> @@ -6,6 +6,7 @@
> /dts-v1/;
>
> #include <dt-bindings/gpio/gpio.h>
> +#include <dt-bindings/sound/qcom,q6afe.h>
> #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
>
> #include "lemans.dtsi"
> @@ -22,6 +23,57 @@ aliases {
> chosen {
> stdout-path = "serial0:115200n8";
> };
> +
> + dmic: audio-codec-0 {
> + compatible = "dmic-codec";
> + #sound-dai-cells = <0>;
> + num-channels = <1>;
> + };
> +
> + max98357a: audio-codec-1 {
> + compatible = "maxim,max98357a";
In case anyone's interested, this the SD_MODE pin is connected to the
power supply (i.e. it's always on)
Konrad
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH v4 2/2] arm64: dts: qcom: lemans-evk: Add sound card
2025-08-22 13:19 ` [PATCH v4 2/2] arm64: dts: qcom: lemans-evk: Add sound card Mohammad Rafi Shaik
2025-09-03 12:14 ` Konrad Dybcio
@ 2025-09-03 12:14 ` Konrad Dybcio
1 sibling, 0 replies; 5+ messages in thread
From: Konrad Dybcio @ 2025-09-03 12:14 UTC (permalink / raw)
To: Mohammad Rafi Shaik, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley
Cc: linux-arm-msm, devicetree, linux-kernel, kernel
On 8/22/25 3:19 PM, Mohammad Rafi Shaik wrote:
> Add the sound card node with tested playback over max98357a
> I2S speakers amplifier and I2S mic.
>
> Introduce HS (High-Speed) MI2S pin control support.
> The I2S max98357a speaker amplifier is connected via HS0 and I2S
> microphones utilize the HS2 interface.
>
> Signed-off-by: Mohammad Rafi Shaik <mohammad.rafi.shaik@oss.qualcomm.com>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Konrad
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-09-03 12:14 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-22 13:19 [PATCH v4 0/2] Enable audio on lemans-evk board Mohammad Rafi Shaik
2025-08-22 13:19 ` [PATCH v4 1/2] arm64: dts: qcom: lemans: Add gpr node Mohammad Rafi Shaik
2025-08-22 13:19 ` [PATCH v4 2/2] arm64: dts: qcom: lemans-evk: Add sound card Mohammad Rafi Shaik
2025-09-03 12:14 ` Konrad Dybcio
2025-09-03 12:14 ` Konrad Dybcio
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).