On Wed, Nov 27, 2013 at 06:08:47PM +0530, Padma Venkat wrote:
On Tue, Nov 26, 2013 at 5:50 PM, Mark Brown broonie@kernel.org wrote:
So this is 16 bit stereo or something, and did it work beforehand? Like I say I suspect the DMA is ending up being configured with the wrong transfer size, can you check what actually happens there please - what's different about the configuration that the DMA controller gets? I don't have any Exynos systems with mainline audio support so I can't test anything myself.
This stream was working before. dma_size in i2s_hw_params not getting effected as dma_data is getting initialized only at dai probe time. So by default the dma_size is always 4 which is initialized at driver probe time. The fifo_size of dai is also always 0. It is not getting passed from dai driver. I just hard coded the dma_size to 2 and
But if it's initialised at probe time then when is it getting overwritten? This must be something triggered by DT which unfortunately I can't test. It's a bit of a shame that the flows are different between the DT and non-DT cases.
The FIFO size looks like a difference between the pl330 and pl080, it doesn't seem to matter for pl080. We just need to set it though.
fifo_size to 32 then I can hear the audio only on right ear phone. Still underrun error message appears.
Are you sure that dma_size should be 2? The i2s DAI driver seems to be hard coding it to 4.