Commit b4383609 authored by Adam Ford's avatar Adam Ford Committed by Shawn Guo
Browse files

arm64: dts: imx8mp-beacon: Add DMIC support



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: default avatarAdam Ford <aford173@gmail.com>
Reviewed-by: default avatarFabio Estevam <festevam@gmail.com>
Signed-off-by: default avatarShawn Guo <shawnguo@kernel.org>
parent 2b49b889
Loading
Loading
Loading
Loading
+43 −0
Original line number Diff line number Diff line
@@ -55,6 +55,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>;
@@ -371,6 +398,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>;
@@ -553,6 +589,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