diff options
| author | Vinod Koul <vinod.koul@linux.intel.com> | 2011-10-14 10:45:11 +0530 | 
|---|---|---|
| committer | Vinod Koul <vinod.koul@linux.intel.com> | 2011-10-31 09:40:25 +0530 | 
| commit | 05f5799cbe5c9e2c03f604b3de5783cf4d726227 (patch) | |
| tree | c70394eb8154fb5e717168af98889631078789e7 /drivers/mmc/host/mmci.c | |
| parent | 1d0c81e876fe04295ef5df387ba057bf9cfae3d8 (diff) | |
| download | olio-linux-3.10-05f5799cbe5c9e2c03f604b3de5783cf4d726227.tar.xz olio-linux-3.10-05f5799cbe5c9e2c03f604b3de5783cf4d726227.zip  | |
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/mmci.c')
| -rw-r--r-- | drivers/mmc/host/mmci.c | 11 | 
1 files changed, 7 insertions, 4 deletions
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c index 56e9a416826..3abd51a9fec 100644 --- a/drivers/mmc/host/mmci.c +++ b/drivers/mmc/host/mmci.c @@ -372,6 +372,7 @@ static int mmci_dma_prep_data(struct mmci_host *host, struct mmc_data *data,  	struct dma_chan *chan;  	struct dma_device *device;  	struct dma_async_tx_descriptor *desc; +	enum dma_data_direction buffer_dirn;  	int nr_sg;  	/* Check if next job is already prepared */ @@ -385,10 +386,12 @@ static int mmci_dma_prep_data(struct mmci_host *host, struct mmc_data *data,  	}  	if (data->flags & MMC_DATA_READ) { -		conf.direction = DMA_FROM_DEVICE; +		conf.direction = DMA_DEV_TO_MEM; +		buffer_dirn = DMA_FROM_DEVICE;  		chan = host->dma_rx_channel;  	} else { -		conf.direction = DMA_TO_DEVICE; +		conf.direction = DMA_MEM_TO_DEV; +		buffer_dirn = DMA_TO_DEVICE;  		chan = host->dma_tx_channel;  	} @@ -401,7 +404,7 @@ static int mmci_dma_prep_data(struct mmci_host *host, struct mmc_data *data,  		return -EINVAL;  	device = chan->device; -	nr_sg = dma_map_sg(device->dev, data->sg, data->sg_len, conf.direction); +	nr_sg = dma_map_sg(device->dev, data->sg, data->sg_len, buffer_dirn);  	if (nr_sg == 0)  		return -EINVAL; @@ -424,7 +427,7 @@ static int mmci_dma_prep_data(struct mmci_host *host, struct mmc_data *data,   unmap_exit:  	if (!next)  		dmaengine_terminate_all(chan); -	dma_unmap_sg(device->dev, data->sg, data->sg_len, conf.direction); +	dma_unmap_sg(device->dev, data->sg, data->sg_len, buffer_dirn);  	return -ENOMEM;  }  |