[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aCuB7RHb+cy96Ynh@lizhi-Precision-Tower-5810>
Date: Mon, 19 May 2025 15:09:33 -0400
From: Frank Li <Frank.li@....com>
To: Shengjiu Wang <shengjiu.wang@....com>
Cc: robh@...nel.org, krzk+dt@...nel.org, conor+dt@...nel.org,
shawnguo@...nel.org, s.hauer@...gutronix.de, kernel@...gutronix.de,
festevam@...il.com, devicetree@...r.kernel.org, imx@...ts.linux.dev,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org,
shengjiu.wang@...il.com, carlos.song@....com
Subject: Re: [PATCH 6/6] arm64: dts: imx943-evk: Add PDM microphone sound
card support
On Thu, May 15, 2025 at 01:19:00PM +0800, Shengjiu Wang wrote:
> Add PDM micphone sound card support, configure the pinmux.
>
> This sound card supports recording sound from PDM microphone and convert
> the PDM format data to PCM data.
>
> Signed-off-by: Shengjiu Wang <shengjiu.wang@....com>
Reviewed-by: Frank Li <Frank.Li@....com>
> ---
> arch/arm64/boot/dts/freescale/imx943-evk.dts | 60 ++++++++++++++++++++
> 1 file changed, 60 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx943-evk.dts b/arch/arm64/boot/dts/freescale/imx943-evk.dts
> index 85cec644dd92..c8c3eff9df1a 100644
> --- a/arch/arm64/boot/dts/freescale/imx943-evk.dts
> +++ b/arch/arm64/boot/dts/freescale/imx943-evk.dts
> @@ -29,6 +29,11 @@ chosen {
> stdout-path = &lpuart1;
> };
>
> + dmic: dmic {
> + compatible = "dmic-codec";
> + #sound-dai-cells = <0>;
> + };
> +
> reg_usdhc2_vmmc: regulator-usdhc2 {
> compatible = "regulator-fixed";
> off-on-delay-us = <12000>;
> @@ -83,6 +88,24 @@ btcpu: simple-audio-card,cpu {
> };
> };
>
> + sound-micfil {
> + compatible = "fsl,imx-audio-card";
> + model = "micfil-audio";
> +
> + pri-dai-link {
> + format = "i2s";
> + link-name = "micfil hifi";
> +
> + codec {
> + sound-dai = <&dmic>;
> + };
> +
> + cpu {
> + sound-dai = <&micfil>;
> + };
> + };
> + };
> +
> sound-wm8962 {
> compatible = "fsl,imx-audio-wm8962";
> audio-codec = <&wm8962>;
> @@ -204,6 +227,12 @@ audio-pwren-hog {
> gpio-hog;
> output-high;
> };
> +
> + mqs-mic-sel-hog {
> + gpios = <11 GPIO_ACTIVE_HIGH>;
> + gpio-hog;
> + output-low;
> + };
> };
> };
>
> @@ -314,6 +343,13 @@ pcal6416_i2c6_u44: gpio@20 {
> #gpio-cells = <2>;
> gpio-controller;
>
> + /* pdm selection */
> + can-pdm-sel-hog {
> + gpios = <12 GPIO_ACTIVE_HIGH>;
> + gpio-hog;
> + output-low;
> + };
> +
> sai3-sel-hog {
> gpios = <11 GPIO_ACTIVE_HIGH>;
> gpio-hog;
> @@ -344,6 +380,22 @@ &lpuart1 {
> status = "okay";
> };
>
> +&micfil {
> + assigned-clocks = <&scmi_clk IMX94_CLK_AUDIOPLL1_VCO>,
> + <&scmi_clk IMX94_CLK_AUDIOPLL2_VCO>,
> + <&scmi_clk IMX94_CLK_AUDIOPLL1>,
> + <&scmi_clk IMX94_CLK_AUDIOPLL2>,
> + <&scmi_clk IMX94_CLK_PDM>;
> + assigned-clock-parents = <0>, <0>, <0>, <0>,
> + <&scmi_clk IMX94_CLK_AUDIOPLL1>;
> + assigned-clock-rates = <3932160000>,
> + <3612672000>, <393216000>,
> + <361267200>, <49152000>;
> + pinctrl-0 = <&pinctrl_pdm>;
> + pinctrl-names = "default";
> + status = "okay";
> +};
> +
> &sai1 {
> assigned-clocks = <&scmi_clk IMX94_CLK_AUDIOPLL1_VCO>,
> <&scmi_clk IMX94_CLK_AUDIOPLL2_VCO>,
> @@ -413,6 +465,14 @@ IMX94_PAD_GPIO_IO28__LPI2C6_SCL 0x40000b9e
> >;
> };
>
> + pinctrl_pdm: pdmgrp {
> + fsl,pins = <
> + IMX94_PAD_PDM_CLK__PDM_CLK 0x31e
> + IMX94_PAD_PDM_BIT_STREAM0__PDM_BIT_STREAM0 0x31e
> + IMX94_PAD_PDM_BIT_STREAM1__PDM_BIT_STREAM1 0x31e
> + >;
> + };
> +
> pinctrl_sai1: sai1grp {
> fsl,pins = <
> IMX94_PAD_SAI1_TXFS__SAI1_TX_SYNC 0x31e
> --
> 2.34.1
>
Powered by blists - more mailing lists