On 07/02/2012 02:25 AM, Laxman Dewangan wrote:
On Saturday 30 June 2012 08:38 PM, Laxman Dewangan wrote:
On Friday 29 June 2012 10:32 PM, Stephen Warren wrote:
On 06/29/2012 05:34 AM, Laxman Dewangan wrote:
Use the dmaengine based Tegra APB DMA driver for data transfer between SPI fifo and memory in place of legacy Tegra APB DMA.
Because generic soc-dmaengine-pcm uses the DMAs API based on dmaengine, using the exported APIs provided by this generic driver.
The new driver is selected if legacy driver is not selected and new dma driver is enabled through config file.
This works just fine with the existing non-dmaengine DMA driver enabled.
However, I can't get it to work with dmaengine:
...
I think I should send that patches so that you can test it by:
- Taking already applied dma driver change in linux-next.
- Apply my new patches which I am going to send.
And do local change in the tegra_defconfig to disable SYSTEM_DMA and enable dmaengine based dma driver.
The new dma patches are:
dma: tegra: fix residual calculation for cyclic case dma: tegra: rename driver and compatible to match with dts ...
OK, with those two patches plus this one, everything works on Cardhu/Tegra30 using dmaengine. However, on Tegra20 DMA doesn't appear to work. No audio is heard, and aplay eventually exits with the following error message:
aplay: pcm_write:1603: write error: Input/output error
I believe this means that the DMA simply isn't operating.
I'll assume this is a Tegra20-specific issue in the dmaengine driver itself, and hence not a problem with this patch, so I'll ack this patch.