AnsweredAssumed Answered

imx6 how to disable dma on ssi

Question asked by j-g on May 15, 2015
Latest reply on Oct 11, 2015 by Kajal Sabhani

Hello,

For experimental reasons I'd like to disable the dma transfers on ssi1 using FIQ instead.  I am able to transfer data out successfully to an SGTL5000 codec (using imx-sgtl5000.c as machine driver) with dma enabled.  The imx6 is the bitclock and frame sync slave.  In the devicetree I added "fsl,fiq-stream-filter" which I see in fsl_ssi.c is checked for and set's  the variable use_dma to false.  Are there any additional things to do besides changing the devicetree to get this to work?  Thank you for any advice.

 

I'm using freescale linux version 3.14.28

 

imx6qdl.dtsi =

 

ssi1: ssi@02028000 {
compatible = "fsl,imx6q-ssi","fsl,imx21-ssi";
reg = <0x02028000 0x4000>;
interrupts = <0 46 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6QDL_CLK_SSI1_IPG>,
              <&clks IMX6QDL_CLK_SSI1>;
clock-names = "ipg", "baud";
fsl,fiq-stream-filter;
dmas = <&sdma 37 1 0>,
       <&sdma 38 1 0>;
dma-names = "rx", "tx";
fsl,fifo-depth = <15>;
fsl,ssi-dma-events = <38 37>;
status = "okay";
};

Outcomes