[PATCH 1/3] arm64: dts: imx8mm-evk: support more sample rates for wm8524 card
Frank Li
Frank.li at nxp.com
Wed Jul 16 12:16:59 PDT 2025
On Wed, Jul 16, 2025 at 02:11:12PM +0800, Shengjiu Wang wrote:
> The wm8524 codec is connected to the SAI interface. There are two audio
> plls on i.MX8MM, one pll can be the clock source of 44kHz series rates,
> another pll can be clock source of 48kHz series rates.
>
> Add mclk-fs property for the clock ratio, remove 'clocks' property for
> codec that doesn't need to handle clock enablement, add
> 'system-clock-direction-out' for clock is from cpu dai.
Can you provide the reason why need such change?
>
> Signed-off-by: Shengjiu Wang <shengjiu.wang at nxp.com>
> ---
> arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi | 17 +++++++++++++----
> 1 file changed, 13 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi b/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi
> index 622caaa78eaf..ff7ca2075230 100644
> --- a/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi
> @@ -147,6 +147,7 @@ sound-wm8524 {
> simple-audio-card,format = "i2s";
> simple-audio-card,frame-master = <&cpudai>;
> simple-audio-card,bitclock-master = <&cpudai>;
> + simple-audio-card,mclk-fs = <256>;
what's measn 256? Do you need mention in commit message?
Frank
> simple-audio-card,widgets =
> "Line", "Left Line Out Jack",
> "Line", "Right Line Out Jack";
> @@ -158,11 +159,11 @@ cpudai: simple-audio-card,cpu {
> sound-dai = <&sai3>;
> dai-tdm-slot-num = <2>;
> dai-tdm-slot-width = <32>;
> + system-clock-direction-out;
> };
>
> simple-audio-card,codec {
> sound-dai = <&wm8524>;
> - clocks = <&clk IMX8MM_CLK_SAI3_ROOT>;
> };
> };
>
> @@ -570,9 +571,17 @@ &sai2 {
> &sai3 {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_sai3>;
> - assigned-clocks = <&clk IMX8MM_CLK_SAI3>;
> - assigned-clock-parents = <&clk IMX8MM_AUDIO_PLL1_OUT>;
> - assigned-clock-rates = <24576000>;
> + assigned-clocks = <&clk IMX8MM_AUDIO_PLL1>,
> + <&clk IMX8MM_AUDIO_PLL2>,
> + <&clk IMX8MM_CLK_SAI3>;
> + assigned-clock-parents = <0>, <0>, <&clk IMX8MM_AUDIO_PLL1_OUT>;
> + assigned-clock-rates = <393216000>, <361267200>, <24576000>;
> + fsl,sai-mclk-direction-output;
> + clocks = <&clk IMX8MM_CLK_SAI3_IPG>, <&clk IMX8MM_CLK_DUMMY>,
> + <&clk IMX8MM_CLK_SAI3_ROOT>, <&clk IMX8MM_CLK_DUMMY>,
> + <&clk IMX8MM_CLK_DUMMY>, <&clk IMX8MM_AUDIO_PLL1_OUT>,
> + <&clk IMX8MM_AUDIO_PLL2_OUT>;
> + clock-names = "bus", "mclk0", "mclk1", "mclk2", "mclk3", "pll8k", "pll11k";
> status = "okay";
> };
>
> --
> 2.34.1
>
More information about the linux-arm-kernel
mailing list