From: Marek Vasut Date: Fri, 30 Aug 2024 21:56:38 +0000 (+0200) Subject: ARM: dts: stm32: Use SAI to generate bit and frame clock on STM32MP15xx DHCOM PDK2 X-Git-Tag: v6.12-rc1~188^2~19^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7d6b8316ba139c5a7cbbaa888089d9f4eb527dc9;p=thirdparty%2Fkernel%2Flinux.git 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 --- 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>; }; }; };