Hi,
I have a custom board utilizing an Emcraft SOM with an i.MX 8M Mini processor. I am trying to configure the linux device tree to support a MAX98357A audio amplifier that is on the board. I don’t seem to have it configured correctly. Linux build is version 4.14.78.
I am expecting to see a soundcard listed for this device, but so far I am seeing nothing.
Thanks for any help,
Dan K.
Audio portion of DTS file:
#include "../freescale/fsl-imx8mm.dtsi"
/ {
codec: max98357a {
compatible = "maxim,max98357a";
#sound-dai-cells = <0>;
sdmode-gpios = <&gpio4 0 GPIO_ACTIVE_HIGH>;
};
sound {
compatible = "simple-audio-card";
pinctrl-names = "default";
pinctrl-0 = <&sdmode_en>;
simple-audio-card,name = "Board Audio";
simple-audio-card,format = "i2s";
simple-audio-card,widgets = "Speaker", "Speakers";
simple-audio-card,routing = "Speakers", "Speaker";
simple-audio-card,bitclock-master = <&cpu_dai>;
simple-audio-card,frame-master = <&cpu_dai>;
cpu_dai: simple-audio-card,cpu {
sound-dai = <&sai3>;
system-clock-frequency = <&sound_osc 0>;
dai-tdm-slot-num = <2>;
dai-tdm-slot-width = <16>;
};
codec_dai: simple-audio-card,codec {
sound-dai = <&codec>;
};
};
};
&iomuxc {
imx8mm-som {
pinctrl_sai3: sai3grp {
fsl,pins = <
MX8MM_IOMUXC_SAI3_TXFS_SAI3_TX_SYNC 0xd6
MX8MM_IOMUXC_SAI3_TXC_SAI3_TX_BCLK 0xd6
/*MX8MM_IOMUXC_SAI3_MCLK_SAI3_MCLK 0xd6*/
MX8MM_IOMUXC_SAI3_TXD_SAI3_TX_DATA0 0xd6
>;
};
sdmode_en: sdmodegrp {
fsl,pins = <
MX8MM_IOMUXC_SAI1_RXFS_GPIO4_IO0 0x1F
>;
};
};
};
&sai3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sai3>;
assigned-clocks = <&clk IMX8MM_CLK_SAI3_SRC>,
<&clk IMX8MM_CLK_SAI3_DIV>;
assigned-clock-parents = <&clk IMX8MM_AUDIO_PLL1_OUT>;
assigned-clock-rates = <0>, <24576000>;
status = "okay";
};
Hi dankendall
for "simple-audio-card" example one can look at
https://community.nxp.com/t5/i-MX-Processors/SAI-on-i-MX8M-Mini/m-p/959805
Best regards
igor