mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-13 16:50:05 +00:00
dmaengine: moxart: Split device_control
Split the device_control callback of the Moxart 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>
This commit is contained in:
parent
f43a6fd400
commit
ac850cc7da
@ -263,28 +263,6 @@ static int moxart_slave_config(struct dma_chan *chan,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int moxart_control(struct dma_chan *chan, enum dma_ctrl_cmd cmd,
|
|
||||||
unsigned long arg)
|
|
||||||
{
|
|
||||||
int ret = 0;
|
|
||||||
|
|
||||||
switch (cmd) {
|
|
||||||
case DMA_PAUSE:
|
|
||||||
case DMA_RESUME:
|
|
||||||
return -EINVAL;
|
|
||||||
case DMA_TERMINATE_ALL:
|
|
||||||
moxart_terminate_all(chan);
|
|
||||||
break;
|
|
||||||
case DMA_SLAVE_CONFIG:
|
|
||||||
ret = moxart_slave_config(chan, (struct dma_slave_config *)arg);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
ret = -ENOSYS;
|
|
||||||
}
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
|
||||||
|
|
||||||
static struct dma_async_tx_descriptor *moxart_prep_slave_sg(
|
static struct dma_async_tx_descriptor *moxart_prep_slave_sg(
|
||||||
struct dma_chan *chan, struct scatterlist *sgl,
|
struct dma_chan *chan, struct scatterlist *sgl,
|
||||||
unsigned int sg_len, enum dma_transfer_direction dir,
|
unsigned int sg_len, enum dma_transfer_direction dir,
|
||||||
@ -531,7 +509,8 @@ static void moxart_dma_init(struct dma_device *dma, struct device *dev)
|
|||||||
dma->device_free_chan_resources = moxart_free_chan_resources;
|
dma->device_free_chan_resources = moxart_free_chan_resources;
|
||||||
dma->device_issue_pending = moxart_issue_pending;
|
dma->device_issue_pending = moxart_issue_pending;
|
||||||
dma->device_tx_status = moxart_tx_status;
|
dma->device_tx_status = moxart_tx_status;
|
||||||
dma->device_control = moxart_control;
|
dma->device_config = moxart_slave_config;
|
||||||
|
dma->device_terminate_all = moxart_terminate_all;
|
||||||
dma->dev = dev;
|
dma->dev = dev;
|
||||||
|
|
||||||
INIT_LIST_HEAD(&dma->channels);
|
INIT_LIST_HEAD(&dma->channels);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user