diff options
Diffstat (limited to 'drivers/dma/pch_dma.c')
-rw-r--r-- | drivers/dma/pch_dma.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/drivers/dma/pch_dma.c b/drivers/dma/pch_dma.c index 6e0e47d76b23..35c143cb88da 100644 --- a/drivers/dma/pch_dma.c +++ b/drivers/dma/pch_dma.c | |||
@@ -665,16 +665,12 @@ err_desc_get: | |||
665 | return NULL; | 665 | return NULL; |
666 | } | 666 | } |
667 | 667 | ||
668 | static int pd_device_control(struct dma_chan *chan, enum dma_ctrl_cmd cmd, | 668 | static int pd_device_terminate_all(struct dma_chan *chan) |
669 | unsigned long arg) | ||
670 | { | 669 | { |
671 | struct pch_dma_chan *pd_chan = to_pd_chan(chan); | 670 | struct pch_dma_chan *pd_chan = to_pd_chan(chan); |
672 | struct pch_dma_desc *desc, *_d; | 671 | struct pch_dma_desc *desc, *_d; |
673 | LIST_HEAD(list); | 672 | LIST_HEAD(list); |
674 | 673 | ||
675 | if (cmd != DMA_TERMINATE_ALL) | ||
676 | return -ENXIO; | ||
677 | |||
678 | spin_lock_irq(&pd_chan->lock); | 674 | spin_lock_irq(&pd_chan->lock); |
679 | 675 | ||
680 | pdc_set_mode(&pd_chan->chan, DMA_CTL0_DISABLE); | 676 | pdc_set_mode(&pd_chan->chan, DMA_CTL0_DISABLE); |
@@ -932,7 +928,7 @@ static int pch_dma_probe(struct pci_dev *pdev, | |||
932 | pd->dma.device_tx_status = pd_tx_status; | 928 | pd->dma.device_tx_status = pd_tx_status; |
933 | pd->dma.device_issue_pending = pd_issue_pending; | 929 | pd->dma.device_issue_pending = pd_issue_pending; |
934 | pd->dma.device_prep_slave_sg = pd_prep_slave_sg; | 930 | pd->dma.device_prep_slave_sg = pd_prep_slave_sg; |
935 | pd->dma.device_control = pd_device_control; | 931 | pd->dma.device_terminate_all = pd_device_terminate_all; |
936 | 932 | ||
937 | err = dma_async_device_register(&pd->dma); | 933 | err = dma_async_device_register(&pd->dma); |
938 | if (err) { | 934 | if (err) { |