diff options
author | Akinobu Mita <akinobu.mita@gmail.com> | 2012-10-27 17:49:31 +0200 |
---|---|---|
committer | Vinod Koul <vinod.koul@intel.com> | 2013-01-08 07:04:54 +0100 |
commit | 91998261dd0d5aefb56d87cef84f7810c32f6194 (patch) | |
tree | cde4ac255948455dfa756007bf29dde89ae10d83 /drivers/dma/amba-pl08x.c | |
parent | dmaengine: use for_each_set_bit (diff) | |
download | linux-91998261dd0d5aefb56d87cef84f7810c32f6194.tar.xz linux-91998261dd0d5aefb56d87cef84f7810c32f6194.zip |
dma: amba-pl08x: use vchan_dma_desc_free_list
vchan_dma_desc_free_list() iterates through each virt_dma_desc in the
specified list_head and calls vchan->desc_free().
We can use it instead of repeated execution of pl08x_desc_free() for each
virt_dma_desc in the list_head. Because vchan->desc_free callback is set
as pl08x_desc_free() for amba-pl08x driver.
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Vinod Koul <vinod.koul@intel.com>
Cc: Dan Williams <djbw@fb.com>
Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
Diffstat (limited to 'drivers/dma/amba-pl08x.c')
-rw-r--r-- | drivers/dma/amba-pl08x.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/drivers/dma/amba-pl08x.c b/drivers/dma/amba-pl08x.c index d1cc5791476b..6eb6a5c210bb 100644 --- a/drivers/dma/amba-pl08x.c +++ b/drivers/dma/amba-pl08x.c @@ -1096,15 +1096,9 @@ static void pl08x_free_txd_list(struct pl08x_driver_data *pl08x, struct pl08x_dma_chan *plchan) { LIST_HEAD(head); - struct pl08x_txd *txd; vchan_get_all_descriptors(&plchan->vc, &head); - - while (!list_empty(&head)) { - txd = list_first_entry(&head, struct pl08x_txd, vd.node); - list_del(&txd->vd.node); - pl08x_desc_free(&txd->vd); - } + vchan_dma_desc_free_list(&plchan->vc, &head); } /* |