Codec播放音樂會有底噪

Platform: RK3399
OS: Android 7.1
Kernel: v4.4.83

背景:
移植完Codec RT5640之後,發現播放聲音的時候底部有噪聲。
用示波器測量到的左右聲道波形如下:
左聲道波形:

å¨è¿éæå¥å¾çæè¿°
右聲道波形:

å¨è¿éæå¥å¾çæè¿°
左右聲道波形:

å¨è¿éæå¥å¾çæè¿°
原因:
一般波形上有這種有規律的毛刺基本上都是clock的問題。

經後面分析查證,發現i2s1的master clock在主rk3399.dtsi中的改動被
rk3399-vop-clk-set.dtsi中的原始配置給覆蓋了導致。
關於RT5640的移植配置見文章: [RK3399][Android7.1] 移植筆記 — 音頻Codec RT5640添加

解決方法:
註釋rk3399-vop-clk-set.dtsi中的i2s1節點配置。

 kris@eco:~/rk3399/kernel$ g df 984b7775a67e26667e76768f32d49752c1d20316 e2251e9c8208761fdacbcfbe7e4943a71d4338af
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-vop-clk-set.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-vop-clk-set.dtsi
index 14ff440..8a98bbc 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-vop-clk-set.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3399-vop-clk-set.dtsi
@@ -89,10 +89,12 @@
                assigned-clock-parents = <&cru PLL_GPLL>;
 };
 
+/* Kris,180906, Fix playback noise issue.
 &i2s1 {
                assigned-clocks = <&cru SCLK_I2S1_DIV>;
                assigned-clock-parents = <&cru PLL_GPLL>;
 };
+*/
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章