diff options
author | Vinod Koul <vinod.koul@linux.intel.com> | 2011-10-14 01:15:11 -0400 |
---|---|---|
committer | Vinod Koul <vinod.koul@linux.intel.com> | 2011-10-31 00:10:25 -0400 |
commit | 05f5799cbe5c9e2c03f604b3de5783cf4d726227 (patch) | |
tree | c70394eb8154fb5e717168af98889631078789e7 /drivers/mmc/host/mxs-mmc.c | |
parent | 1d0c81e876fe04295ef5df387ba057bf9cfae3d8 (diff) |
mmc-host: move to dma_transfer_direction
fixup usage of dma direction by introducing dma_transfer_direction,
this patch moves mmc drivers to use new enum
Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
Cc: Chris Ball <cjb@laptop.org>
Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
Diffstat (limited to 'drivers/mmc/host/mxs-mmc.c')
-rw-r--r-- | drivers/mmc/host/mxs-mmc.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/mmc/host/mxs-mmc.c b/drivers/mmc/host/mxs-mmc.c index d513d47364d0..996b9a91d6f4 100644 --- a/drivers/mmc/host/mxs-mmc.c +++ b/drivers/mmc/host/mxs-mmc.c | |||
@@ -153,6 +153,7 @@ struct mxs_mmc_host { | |||
153 | struct dma_chan *dmach; | 153 | struct dma_chan *dmach; |
154 | struct mxs_dma_data dma_data; | 154 | struct mxs_dma_data dma_data; |
155 | unsigned int dma_dir; | 155 | unsigned int dma_dir; |
156 | enum dma_transfer_direction slave_dirn; | ||
156 | u32 ssp_pio_words[SSP_PIO_NUM]; | 157 | u32 ssp_pio_words[SSP_PIO_NUM]; |
157 | 158 | ||
158 | unsigned int version; | 159 | unsigned int version; |
@@ -323,7 +324,7 @@ static struct dma_async_tx_descriptor *mxs_mmc_prep_dma( | |||
323 | } | 324 | } |
324 | 325 | ||
325 | desc = host->dmach->device->device_prep_slave_sg(host->dmach, | 326 | desc = host->dmach->device->device_prep_slave_sg(host->dmach, |
326 | sgl, sg_len, host->dma_dir, append); | 327 | sgl, sg_len, host->slave_dirn, append); |
327 | if (desc) { | 328 | if (desc) { |
328 | desc->callback = mxs_mmc_dma_irq_callback; | 329 | desc->callback = mxs_mmc_dma_irq_callback; |
329 | desc->callback_param = host; | 330 | desc->callback_param = host; |
@@ -432,6 +433,7 @@ static void mxs_mmc_adtc(struct mxs_mmc_host *host) | |||
432 | int i; | 433 | int i; |
433 | 434 | ||
434 | unsigned short dma_data_dir, timeout; | 435 | unsigned short dma_data_dir, timeout; |
436 | enum dma_transfer_direction slave_dirn; | ||
435 | unsigned int data_size = 0, log2_blksz; | 437 | unsigned int data_size = 0, log2_blksz; |
436 | unsigned int blocks = data->blocks; | 438 | unsigned int blocks = data->blocks; |
437 | 439 | ||
@@ -447,9 +449,11 @@ static void mxs_mmc_adtc(struct mxs_mmc_host *host) | |||
447 | 449 | ||
448 | if (data->flags & MMC_DATA_WRITE) { | 450 | if (data->flags & MMC_DATA_WRITE) { |
449 | dma_data_dir = DMA_TO_DEVICE; | 451 | dma_data_dir = DMA_TO_DEVICE; |
452 | slave_dirn = DMA_MEM_TO_DEV; | ||
450 | read = 0; | 453 | read = 0; |
451 | } else { | 454 | } else { |
452 | dma_data_dir = DMA_FROM_DEVICE; | 455 | dma_data_dir = DMA_FROM_DEVICE; |
456 | slave_dirn = DMA_DEV_TO_MEM; | ||
453 | read = BM_SSP_CTRL0_READ; | 457 | read = BM_SSP_CTRL0_READ; |
454 | } | 458 | } |
455 | 459 | ||
@@ -517,6 +521,7 @@ static void mxs_mmc_adtc(struct mxs_mmc_host *host) | |||
517 | WARN_ON(host->data != NULL); | 521 | WARN_ON(host->data != NULL); |
518 | host->data = data; | 522 | host->data = data; |
519 | host->dma_dir = dma_data_dir; | 523 | host->dma_dir = dma_data_dir; |
524 | host->slave_dirn = slave_dirn; | ||
520 | desc = mxs_mmc_prep_dma(host, 1); | 525 | desc = mxs_mmc_prep_dma(host, 1); |
521 | if (!desc) | 526 | if (!desc) |
522 | goto out; | 527 | goto out; |