OSDN Git Service

dmaengine: tegra20: Split device_control
authorMaxime Ripard <maxime.ripard@free-electrons.com>
Mon, 17 Nov 2014 13:42:37 +0000 (14:42 +0100)
committerVinod Koul <vinod.koul@intel.com>
Mon, 22 Dec 2014 07:03:21 +0000 (12:33 +0530)
Split the device_control callback of the NVidia Tegra20 APB DMA driver to make
use of the newly introduced callbacks, that will eventually be used to retrieve
slave capabilities.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/tegra20-apb-dma.c

index d8450c3..02f6013 100644 (file)
@@ -827,25 +827,6 @@ static enum dma_status tegra_dma_tx_status(struct dma_chan *dc,
        return ret;
 }
 
-static int tegra_dma_device_control(struct dma_chan *dc, enum dma_ctrl_cmd cmd,
-                       unsigned long arg)
-{
-       switch (cmd) {
-       case DMA_SLAVE_CONFIG:
-               return tegra_dma_slave_config(dc,
-                               (struct dma_slave_config *)arg);
-
-       case DMA_TERMINATE_ALL:
-               tegra_dma_terminate_all(dc);
-               return 0;
-
-       default:
-               break;
-       }
-
-       return -ENXIO;
-}
-
 static inline int get_bus_width(struct tegra_dma_channel *tdc,
                enum dma_slave_buswidth slave_bw)
 {
@@ -1443,7 +1424,8 @@ static int tegra_dma_probe(struct platform_device *pdev)
                                        tegra_dma_free_chan_resources;
        tdma->dma_dev.device_prep_slave_sg = tegra_dma_prep_slave_sg;
        tdma->dma_dev.device_prep_dma_cyclic = tegra_dma_prep_dma_cyclic;
-       tdma->dma_dev.device_control = tegra_dma_device_control;
+       tdma->dma_dev.device_config = tegra_dma_slave_config;
+       tdma->dma_dev.device_terminate_all = tegra_dma_terminate_all;
        tdma->dma_dev.device_tx_status = tegra_dma_tx_status;
        tdma->dma_dev.device_issue_pending = tegra_dma_issue_pending;