<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>i.MX ProcessorsのトピックRe: I2S 2-channel mems microphone</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726644#M112990</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jarrod,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks a lot for providing your inputs. After debugging i got the card registered. Here is the output.&lt;/P&gt;&lt;P&gt;cat /proc/asound/cards&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;0 [imxaudiosph0645]: imx-audio-sph06 - imx-audio-sph0645&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; imx-audio-sph0645&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But when i run the command arecord got this error:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;arecord -c 2 -d 5 -f S32 -r 48000 -v /home/root/test.wav&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Recording WAVE '/home/root/test.wav' : Signed 32 bit Little Endian, Rate 48000 o&lt;BR /&gt;fsl-sai 2028000.sai: failed to derive required Rx rate: 2304000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;fsl-sai 2028000.sai: ASoC: can't set 2028000.sai hw params: -22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;arecord: set_params:1382: Unable to install hw params:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;ACCESS:&amp;nbsp; RW_INTERLEAVED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;FORMAT:&amp;nbsp; S32_LE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;SUBFORMAT:&amp;nbsp; STD&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;SAMPLE_BITS: 32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;FRAME_BITS: 64&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;CHANNELS: 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;RATE: 48000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;PERIOD_TIME: (42666 42667)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;PERIOD_SIZE: 2048&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;PERIOD_BYTES: 16384&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;PERIODS: 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;BUFFER_TIME: (170666 170667)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;BUFFER_SIZE: 8192&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;BUFFER_BYTES: 65536&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;TICK_TIME: 0 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;"failed to derive required Rx rate:" - This device print i have found in fsl_sai.c but we havent called that function in our driver code. Function which i am using is "snd_soc_dai_set_sysclk(cpu_dai, 0, bclk, SND_SOC_CLOCK_OUT)". As i am passing parameter 48000 then bclk should be 48000*32*2 but its taking 48000*24*2 = 2304000, that part also i am not able to get. Can you share some thoughts on this and any comments for hardware installation error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Hitesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 10 Apr 2019 09:24:23 GMT</pubDate>
    <dc:creator>hitesh_kasera</dc:creator>
    <dc:date>2019-04-10T09:24:23Z</dc:date>
    <item>
      <title>I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726626#M112972</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have 2 I2S microphones (SPH0645LM4H) hooked up to an i.MX6 Solo.&amp;nbsp; These mic's transmit I2S audio data on either the low Frame Clock or the High Frame Clock of the I2S based on a select pin, i have one pulled either way so that i essentially have stereo microphones.&amp;nbsp; I have everything setup and working and i can capture audio data but i only get the left channel, the right channels i just silence with a little white noise.&amp;nbsp; I can't seem to figure out what the problem is, I can see the data on the scope and everything looks great, i see left channel data during the low frame clock and right channel during the high frame clock.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;They are connected as follows:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I2S_CLK -&amp;gt; CSI0_DAT4 -&amp;gt; AUD3_TXC&lt;/P&gt;&lt;P&gt;I2S_WS -&amp;gt; CSI0_DAT6 -&amp;gt; AUD3_TXFS&lt;/P&gt;&lt;P&gt;I2S_DATA -&amp;gt; CSI0_DAT7 -&amp;gt; AUD3_RXD&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And here is how the device tree is setup:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;pinctrl_micmux: micmuxgrp {&lt;BR /&gt; fsl,pins = &amp;lt;&lt;BR /&gt; MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0&lt;BR /&gt; MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0&lt;BR /&gt; MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0&lt;BR /&gt; &amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sound {&lt;BR /&gt; compatible = "fsl,imx-audio-sph0645", &lt;BR /&gt; "fsl,imx-mic-sph0645";&lt;BR /&gt; model = "sph0645-audio";&lt;BR /&gt; ssi-controller = &amp;lt;&amp;amp;ssi2&amp;gt;;&lt;BR /&gt; mux-int-port = &amp;lt;2&amp;gt;;&lt;BR /&gt; mux-ext-port = &amp;lt;3&amp;gt;;&lt;BR /&gt; };&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;audmux {&lt;BR /&gt; pinctrl-names = "default";&lt;BR /&gt; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_micmux&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;ssi2 {&lt;BR /&gt; fsl,mode = "i2s-master";&lt;BR /&gt; assigned-clocks = &amp;lt;&amp;amp;clks IMX6QDL_CLK_SSI2_SEL&amp;gt;,&lt;BR /&gt; &amp;lt;&amp;amp;clks IMX6QDL_CLK_PLL4_AUDIO_DIV&amp;gt;;&lt;BR /&gt; assigned-clock-rates = &amp;lt;0&amp;gt;;&lt;BR /&gt; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And imx-audio-sph0645 is a small driver i wrote just to try and get this working, i have attached the whole file but here are the important parts:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;static int imx_audmux_config(int slave, int master)&lt;BR /&gt;{&lt;BR /&gt; unsigned int ptcr, pdcr;&lt;BR /&gt; slave = slave - 1;&lt;BR /&gt; master = master - 1;&lt;/P&gt;&lt;P&gt;ptcr = IMX_AUDMUX_V2_PTCR_SYN |&lt;BR /&gt; IMX_AUDMUX_V2_PTCR_TFSDIR |&lt;BR /&gt; IMX_AUDMUX_V2_PTCR_TFSEL(slave) |&lt;BR /&gt; IMX_AUDMUX_V2_PTCR_TCLKDIR |&lt;BR /&gt; IMX_AUDMUX_V2_PTCR_TCSEL(slave);&lt;BR /&gt; pdcr = IMX_AUDMUX_V2_PDCR_RXDSEL(slave);&lt;BR /&gt; imx_audmux_v2_configure_port(master, ptcr, pdcr);&lt;/P&gt;&lt;P&gt;/*&lt;BR /&gt; * According to RM, RCLKDIR and SYN should not be changed at same time.&lt;BR /&gt; * So separate to two step for configuring this port.&lt;BR /&gt; */&lt;BR /&gt; ptcr |= IMX_AUDMUX_V2_PTCR_RFSDIR |&lt;BR /&gt; IMX_AUDMUX_V2_PTCR_RFSEL(slave) |&lt;BR /&gt; IMX_AUDMUX_V2_PTCR_RCLKDIR |&lt;BR /&gt; IMX_AUDMUX_V2_PTCR_RCSEL(slave);&lt;BR /&gt; imx_audmux_v2_configure_port(master, ptcr, pdcr);&lt;/P&gt;&lt;P&gt;ptcr = IMX_AUDMUX_V2_PTCR_SYN;&lt;BR /&gt; pdcr = IMX_AUDMUX_V2_PDCR_RXDSEL(master);&lt;BR /&gt; imx_audmux_v2_configure_port(slave, ptcr, pdcr);&lt;/P&gt;&lt;P&gt;return 0;&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;static int imx_sph0645_hw_params(struct snd_pcm_substream *substream,&lt;BR /&gt; struct snd_pcm_hw_params *params)&lt;BR /&gt;{&lt;BR /&gt; struct snd_soc_pcm_runtime *rtd = substream-&amp;gt;private_data;&lt;BR /&gt; struct snd_soc_dai *cpu_dai = rtd-&amp;gt;cpu_dai;&lt;BR /&gt; u32 channels = 2; //ALWAYS 2 CHANNELS params_channels(params);&lt;BR /&gt; u32 rate = params_rate(params);&lt;BR /&gt; u32 bclk = rate * channels * 32;&lt;BR /&gt; int ret = 0;&lt;/P&gt;&lt;P&gt;/* set cpu DAI configuration */&lt;BR /&gt; ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_CBS_CFS);&lt;BR /&gt; if (ret) {&lt;BR /&gt; dev_err(cpu_dai-&amp;gt;dev, "failed to set dai fmt\n");&lt;BR /&gt; return ret;&lt;BR /&gt; }&lt;/P&gt;&lt;P&gt;ret = snd_soc_dai_set_tdm_slot(cpu_dai, 0, 3, 2, 32);&lt;BR /&gt; if (ret) {&lt;BR /&gt; dev_err(cpu_dai-&amp;gt;dev, "failed to set dai tdm slot\n");&lt;BR /&gt; return ret;&lt;BR /&gt; }&lt;/P&gt;&lt;P&gt;ret = snd_soc_dai_set_sysclk(cpu_dai, 0, bclk, SND_SOC_CLOCK_OUT);&lt;BR /&gt; if (ret)&lt;BR /&gt; dev_err(cpu_dai-&amp;gt;dev, "failed to set cpu sysclk\n");&lt;/P&gt;&lt;P&gt;return ret;&lt;BR /&gt;}&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Any idea what I am doing wrong??? Like i said on an oscilloscope the signals look great and i get great left channel audio, but nothing on the right : /.&amp;nbsp; Here is how I am recording:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;arecord -c 2 -d 5 -f S32 -r 48000 -v /home/root/test.wav&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jarrod&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 May 2018 21:07:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726626#M112972</guid>
      <dc:creator>jcc273</dc:creator>
      <dc:date>2018-05-04T21:07:08Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726627#M112973</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jarrod&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;to narrow down problem if this is related to AUDMUX/SSI settings or linux,&lt;/P&gt;&lt;P&gt;one can test configuration with baremetal sdk&lt;/P&gt;&lt;P&gt;Github SDK&lt;BR /&gt;&lt;A class="jive-link-external-small" href="https://community.nxp.com/external-link.jspa?url=https%3A%2F%2Fgithub.com%2Fbackenklee%2Fswp-report%2Ftree%2Fmaster%2FiMX6_Platform_SDK" rel="nofollow" target="_blank"&gt;https://github.com/backenklee/swp-report/tree/master/iMX6_Platform_SDK&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;BR /&gt;igor&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 May 2018 23:32:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726627#M112973</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-05-04T23:32:26Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726628#M112974</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Alright i can maybe try out this SDK later this week.&amp;nbsp; Since both left and right microphones use the same exact 3 lines for CLK, FS, and DATA and the left microphone works i would think there is no problem with AUDMUX settings.&amp;nbsp; And the SSI settings look correct for I2S Master, see below in my sample recording:&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;~ # arecord -c 2 -d 20 -f S32 -r 48000 -v /home/root/test.wav &amp;amp;&lt;BR /&gt;~ # Recording WAVE '/home/root/test.wav' : Signed 32 bit Little Endian, Rate 48000 Hz, Stereo&lt;BR /&gt;Plug PCM: Linear conversion PCM (S24_LE)&lt;BR /&gt;Its setup is:&lt;BR /&gt; stream : CAPTURE&lt;BR /&gt; access : RW_INTERLEAVED&lt;BR /&gt; format : S32_LE&lt;BR /&gt; subformat : STD&lt;BR /&gt; channels : 2&lt;BR /&gt; rate : 48000&lt;BR /&gt; exact rate : 48000 (48000/1)&lt;BR /&gt; msbits : 32&lt;BR /&gt; buffer_size : 8192&lt;BR /&gt; period_size : 2048&lt;BR /&gt; period_time : 42666&lt;BR /&gt; tstamp_mode : NONE&lt;BR /&gt; tstamp_type : MONOTONIC&lt;BR /&gt; period_step : 1&lt;BR /&gt; avail_min : 2048&lt;BR /&gt; period_event : 0&lt;BR /&gt; start_threshold : 1&lt;BR /&gt; stop_threshold : 8192&lt;BR /&gt; silence_threshold: 0&lt;BR /&gt; silence_size : 0&lt;BR /&gt; boundary : 1073741824&lt;BR /&gt;Slave: Hardware PCM card 0 'imx-audio-sph0645' device 0 subdevice 0&lt;BR /&gt;Its setup is:&lt;BR /&gt; stream : CAPTURE&lt;BR /&gt; access : MMAP_INTERLEAVED&lt;BR /&gt; format : S24_LE&lt;BR /&gt; subformat : STD&lt;BR /&gt; channels : 2&lt;BR /&gt; rate : 48000&lt;BR /&gt; exact rate : 48000 (48000/1)&lt;BR /&gt; msbits : 32&lt;BR /&gt; buffer_size : 8192&lt;BR /&gt; period_size : 2048&lt;BR /&gt; period_time : 42666&lt;BR /&gt; tstamp_mode : NONE&lt;BR /&gt; tstamp_type : MONOTONIC&lt;BR /&gt; period_step : 1&lt;BR /&gt; avail_min : 2048&lt;BR /&gt; period_event : 0&lt;BR /&gt; start_threshold : 1&lt;BR /&gt; stop_threshold : 8192&lt;BR /&gt; silence_threshold: 0&lt;BR /&gt; silence_size : 0&lt;BR /&gt; boundary : 1073741824&lt;BR /&gt; appl_ptr : 0&lt;BR /&gt; hw_ptr : 0&lt;BR /&gt;~ # devmem 0x0202C010 32&lt;BR /&gt;0x000011BD &amp;lt;-----SSI2_SCR&lt;BR /&gt;~ # devmem 0x0202C01C 32&lt;BR /&gt;0x0000036D &amp;lt;-----SSI2_STCR&lt;BR /&gt;~ # devmem 0x0202C020 32&lt;BR /&gt;0x000003CD &amp;lt;-----SSI2_SRCR&lt;BR /&gt;~ # devmem 0x0202C024 32&lt;BR /&gt;0x00016152 &amp;lt;-----SSI2_STCCR&lt;BR /&gt;~ # devmem 0x0202C028 32&lt;BR /&gt;0x00040100 &amp;lt;-----SSI2_SRCCR&lt;BR /&gt;~ # devmem 0x0202C02C 32&lt;BR /&gt;0xC0DDC0DD &amp;lt;-----SSI2_SFCSR&lt;BR /&gt;~ #&lt;BR /&gt;~ #&lt;BR /&gt;[1]+ Done arecord -c 2 -d 20 -f S32 -r 48000 -v /home/root/test.wav&lt;BR /&gt;~ #&lt;BR /&gt;&lt;P&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I feel like i probably don't have something configured right in the kernel or with the DMA and how it is pulling data out or something because it is only the right channel that doesn't work : /&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 07 May 2018 18:30:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726628#M112974</guid>
      <dc:creator>jcc273</dc:creator>
      <dc:date>2018-05-07T18:30:45Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726629#M112975</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;probably you can recheck ssi rx buffers and check data for both left and right mics.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 May 2018 06:00:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726629#M112975</guid>
      <dc:creator>igorpadykov</dc:creator>
      <dc:date>2018-05-08T06:00:27Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726630#M112976</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Alright figured this out, i had a couple problems.&amp;nbsp; The main was that it turned out they washed the boards with the microphones on there : /.&amp;nbsp; This damaged a lot of the microphones internally but the since they have I2S output it was still outputting data just not valid audio data, only white noise.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The other issue was in the format, the SPH0645 microphone does 18-bit data and outputs it as 0 padded 24-bit data, but when i was recording as 24-bit it would pull the entire 32-bit value from the RX register (with 32-bit 0x00 padding) and put the whole thing into the resulting wave file.&amp;nbsp; So when i played back these files it was trying to play a 24-bit file that actually contained 32-bit data which resulted in a bunch of awful sounding garbage.&amp;nbsp; Changing the file format to 32-bit sample size corrects this issue.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So replaced the microphones and fixed the formatting (i actually am only using 16-bit instead which circumvents the non-aligned issue since the microphone only does 18-bit output anyway I'm only losing 2 bits).&amp;nbsp; Now i have perfect stereo audio recording! : )&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Jun 2018 23:00:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726630#M112976</guid>
      <dc:creator>jcc273</dc:creator>
      <dc:date>2018-06-05T23:00:18Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726631#M112977</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jarrod,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have started working with 1 I2S microphones (SPH0645LM4H) hooked up to an i.MX6UL. I want to record audio from mic to one file. I am using software environment Eclipse to implement the code in c. Request you to please guide me how should i go ahead. it would be really helpful.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Device Tree is:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/ {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Reference block.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Add your sensor configuration.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //sound_max98089: sound-max98089 {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; compatible = "fsl,imx-audio-max98088";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; model = "imx-max98088";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; cpu-dai = &amp;lt;&amp;amp;sai1&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; audio-codec = &amp;lt;&amp;amp;max98089&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; asrc-controller = &amp;lt;&amp;amp;asrc&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; gpr = &amp;lt;&amp;amp;gpr&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; audio-routing =&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Headphone Jack", "HPL",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Headphone Jack", "HPR",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Ext Spk", "SPKL",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Ext Spk", "SPKR",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "LineOut", "RECL",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "LineOut", "RECR",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Mic1", "MIC1",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Mic2", "MIC2",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "LineInA", "INA1",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "LineInA", "INA2",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "LineInB", "INB1",&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "LineInB", "INB2";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; status = "okay";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //};&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/*&lt;BR /&gt;&amp;nbsp;* Reference block.&lt;BR /&gt;&amp;nbsp;*&lt;BR /&gt;&amp;nbsp;* Add your codec configuration to the corresponding I2C.&lt;BR /&gt;&amp;nbsp;*/&lt;BR /&gt;//&amp;amp;i2c1 {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //max98089: codec@10 {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; compatible = "maxim,max98089";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; reg = &amp;lt;0x10&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; clocks = &amp;lt;&amp;amp;clks IMX6UL_CLK_SAI1&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; clock-names = "mclk";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; interrupt-parent = &amp;lt;&amp;amp;gpio5&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; interrupts = &amp;lt;7 IRQ_TYPE_EDGE_FALLING&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp; status = "okay";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //};&lt;BR /&gt;//};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;sai1 {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pinctrl-names = "default";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_sai1&amp;gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Reference block.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Codec dependent section.&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //assigned-clocks = &amp;lt;&amp;amp;clks IMX6UL_CLK_SAI1_SEL&amp;gt;,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&amp;amp;clks IMX6UL_CLK_PLL4_AUDIO_DIV&amp;gt;,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&amp;amp;clks IMX6UL_CLK_SAI1&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //assigned-clock-rates = &amp;lt;0&amp;gt;, &amp;lt;786432000&amp;gt;, &amp;lt;12288000&amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //assigned-clock-parents = &amp;lt;&amp;amp;clks IMX6UL_CLK_PLL4_AUDIO_DIV&amp;gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;iomuxc {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; imx6ul-ccimx6ul {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; pinctrl_sai1: sai1grp {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fsl,pins = &amp;lt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6UL_PAD_LCD_DATA00__SAI1_MCLK&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;0x17088&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6UL_PAD_LCD_DATA03__SAI1_RX_DATA&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;0x11088&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6UL_PAD_LCD_DATA02__SAI1_TX_BCLK&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;0x17088&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6UL_PAD_CSI_DATA07__SAI1_TX_DATA&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;0x11088&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MX6UL_PAD_LCD_DATA01__SAI1_TX_SYNC&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;0x17088&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;gt;;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Hitesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 28 Mar 2019 07:41:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726631#M112977</guid>
      <dc:creator>hitesh_kasera</dc:creator>
      <dc:date>2019-03-28T07:41:39Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726632#M112978</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Hitesh,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It has been awhile since i worked on this, but I'll try to describe everything the best I can : ).&amp;nbsp; I have attached a kernel patch that contains the driver i added for this microphone on the imx6.&amp;nbsp; I couldn't find a generic microphone driver that did what i wanted with the imx6 so i created one.&amp;nbsp; This patch is for the imx kernel (git.freescale.com/imx/linux-2.6-imx.git) version rel_imx_4.1.15_1.1.0_ga, BUT it is pretty&amp;nbsp;generic and you should be able to fairly easily patch almost any similar kernel with it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Apply this patch to your kernel then you will want to add the following entries in the appropriate sections in your device tree:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/ {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;/*Use the sph0645 driver the patch adds&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;On my board the microphone is connected to SSI2&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;mux-int-port sets the internal audmux connection (2 = SSI2)&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;mux-ext-port sets the external audmux connection (3 = AUD3)&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;See Chapter 16 on reference manual for more on AUDMUX, but&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;on my board I am using SSI2 and i have my mic connected to the&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;AUD3 RXD, TXC, and TXFS lines, so just change the number below&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;based on what you are using */&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;sound {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;compatible = "fsl,imx-audio-sph0645", &lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"fsl,imx-mic-sph0645";&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;model = "sph0645-audio";&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ssi-controller = &amp;lt;&amp;amp;ssi2&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;mux-int-port = &amp;lt;2&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;mux-ext-port = &amp;lt;3&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* Pinmuxing for the AUDMUX lines my microphone is connected to */&lt;BR /&gt;&amp;amp;audmux {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;pinctrl-names = "default";&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;pinctrl-0 = &amp;lt;&amp;amp;pinctrl_micmux&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* Enable the SSI2 as an I2S master */&lt;BR /&gt;&amp;amp;ssi2 {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;fsl,mode = "i2s-master";&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;assigned-clocks = &amp;lt;&amp;amp;clks IMX6QDL_CLK_SSI2_SEL&amp;gt;,&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&amp;amp;clks IMX6QDL_CLK_PLL4_AUDIO_DIV&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;assigned-clock-rates = &amp;lt;0&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;fsl,fifo-depth = &amp;lt;15&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* Define the pinmuxing for the lines your microphone is connected to,&lt;BR /&gt;mine is connected to AUD3 */&lt;BR /&gt;&amp;amp;iomuxc {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;pinctrl-names = "default";&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;imx6qdl-sabresd {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pinctrl_micmux: micmuxgrp {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;fsl,pins = &amp;lt;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;BR /&gt;};&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I put some comments in there to describe things, but basically I am using SSI2 internally so you should be able to leave that as is as long as you aren't using ssi2 for something else.&amp;nbsp; The only thing you might need to change is the AUDMUX stuff, as you can see i have my microphone's lines connected to CSI0_DAT7_)AUD3_RXD, CSI0_DAT4_)AUD3_TXC, and CSI0_DAT6__AUD3_TXFS.&amp;nbsp; If you aren't using the same pins then you will need to adjust the pinmuxing and then if you aren't using AUD3 you will need to change mux-ext-port in the sound module to the AUD you are using.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Anyways once you get that all setup and enable the new driver in your kernel and rebuild you should then have an audio device available in linux for use in capturing audio.&amp;nbsp; It will expose 2 channel audio in case you have 2 microphones attached, but it will still work just the same with 1 microphone just route mono audio in your asound.conf or whatever.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hopefully this helps!&amp;nbsp; Let me know if you have any other questions and maybe i can point you in the right direction : )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-Jarrod&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 29 Mar 2019 13:02:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726632#M112978</guid>
      <dc:creator>jcc273</dc:creator>
      <dc:date>2019-03-29T13:02:44Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726633#M112979</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi jarrod,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks a lot for your response. I can understand you have done this in past. Right now i am using connect core I.mx6ul not i.mx solo, from Digi which doesnt have audmux.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Device tree is :&lt;/P&gt;&lt;P&gt;&amp;amp;sai1 {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pinctrl-names = "default";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pinctrl-0 = &amp;lt;&amp;amp;pinctrl_sai1&amp;gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /*&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Reference block.&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * Codec dependent section.&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assigned-clocks = &amp;lt;&amp;amp;clks IMX6UL_CLK_SAI1_SEL&amp;gt;,&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&amp;amp;clks IMX6UL_CLK_PLL4_AUDIO_DIV&amp;gt;,&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&amp;amp;clks IMX6UL_CLK_SAI1&amp;gt;;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assigned-clock-rates = &amp;lt;0&amp;gt;, &amp;lt;786432000&amp;gt;, &amp;lt;12288000&amp;gt;;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; assigned-clock-parents = &amp;lt;&amp;amp;clks IMX6UL_CLK_PLL4_AUDIO_DIV&amp;gt;;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; status = "okay";&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;};&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Let me know what you think of this configuration. i didnt get purpose of assigning clock rates to 0 in your case.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am hoping patch file which you have provided contains audiomux function but in i.mxul there is no such audio multiplexer. in this processor there is sai (serial audio interface) in place of ssi controller and no audio multiplexer. i will be using sai1. how i should i proceed with this. it will be really helpful if you can guide. what additional changes i need to do in patch file and in device true configuration?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;let me know your suggestions!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Thanks &amp;amp; Regards,&lt;BR /&gt;Hitesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 30 Mar 2019 20:21:28 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726633#M112979</guid>
      <dc:creator>hitesh_kasera</dc:creator>
      <dc:date>2019-03-30T20:21:28Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726634#M112980</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Jarrod -&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Are you using an ALSA config file for routing? If so, do you know what that looked like?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Apr 2019 03:33:35 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726634#M112980</guid>
      <dc:creator>gordonsmith</dc:creator>
      <dc:date>2019-04-01T03:33:35Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726635#M112981</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hitesh,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ah okay, i have never used the SAI before, but probably you just need to remove the audmux stuff from the driver and then tie the new driver and the SAI together with your device tree.&amp;nbsp; I have attached a new driver file for the microphone that shows what I mean.&amp;nbsp; Then probably use something similar to this in your device tree:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/ {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;sound {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;compatible = "fsl,imx-audio-sph0645", &lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"fsl,imx-mic-sph0645";&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;model = "sph0645-audio";&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;cpu-dai = &amp;lt;&amp;amp;sai1&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;};&lt;BR /&gt;};&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;sai1 {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;pinctrl-names = "default";&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;pinctrl-0 = &amp;lt;&amp;amp;pinctrl_sai1&amp;gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;/*&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;* Reference block.&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;*&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;* Codec dependent section.&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;*/&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;assigned-clocks = &amp;lt;&amp;amp;clks IMX6UL_CLK_SAI1_SEL&amp;gt;,&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&amp;amp;clks IMX6UL_CLK_SAI1&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;assigned-clock-parents = &amp;lt;&amp;amp;clks IMX6UL_CLK_PLL4_AUDIO_DIV&amp;gt;;&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;assigned-clock-rates = &amp;lt;0&amp;gt;, &amp;lt;12288000&amp;gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;status = "okay";&lt;BR /&gt;};&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Both the device tree and the attached driver file are untested, this is just my assumption about what you probably need to do.&amp;nbsp; I have no way to try any of it out now, but they will hopefully point you in the correct direction to figure it out!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Since the Microphone requires no setup you should only need to define the cpu-dai&amp;nbsp;property in your sound node, you do not need a codec node, so as long as your sai is setup correctly you just bind them and hopefully everything will work well.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Wish i knew more, but hopefully this information helps you a little! : )&amp;nbsp; Best of luck!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jarrod&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Apr 2019 14:17:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726635#M112981</guid>
      <dc:creator>jcc273</dc:creator>
      <dc:date>2019-04-01T14:17:22Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726636#M112982</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Gordon,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is my asound.conf file:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;BLOCKQUOTE class="jive_macro_quote jive-quote jive_text_macro"&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pcm.mic_mix {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;type dsnoop&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;ipc_key 3025&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;slave {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;pcm "hw:0,0"&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;rate 48000&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;channels 2&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;format S16_LE&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;bindings {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0 0&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1 1&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pcm.mic_sv {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;type softvol&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;slave.pcm mic_mix&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;control {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;name "Boost Capture Volume"&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;card 0&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;min_dB -10.0&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;max_dB 40.0&lt;BR /&gt;}&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;pcm.!default {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;type asym&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;capture.pcm {&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;type plug&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;slave.pcm mic_sv&lt;BR /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;BR /&gt;}&lt;/P&gt;&lt;/BLOCKQUOTE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I run it through softvol because the microphone volume is very low coming in.&amp;nbsp; Hope that helps : )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;- Jarrod&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 01 Apr 2019 14:33:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726636#M112982</guid>
      <dc:creator>jcc273</dc:creator>
      <dc:date>2019-04-01T14:33:15Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726637#M112983</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jarrod,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks a lot for helping me out and sharing driver file. Surely i will try it out. Now i have also edited patch file which i have attached according to SAI and removed audmux stuff. I am not sure whether i need to generate the patch or directly use it. Can you suggest how to generate patch file like you did, or should i directly use it? also it will be great if you can provide some reference on how to apply this patch file to i.mx6 ul kernel.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Hitesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Apr 2019 11:13:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726637#M112983</guid>
      <dc:creator>hitesh_kasera</dc:creator>
      <dc:date>2019-04-02T11:13:46Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726638#M112984</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hitesh,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;To apply a patch file to the kernel you can just:&lt;/P&gt;&lt;P&gt;- Change directory into the base of the kernel source&lt;/P&gt;&lt;P&gt;- run the following:&amp;nbsp; patch -p1 &amp;lt; $LOCATION_OF_PATCH_FILE&lt;/P&gt;&lt;P&gt;- just replace $LOCATION_OF_PATCH_FILE with the location of your patch (linux-imx-4.1.15_1.1.0_ga-sph0645.patch)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Your edited patch file may not apply properly because it is not straightforward editing a patch file as it contains line indicators and such that can get messed up.&amp;nbsp; Probably what i would do if i were you is either apply the original patch and then go edit the files as necessary OR using your patch and what you want it to do just go make the changes manually to the files instead of using the patch command.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Whatever way you choose once you get the changes made to files like you want make sure you add the new CONFIG_SND_SOC_IMX_SPH0645 to the kernel config and then rebuild the kernel and install on your board and put in your new device tree.&amp;nbsp; Then if everything goes well you will hopefully have a new audio capture device.&amp;nbsp; If things don't work then you will have to debug and see where the problem occurs.&amp;nbsp; As long as it is setup in the device tree and built into the kernel then at least the "probe" function in the driver should be called, so if not working a good first step is to make sure you are getting there with a print or something and also to check dmesg for errors : ).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jarrod&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Apr 2019 12:10:40 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726638#M112984</guid>
      <dc:creator>jcc273</dc:creator>
      <dc:date>2019-04-03T12:10:40Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726639#M112985</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jarrod,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks a lot for your guidance. i tried to generate the patch for both device tree (added new custom machine) and driver patch. Both i have attached for your reference. i build the kernel and updated the same. i have attached both patches for your reference. the output which i get by running arecord -c 2 -d 5 -f S32 -r 48000 -v /home/root/test.wav is:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;root@ccimx6ulsbc:~# arecord -c 2 -d 5 -f S32 -r 48000 -v /home/root/test.wav&lt;BR /&gt;ALSA lib ../../alsa-lib-1.1.4.1/src/confmisc.c:767:(parse_card) cannot find card '0'&lt;BR /&gt;ALSA lib ../../alsa-lib-1.1.4.1/src/conf.c:4554:(_snd_config_evaluate) function snd_func_card_driver returned error: No such file or directory&lt;BR /&gt;ALSA lib ../../alsa-lib-1.1.4.1/src/confmisc.c:392:(snd_func_concat) error evaluating strings&lt;BR /&gt;ALSA lib ../../alsa-lib-1.1.4.1/src/conf.c:4554:(_snd_config_evaluate) function snd_func_concat returned error: No such file or directory&lt;BR /&gt;ALSA lib ../../alsa-lib-1.1.4.1/src/confmisc.c:1246:(snd_func_refer) error evaluating name&lt;BR /&gt;ALSA lib ../../alsa-lib-1.1.4.1/src/conf.c:4554:(_snd_config_evaluate) function snd_func_refer returned error: No such file or directory&lt;BR /&gt;ALSA lib ../../alsa-lib-1.1.4.1/src/conf.c:5033:(snd_config_expand) Evaluate error: No such file or directory&lt;BR /&gt;ALSA lib ../../../alsa-lib-1.1.4.1/src/pcm/pcm.c:2501:(snd_pcm_open_noupdate) Unknown PCM default&lt;BR /&gt;arecord: main:807: audio open error: No such file or directory&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it cannot find the card, i checked in dmesg also there was nothing mentioned related to sai1 or imx-spho645. Can you help out what i am missing?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Hitesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 05 Apr 2019 11:24:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726639#M112985</guid>
      <dc:creator>hitesh_kasera</dc:creator>
      <dc:date>2019-04-05T11:24:21Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726640#M112986</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Do you have any audio cards?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #ffd3d3; padding: 1px 0px;"&gt;# cat /proc/asound/cards&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #ffd3d3; padding: 1px 0px;"&gt;&amp;nbsp;0 [imxaudioinmp441]: imx-audio-inmp4 - imx-audio-inmp441&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #ffd3d3; padding: 1px 0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; imx-audio-inmp441&lt;/SPAN&gt;&lt;/DIV&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is the microphone driver loading OK?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm using SAI2 on Vybrid using part&amp;nbsp;inmp441 instead of sph0645.&lt;/P&gt;&lt;P&gt;I get the following message when the&amp;nbsp;microphone driver loads successfully.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;# modprobe dm-mic-inmp441&lt;/P&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #f4d7e1; padding: 1px 0px;"&gt;dm-mic-inmp441 sound.3: snd-soc-dummy-dai &amp;lt;-&amp;gt; 40031000.sai mapping ok&lt;/SPAN&gt;&lt;/DIV&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I add output of my own in the microphone driver to help understand what's happening. The output actually looks like this:&lt;/P&gt;&lt;P&gt;&lt;SPAN class="" style="background-color: #f4d7e1; padding: 1px 0px;"&gt;# modprobe dm-mic-inmp441&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #f4d7e1; padding: 1px 0px;"&gt;dm-mic-inmp441 sound.3: probe+&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #f4d7e1; padding: 1px 0px;"&gt;dm-mic-inmp441 sound.3: snd-soc-dummy-dai &amp;lt;-&amp;gt; 40031000.sai mapping ok&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #f4d7e1; padding: 1px 0px;"&gt;dm-mic-inmp441 sound.3: register card OK&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 05 Apr 2019 18:13:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726640#M112986</guid>
      <dc:creator>gordonsmith</dc:creator>
      <dc:date>2019-04-05T18:13:18Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726641#M112987</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I also add output to fsl_sai.c:&lt;/P&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #e9afc2; padding: 1px 0px;"&gt;fsl_sai_probe+&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #e9afc2; padding: 1px 0px;"&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="background-color: #e9afc2; padding: 1px 0px;"&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="background-color: #e9afc2; padding: 1px 0px;"&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="background-color: #e9afc2; padding: 1px 0px;"&gt;fsl-sai 40031000.sai: failed to get mclk[2] clock: -2&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #e9afc2; padding: 1px 0px;"&gt;fsl-sai 40031000.sai: failed to get mclk&lt;SPAN&gt;[3]&lt;/SPAN&gt; clock: -2&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #e9afc2; padding: 1px 0px;"&gt;fsl-sai 40031000.sai: failed to get mclk&lt;SPAN&gt;[4]&lt;/SPAN&gt; clock: -2&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV class="" style="color: #000000; background-color: #ffffff; padding: 0px 1px 0px 0px;"&gt;&lt;SPAN class="" style="background-color: #e9afc2; padding: 1px 0px;"&gt;&lt;/SPAN&gt;&lt;SPAN class="" style="background-color: #e9afc2; padding: 1px 0px;"&gt;fsl_sai_probe: exit final: result=0&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 05 Apr 2019 18:51:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726641#M112987</guid>
      <dc:creator>gordonsmith</dc:creator>
      <dc:date>2019-04-05T18:51:08Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726642#M112988</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi gordon,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i am not able to register the card. when i run the following command get the output of no sound card found.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;root@ccimx6ulsbc:~# cat /proc/asound/cards&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;--- no soundcards ---&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i am not able to get what am i missing or doing wrong.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Hitesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 08 Apr 2019 04:48:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726642#M112988</guid>
      <dc:creator>hitesh_kasera</dc:creator>
      <dc:date>2019-04-08T04:48:24Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726643#M112989</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hitesh,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If i were you i would do like Gordon did in his below comment and add prints to the drivers.&amp;nbsp; That way you can see what is happening on boot.&amp;nbsp; Start by adding prints to the function:&amp;nbsp;&lt;STRONG&gt;imx_sph0645_probe&lt;/STRONG&gt;&amp;nbsp; in the file:&amp;nbsp;&amp;nbsp;&lt;STRONG&gt;sound/soc/fsl/imx-sph0645.c&lt;/STRONG&gt;&amp;nbsp; &amp;nbsp;The probe function is what will get called if you have properly registered the driver and device in your device tree.&amp;nbsp; If a print at the top of the probe function never prints then something is probably wrong with your device tree specification OR something like the names in your device tree don't match the names in&amp;nbsp;&lt;STRONG&gt;imx_sph0645_dt_ids&lt;/STRONG&gt; or something like that, that makes the kernel unable to find the driver.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If the print does print out then the easiest thing to do is to keep putting more prints down through the probe function to display different information and find out where the error is occuring.&amp;nbsp; If the probe function succeeded it would register the card on this line:&amp;nbsp;&amp;nbsp;&lt;STRONG&gt;ret = snd_soc_register_card(card);&lt;/STRONG&gt; and you would see that card be available.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I usually use kernel prints like this that will show up in dmesg:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;printk(KERN_ERR "SPH- Got here\r\n");&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jarrod&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 08 Apr 2019 15:10:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726643#M112989</guid>
      <dc:creator>jcc273</dc:creator>
      <dc:date>2019-04-08T15:10:39Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726644#M112990</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jarrod,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks a lot for providing your inputs. After debugging i got the card registered. Here is the output.&lt;/P&gt;&lt;P&gt;cat /proc/asound/cards&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;0 [imxaudiosph0645]: imx-audio-sph06 - imx-audio-sph0645&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; imx-audio-sph0645&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But when i run the command arecord got this error:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;arecord -c 2 -d 5 -f S32 -r 48000 -v /home/root/test.wav&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Recording WAVE '/home/root/test.wav' : Signed 32 bit Little Endian, Rate 48000 o&lt;BR /&gt;fsl-sai 2028000.sai: failed to derive required Rx rate: 2304000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;fsl-sai 2028000.sai: ASoC: can't set 2028000.sai hw params: -22&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;arecord: set_params:1382: Unable to install hw params:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;ACCESS:&amp;nbsp; RW_INTERLEAVED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;FORMAT:&amp;nbsp; S32_LE&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;SUBFORMAT:&amp;nbsp; STD&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;SAMPLE_BITS: 32&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;FRAME_BITS: 64&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;CHANNELS: 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;RATE: 48000&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;PERIOD_TIME: (42666 42667)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;PERIOD_SIZE: 2048&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;PERIOD_BYTES: 16384&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;PERIODS: 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;BUFFER_TIME: (170666 170667)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;BUFFER_SIZE: 8192&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;BUFFER_BYTES: 65536&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;TICK_TIME: 0 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;"failed to derive required Rx rate:" - This device print i have found in fsl_sai.c but we havent called that function in our driver code. Function which i am using is "snd_soc_dai_set_sysclk(cpu_dai, 0, bclk, SND_SOC_CLOCK_OUT)". As i am passing parameter 48000 then bclk should be 48000*32*2 but its taking 48000*24*2 = 2304000, that part also i am not able to get. Can you share some thoughts on this and any comments for hardware installation error.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Hitesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Apr 2019 09:24:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726644#M112990</guid>
      <dc:creator>hitesh_kasera</dc:creator>
      <dc:date>2019-04-10T09:24:23Z</dc:date>
    </item>
    <item>
      <title>Re: I2S 2-channel mems microphone</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726645#M112991</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Jarrod,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I tried using different sampling rate and it was working. For an example:&lt;/P&gt;&lt;P&gt;when i used this below mentioned command it was working&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;arecord -c 2 -d 5 -f S32 -r 64000 -v /home/root/test.wav&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i just changed the sampling rate 48000 to 64000. but on oscilloscope i was getting bit clock frequency around 11.086Mhz and Frame sync clock was about 230.41Khz. In this case i have not attached the microphone sensor because it could get damaged due to higher frequency. As for sph0645 microphone frame sync should be bclk/64 but its here not the case and also am not able to get desired bclk. Request you to please guide me for the same.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Hitesh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 15 Apr 2019 14:14:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/I2S-2-channel-mems-microphone/m-p/726645#M112991</guid>
      <dc:creator>hitesh_kasera</dc:creator>
      <dc:date>2019-04-15T14:14:43Z</dc:date>
    </item>
  </channel>
</rss>

