dmaengine: mxs-dma: add dma support for i.MX23/28
authorShawn Guo <shawn.guo@freescale.com>
Sat, 26 Feb 2011 16:47:42 +0000 (00:47 +0800)
committerVinod Koul <vinod.koul@intel.com>
Wed, 2 Mar 2011 01:36:27 +0000 (07:06 +0530)
commita580b8c5429a624d120cd603e1498bf676e2b4da
tree14e4bd82f203bf9f43fa19341d85d993e5a4c569
parent26d890f0d09fd58f7194aad651e86283cb9e6574
dmaengine: mxs-dma: add dma support for i.MX23/28

This patch adds dma support for Freescale MXS-based SoC i.MX23/28,
including apbh-dma and apbx-dma.

* apbh-dma and apbx-dma are supported in the driver as two mxs-dma
  instances.

* apbh-dma is different between mx23 and mx28, hardware version
  register is used to differentiate.

* mxs-dma supports pio function besides data transfer.  The driver
  uses dma_data_direction DMA_NONE to identify the pio mode, and
  steals sgl and sg_len to get pio words and numbers from clients.

* mxs dmaengine has some very specific features, like sense function
  and the special NAND support (nand_lock, nand_wait4ready).  These
  are too specific to implemented in generic dmaengine driver.

* The driver refers to imx-sdma and only a single descriptor is
  statically assigned to each channel.

Signed-off-by: Shawn Guo <shawn.guo@freescale.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
arch/arm/mach-mxs/include/mach/dma.h [new file with mode: 0644]
drivers/dma/Kconfig
drivers/dma/Makefile
drivers/dma/mxs-dma.c [new file with mode: 0644]