[PATCH v2 0/2] ep93xx m2p DMA fixes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This series finally makes memory<->device DMA on ep93xx robust/usable.

First patch addresses long standing bug where the driver went out of sync
with DMA controller and started transfer from buffer1 even though DMA HW
expected the transfer to start from buffer0. This lead to frequent hearable
audio distortions (on start/stop) and not so frequent system freezes
(seems that DMA has overwritten unexpected RAM locations). Both problems
are gone now.

Second patch addresses high IRQ latency caused by the driver which actually
completely prevents usage of EDB93xx audio and/or DMA drivers together with
ep93xx watchdog driver. The later resets 250ms HW timer with 200ms period
and is not able to do it with just slight load + ~40ms latency caused by
DMA driver.

Changelog
v2:
  Deleted misleading impossible warning (patch 1/2)
  Move draining to device_synchronize callback (patch 2/2)

Alexander Sverdlin (2):
  dmaengine: ep93xx: Always start from BASE0
  dmaengine: ep93xx: Don't drain the transfers in terminate_all()

 drivers/dma/ep93xx_dma.c | 39 +++++++++++++++++++++++++++++++++++----
 1 file changed, 35 insertions(+), 4 deletions(-)

-- 
2.12.2

--
To unsubscribe from this list: send the line "unsubscribe dmaengine" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux