dmaengine: fsl-edma: fixup reg offset and hw S/G support in big-endian model
authorJingchang Lu <jingchang.lu@freescale.com>
Wed, 22 Oct 2014 08:53:55 +0000 (16:53 +0800)
committerVinod Koul <vinod.koul@intel.com>
Tue, 9 Dec 2014 09:11:58 +0000 (14:41 +0530)
commit1e2dbdefe720372d9d8b04d50c29de54e932be3b
tree4331224fd73596beab023a1770f48cf70fae6463
parent6ab55b214c625f4d56199f7ebd0b419f43f23bb2
dmaengine: fsl-edma: fixup reg offset and hw S/G support in big-endian model

The offset of all 8-/16-bit registers in big-endian eDMA model are
swapped in a 32-bit size opposite those in the little-endian model.

The hardware Scatter/Gather requires the subsequent TCDs stored in memory
in little endian independent of the register endian model, the eDMA engine
will do the swap if need.

This patch also use regular assignment for tcd variables r/w
instead of with io function previously that may not always be true.

Signed-off-by: Jingchang Lu <jingchang.lu@freescale.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/fsl-edma.c