<div dir="ltr">Hi Liam,<div><div class="gmail_extra"><br><div class="gmail_quote">2015-06-03 16:55 GMT+08:00 Liam Girdwood <span dir="ltr"><<a href="mailto:liam.r.girdwood@linux.intel.com" target="_blank">liam.r.girdwood@linux.intel.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div class=""><div class="h5">On Tue, 2015-06-02 at 18:27 +0100, Strasser, Kevin wrote:<br>
> Hi Li,<br>
><br>
> On 06/01/15 8:03 PM, li yuqian wrote:<br>
> > check those driver, and i can understand there are three parts for the LPE<br>
> > driver to working, special for the LPE firmware need to adde it. i can figure<br>
> > it out in the<br>
> > <a href="https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/sound/soc/intel/sst-acpi.c?id=refs/tags/v4.0.4" target="_blank">https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/sound/soc/intel/sst-acpi.c?id=refs/tags/v4.0.4</a><br>
> > line 249 and 250.<br>
> ><br>
> > but when i checked that sst-acpi.c, i found the baytrial sst is not support<br>
> > the DMA data transfer, see the resindex_dma_base = -1 in line 262 and line 51<br>
> > /* DMA only valid when resindex_dma_base != -1*/<br>
> ><br>
> > Am i correct? the MBM i2s does not support DMA data transfer?<br>
><br>
> You are correct, the Bay Trail LPE driver does not use DMA. I think that is just<br>
> a driver limitation, and does not necessarily indicate that the hardware isn't<br>
> capable.<br>
><br>
> Liam, can you provide any context here?<br>
<br>
</div></div>The BYT audio DSP driver does not use DMA for loading the FW from host<br>
memory to DSP memory, but it does use DMA for audio playback and capture<br>
(controlled by the FW). The BYT audio driver just does a memcpy() of the<br>
FW from host to DSP memory.<br>
<br>
Liam<br>
<br>
><br>
> Thanks,<br>
> Kevin<br>
<br>
<br>
</blockquote></div>Thanks for the explanation. is there more details information for that "controlled by FW"? such as what is the data width of FW required, is that fixed or user can change? in other words, should i use different that FW to do different data width, sync clock and sst clock? also, i found the TIZEN have some different FW for download in INTEL website in <a href="https://downloadcenter.intel.com/download/23903/Intel-Atom-Processor-E3800-Series-Linux-support-package-LPE-Firmware-for-Tizen-IVI-3-0-M2-Kernel-3-10-LTSI">https://downloadcenter.intel.com/download/23903/Intel-Atom-Processor-E3800-Series-Linux-support-package-LPE-Firmware-for-Tizen-IVI-3-0-M2-Kernel-3-10-LTSI</a>, can i use those FW to load to mainline kernel to support different mode of LPE, such as the master/slave mode with different sync, main clock?</div><div class="gmail_extra"><br></div><div class="gmail_extra">thanksĀ </div></div></div>