[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHCN7xKDT-2GJMWwUtOQqHE4R24BOLWvsQy99gw0VP8zULtK+A@mail.gmail.com>
Date: Thu, 31 Aug 2023 07:34:39 -0500
From: Adam Ford <aford173@...il.com>
To: linux-arm-kernel@...ts.infradead.org
Cc: aford@...conembedded.com, Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Conor Dooley <conor+dt@...nel.org>,
Shawn Guo <shawnguo@...nel.org>,
Sascha Hauer <s.hauer@...gutronix.de>,
Pengutronix Kernel Team <kernel@...gutronix.de>,
Fabio Estevam <festevam@...il.com>,
NXP Linux Team <linux-imx@....com>,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 4/4] arm64: dts: imx8mp-beacon: Add DMIC support
On Thu, Aug 31, 2023 at 6:51 AM Adam Ford <aford173@...il.com> wrote:
>
> The baseboard has a connector for a pulse density microphone.
> This is connected via the micfil interface and uses the DMIC
> audio codec with the simple-audio-card.
>
> Signed-off-by: Adam Ford <aford173@...il.com>
>
Shawn,
I forgot to mention that this patch depends on a different patch that is found:
https://patchwork.kernel.org/project/linux-arm-kernel/patch/20230831044431.250338-2-aford173@gmail.com/
Sorry about that.
adam
> diff --git a/arch/arm64/boot/dts/freescale/imx8mp-beacon-kit.dts b/arch/arm64/boot/dts/freescale/imx8mp-beacon-kit.dts
> index acd265d8b58e..ee64c6ffb551 100644
> --- a/arch/arm64/boot/dts/freescale/imx8mp-beacon-kit.dts
> +++ b/arch/arm64/boot/dts/freescale/imx8mp-beacon-kit.dts
> @@ -49,6 +49,12 @@ ss_ep: endpoint {
> };
> };
>
> + dmic_codec: dmic-codec {
> + compatible = "dmic-codec";
> + num-channels = <1>;
> + #sound-dai-cells = <0>;
> + };
> +
> gpio-keys {
> compatible = "gpio-keys";
> autorepeat;
> @@ -147,6 +153,22 @@ reg_usb1_host_vbus: regulator-usb1-vbus {
> enable-active-high;
> };
>
> + sound-dmic {
> + compatible = "simple-audio-card";
> + simple-audio-card,name = "sound-pdm";
> + simple-audio-card,format = "i2s";
> + simple-audio-card,bitclock-master = <&dailink_master>;
> + simple-audio-card,frame-master = <&dailink_master>;
> +
> + dailink_master: simple-audio-card,cpu {
> + sound-dai = <&micfil>;
> + };
> +
> + simple-audio-card,codec {
> + sound-dai = <&dmic_codec>;
> + };
> + };
> +
> sound-wm8962 {
> compatible = "simple-audio-card";
> simple-audio-card,name = "wm8962";
> @@ -174,6 +196,11 @@ simple-audio-card,codec {
> };
> };
>
> +&audio_blk_ctrl {
> + assigned-clocks = <&clk IMX8MP_AUDIO_PLL1>, <&clk IMX8MP_AUDIO_PLL2>;
> + assigned-clock-rates = <393216000>, <135475200>;
> +};
> +
> &ecspi2 {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_ecspi2>;
> @@ -364,6 +391,15 @@ hd3ss3220_out_ep: endpoint {
> };
> };
>
> +&micfil {
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_pdm>;
> + assigned-clocks = <&clk IMX8MP_CLK_PDM>;
> + assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL1_OUT>;
> + assigned-clock-rates = <49152000>;
> + status = "okay";
> +};
> +
> &pcie {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_pcie>;
> @@ -545,6 +581,13 @@ MX8MP_IOMUXC_SAI2_RXFS__GPIO4_IO21 0x10 /* PCIe_nRST */
> >;
> };
>
> + pinctrl_pdm: pdmgrp {
> + fsl,pins = <
> + MX8MP_IOMUXC_SAI5_RXC__AUDIOMIX_PDM_CLK 0xd6
> + MX8MP_IOMUXC_SAI5_RXD0__AUDIOMIX_PDM_BIT_STREAM00 0xd6
> + >;
> + };
> +
> pinctrl_reg_usdhc2_vmmc: regusdhc2vmmcgrp {
> fsl,pins = <
> MX8MP_IOMUXC_SD2_RESET_B__GPIO2_IO19 0x40
> --
> 2.39.2
>
Powered by blists - more mailing lists