On Wed, Oct 28, 2015 at 1:11 AM, Roberto Fichera <kernel@xxxxxxxxxxxxx> wrote: > On 10/27/2015 07:57 PM, Fabio Estevam wrote: >> [Adding Roberto in the thread as he is also trying to get SSI TDM support/ > > Thanks Fabio, > > I'm also having the same issue but employing SSI in TDM master mode against a SLIC Si32178 > using its PCM mode. PCLK is at 2048KHz, FSYNC is 8KHz slot length is 32 bits (SSI wants > this since when in master mode) but valid data set to be 8bits in the SSI register. > > My Current situation is that I've a custom fsl_ssi.c driver to control the SSI in TDM master mode > both PCLK and FSYNC works perfectly fine, the SLIC has a register that I can check via SPI for > such purpose, I can see the clocking status from its side. The main problem I've is exactly the same > Caleb is having, after a certain amount of SDMA transfers, roughly 1000 or so, everything stops > without any apparent reason. My problem is that the channels randomly slip a slot and all words end up in the wrong slot. I suspect this is a DMA issue, but I really haven't diagnosed it yet. I don't get a full stop on the data. FYI, I'm using a very recent 4.3 kernel from linus's repo, but 4.2 behaved the same. -Caleb > >> >> On Tue, Oct 27, 2015 at 2:45 PM, Fabio Estevam <festevam@xxxxxxxxx> wrote: >>> On Tue, Oct 27, 2015 at 2:42 PM, Caleb Crome <caleb@xxxxxxxxx> wrote: >>>> On Tue, Oct 27, 2015 at 9:10 AM, Fabio Estevam <festevam@xxxxxxxxx> wrote: >>>>> On Tue, Oct 27, 2015 at 2:02 PM, Caleb Crome <caleb@xxxxxxxxx> wrote: >>>>> >>>>>>> Could you please try it without using the external SDMA firmware? >>>>>> I do need *some* SDMA firmware, correct? The firmware that I'm using >>>>>> ends up in /lib/firmware/imx/sdma/sdma-imx6q.bin and is md5sum >>>>>> 5d4584134cc4cba62e1be2f382cd6f3a. >>>>> SSI can operate with the ROM SDMA firmware. >>>>> >>>>> I would like to know if this issue also happens if you don't pass the >>>>> external firmware and use the internal ROM SDMA firmware instead. >>>> Ah, good to know. Do I just remove reference in the .dtsi file? >>>> Remove the file from the filesystem? I'll do both to be doubly sure >>>> :-) >>> Just remove it from the rootfs. Then you will see a message from the >>> kernel saying that no external SDMA firmware could be found and that >>> the internal one is going to be used. >>> >>>>> Also, could you try bumping the SSI and SDMA clock rates at the maximum? >>>> Any idea how I do that? I guess it's in the .dtsi file perhaps? I'll >>>> poke around. >>> You can try to call clk_set_rate() with the maximum allowed frequency >>> inside the ssi driver. I don't recall on top of my head what is this >>> value though. >>> >>> Regards, >>> >>> Fabio Estevam >> _______________________________________________ >> Alsa-devel mailing list >> Alsa-devel@xxxxxxxxxxxxxxxx >> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel >> > _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel