[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20230823122000.585787-1-jakob.unterwurzacher@theobroma-systems.com>
Date: Wed, 23 Aug 2023 14:19:59 +0200
From: Jakob Unterwurzacher <jakobunt@...il.com>
To: Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Heiko Stuebner <heiko@...ech.de>
Cc: jakob.unterwurzacher@...obroma-systems.com,
Ermin Sunj <ermin.sunj@...obroma-systems.com>,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-rockchip@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: [PATCH 1/2] TSD: arm64: dts: rockchip: use codec as clock master
From: Ermin Sunj <ermin.sunj@...obroma-systems.com>
If the codec is not the clock master, the MCLK needs to be
synchronous to both I2S_SCL ans I2S_LRCLK. We do not have that
on Haikou, causing distorted audio.
Before:
Running audioloopback.py script on Ringneck, 1kHz
output sine wave is not stable and shows distortion.
After:
10h stress tests audioloopback.py failed only one time.
That is 0.00014% failure rate.
Signed-off-by: Ermin Sunj <ermin.sunj@...obroma-systems.com>
---
arch/arm64/boot/dts/rockchip/px30-ringneck-haikou.dts | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/rockchip/px30-ringneck-haikou.dts b/arch/arm64/boot/dts/rockchip/px30-ringneck-haikou.dts
index 3a447d03e2a8..dafeef0c2dab 100644
--- a/arch/arm64/boot/dts/rockchip/px30-ringneck-haikou.dts
+++ b/arch/arm64/boot/dts/rockchip/px30-ringneck-haikou.dts
@@ -68,8 +68,10 @@ i2s0-sound {
simple-audio-card,format = "i2s";
simple-audio-card,name = "Haikou,I2S-codec";
simple-audio-card,mclk-fs = <512>;
+ simple-audio-card,frame-master = <&sgtl5000_codec>;
+ simple-audio-card,bitclock-master = <&sgtl5000_codec>;
- simple-audio-card,codec {
+ sgtl5000_codec: simple-audio-card,codec {
clocks = <&sgtl5000_clk>;
sound-dai = <&sgtl5000>;
};
--
2.39.2
Powered by blists - more mailing lists