All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: qcom: msm8916: Fix Secondary MI2S bit clock
@ 2021-08-16 18:18 Stephan Gerhold
  2021-09-27 22:56 ` (subset) " Bjorn Andersson
  2021-09-27 23:00 ` patchwork-bot+linux-arm-msm
  0 siblings, 2 replies; 3+ messages in thread
From: Stephan Gerhold @ 2021-08-16 18:18 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Andy Gross, linux-arm-msm, devicetree, ~postmarketos/upstreaming,
	Stephan Gerhold, Srinivas Kandagatla, Vincent Knecht

At the moment, playing audio on Secondary MI2S will just end up getting
stuck, without actually playing any audio. This happens because the wrong
bit clock is configured when playing audio on Secondary MI2S.

The PRI_I2S_CLK (better name: SPKR_I2S_CLK) is used by the SPKR audio mux
block that provides both Primary and Secondary MI2S.

The SEC_I2S_CLK (better name: MIC_I2S_CLK) is used by the MIC audio mux
block that provides Tertiary MI2S. Quaternary MI2S is also part of the
MIC audio mux but has its own clock (AUX_I2S_CLK).

This means that (quite confusingly) the SEC_I2S_CLK is not actually
used for Secondary MI2S as the name would suggest. Secondary MI2S
needs to have the same clock as Primary MI2S configured.

Fix the clock list for the lpass node in the device tree and add
a comment to clarify this confusing naming. With these changes,
audio can be played correctly on Secondary MI2S.

Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Fixes: 3761a3618f55 ("arm64: dts: qcom: add lpass node")
Tested-by: Vincent Knecht <vincent.knecht@mailoo.org>
Signed-off-by: Stephan Gerhold <stephan@gerhold.net>
---
 arch/arm64/boot/dts/qcom/msm8916.dtsi | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/qcom/msm8916.dtsi b/arch/arm64/boot/dts/qcom/msm8916.dtsi
index 3f85e34a8ce6..fbff71263951 100644
--- a/arch/arm64/boot/dts/qcom/msm8916.dtsi
+++ b/arch/arm64/boot/dts/qcom/msm8916.dtsi
@@ -1384,11 +1384,17 @@ sound: sound@7702000 {
 		lpass: audio-controller@7708000 {
 			status = "disabled";
 			compatible = "qcom,lpass-cpu-apq8016";
+
+			/*
+			 * Note: Unlike the name would suggest, the SEC_I2S_CLK
+			 * is actually only used by Tertiary MI2S while
+			 * Primary/Secondary MI2S both use the PRI_I2S_CLK.
+			 */
 			clocks = <&gcc GCC_ULTAUDIO_AHBFABRIC_IXFABRIC_CLK>,
 				 <&gcc GCC_ULTAUDIO_PCNOC_MPORT_CLK>,
 				 <&gcc GCC_ULTAUDIO_PCNOC_SWAY_CLK>,
 				 <&gcc GCC_ULTAUDIO_LPAIF_PRI_I2S_CLK>,
-				 <&gcc GCC_ULTAUDIO_LPAIF_SEC_I2S_CLK>,
+				 <&gcc GCC_ULTAUDIO_LPAIF_PRI_I2S_CLK>,
 				 <&gcc GCC_ULTAUDIO_LPAIF_SEC_I2S_CLK>,
 				 <&gcc GCC_ULTAUDIO_LPAIF_AUX_I2S_CLK>;
 
-- 
2.32.0


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

* Re: (subset) [PATCH] arm64: dts: qcom: msm8916: Fix Secondary MI2S bit clock
  2021-08-16 18:18 [PATCH] arm64: dts: qcom: msm8916: Fix Secondary MI2S bit clock Stephan Gerhold
@ 2021-09-27 22:56 ` Bjorn Andersson
  2021-09-27 23:00 ` patchwork-bot+linux-arm-msm
  1 sibling, 0 replies; 3+ messages in thread
From: Bjorn Andersson @ 2021-09-27 22:56 UTC (permalink / raw)
  To: Stephan Gerhold
  Cc: Srinivas Kandagatla, ~postmarketos/upstreaming, linux-arm-msm,
	Vincent Knecht, Andy Gross, devicetree

On Mon, 16 Aug 2021 20:18:10 +0200, Stephan Gerhold wrote:
> At the moment, playing audio on Secondary MI2S will just end up getting
> stuck, without actually playing any audio. This happens because the wrong
> bit clock is configured when playing audio on Secondary MI2S.
> 
> The PRI_I2S_CLK (better name: SPKR_I2S_CLK) is used by the SPKR audio mux
> block that provides both Primary and Secondary MI2S.
> 
> [...]

Applied, thanks!

[1/1] arm64: dts: qcom: msm8916: Fix Secondary MI2S bit clock
      commit: 8199a0b31e76d158ac14841e7119890461f8c595

Best regards,
-- 
Bjorn Andersson <bjorn.andersson@linaro.org>

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

* Re: [PATCH] arm64: dts: qcom: msm8916: Fix Secondary MI2S bit clock
  2021-08-16 18:18 [PATCH] arm64: dts: qcom: msm8916: Fix Secondary MI2S bit clock Stephan Gerhold
  2021-09-27 22:56 ` (subset) " Bjorn Andersson
@ 2021-09-27 23:00 ` patchwork-bot+linux-arm-msm
  1 sibling, 0 replies; 3+ messages in thread
From: patchwork-bot+linux-arm-msm @ 2021-09-27 23:00 UTC (permalink / raw)
  To: Stephan Gerhold; +Cc: linux-arm-msm

Hello:

This patch was applied to qcom/linux.git (refs/heads/for-next):

On Mon, 16 Aug 2021 20:18:10 +0200 you wrote:
> At the moment, playing audio on Secondary MI2S will just end up getting
> stuck, without actually playing any audio. This happens because the wrong
> bit clock is configured when playing audio on Secondary MI2S.
> 
> The PRI_I2S_CLK (better name: SPKR_I2S_CLK) is used by the SPKR audio mux
> block that provides both Primary and Secondary MI2S.
> 
> [...]

Here is the summary with links:
  - arm64: dts: qcom: msm8916: Fix Secondary MI2S bit clock
    https://git.kernel.org/qcom/c/8199a0b31e76

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



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

end of thread, other threads:[~2021-09-27 23:00 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-16 18:18 [PATCH] arm64: dts: qcom: msm8916: Fix Secondary MI2S bit clock Stephan Gerhold
2021-09-27 22:56 ` (subset) " Bjorn Andersson
2021-09-27 23:00 ` patchwork-bot+linux-arm-msm

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.