From 7d6b8316ba139c5a7cbbaa888089d9f4eb527dc9 Mon Sep 17 00:00:00 2001 From: Marek Vasut Date: Fri, 30 Aug 2024 23:56:38 +0200 Subject: [PATCH] ARM: dts: stm32: Use SAI to generate bit and frame clock on STM32MP15xx DHCOM PDK2 By default the SGTL5000 derives bit and frame clock from MCLK, which does not produce particularly accurate results. The SGTL5000 PLL does improve the accuracy, but also increases power consumption. Using the SoC SAI interface as bit and frame clock source results in the best accuracy without the power consumption increase downside. Switch the bit and frame clock direction from SAI to SGTL5000, reduce mclk-fs to match. Signed-off-by: Marek Vasut Signed-off-by: Alexandre Torgue --- arch/arm/boot/dts/st/stm32mp15xx-dhcom-pdk2.dtsi | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/arch/arm/boot/dts/st/stm32mp15xx-dhcom-pdk2.dtsi b/arch/arm/boot/dts/st/stm32mp15xx-dhcom-pdk2.dtsi index ea933da64903c..171d7c7658fa8 100644 --- a/arch/arm/boot/dts/st/stm32mp15xx-dhcom-pdk2.dtsi +++ b/arch/arm/boot/dts/st/stm32mp15xx-dhcom-pdk2.dtsi @@ -191,15 +191,11 @@ sgtl5000_tx_endpoint: endpoint@0 { reg = <0>; - bitclock-master; - frame-master; remote-endpoint = <&sai2a_endpoint>; }; sgtl5000_rx_endpoint: endpoint@1 { reg = <1>; - bitclock-master; - frame-master; remote-endpoint = <&sai2b_endpoint>; }; }; @@ -245,10 +241,12 @@ sai2a_port: port { sai2a_endpoint: endpoint { remote-endpoint = <&sgtl5000_tx_endpoint>; + bitclock-master; dai-format = "i2s"; dai-tdm-slot-num = <2>; dai-tdm-slot-width = <16>; - mclk-fs = <512>; + frame-master; + mclk-fs = <256>; }; }; }; @@ -263,10 +261,12 @@ sai2b_port: port { sai2b_endpoint: endpoint { remote-endpoint = <&sgtl5000_rx_endpoint>; + bitclock-master; dai-format = "i2s"; dai-tdm-slot-num = <2>; dai-tdm-slot-width = <16>; - mclk-fs = <512>; + frame-master; + mclk-fs = <256>; }; }; }; -- 2.39.5