aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexandre Bounine <alexandre.bounine@idt.com>2012-03-08 16:11:18 -0500
committerVinod Koul <vinod.koul@linux.intel.com>2012-03-21 09:50:22 -0400
commit16052827d98fbc13c31ebad560af4bd53e2b4dd5 (patch)
treeaff4f3362a643d2d4621f21dd56996988c0e733c
parentad1122e545b55013089e6cc18ac37b47b46f2a7d (diff)
dmaengine/dma_slave: introduce inline wrappers
Add inline wrappers for device_prep_slave_sg() and device_prep_dma_cyclic() interfaces to hide new parameter from current users of affected interfaces. Convert current users to use new wrappers instead of direct calls. Suggested by Russell King [https://lkml.org/lkml/2012/2/3/269]. Signed-off-by: Alexandre Bounine <alexandre.bounine@idt.com> Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
-rw-r--r--arch/arm/plat-nomadik/include/plat/ste_dma40.h3
-rw-r--r--arch/arm/plat-samsung/dma-ops.c4
-rw-r--r--drivers/media/video/mx3_camera.c2
-rw-r--r--drivers/media/video/timblogiw.c2
-rw-r--r--drivers/mmc/host/atmel-mci.c2
-rw-r--r--drivers/mmc/host/mmci.c2
-rw-r--r--drivers/mmc/host/mxcmmc.c2
-rw-r--r--drivers/mmc/host/mxs-mmc.c2
-rw-r--r--drivers/mmc/host/sh_mmcif.c4
-rw-r--r--drivers/mmc/host/tmio_mmc_dma.c4
-rw-r--r--drivers/mtd/nand/gpmi-nand/gpmi-lib.c25
-rw-r--r--drivers/net/ethernet/micrel/ks8842.c4
-rw-r--r--drivers/spi/spi-dw-mid.c4
-rw-r--r--drivers/spi/spi-ep93xx.c4
-rw-r--r--drivers/spi/spi-pl022.c4
-rw-r--r--drivers/spi/spi-topcliff-pch.c4
-rw-r--r--drivers/tty/serial/amba-pl011.c6
-rw-r--r--drivers/tty/serial/pch_uart.c4
-rw-r--r--drivers/tty/serial/sh-sci.c4
-rw-r--r--drivers/usb/musb/ux500_dma.c3
-rw-r--r--drivers/usb/renesas_usbhs/fifo.c5
-rw-r--r--drivers/video/mx3fb.c4
-rw-r--r--include/linux/dmaengine.h16
-rw-r--r--sound/soc/ep93xx/ep93xx-pcm.c3
-rw-r--r--sound/soc/imx/imx-pcm-dma-mx2.c2
-rw-r--r--sound/soc/mxs/mxs-pcm.c2
-rw-r--r--sound/soc/sh/siu_pcm.c4
-rw-r--r--sound/soc/txx9/txx9aclc.c2
28 files changed, 67 insertions, 60 deletions
diff --git a/arch/arm/plat-nomadik/include/plat/ste_dma40.h b/arch/arm/plat-nomadik/include/plat/ste_dma40.h
index fd0ee84c45d1..9ff93b065686 100644
--- a/arch/arm/plat-nomadik/include/plat/ste_dma40.h
+++ b/arch/arm/plat-nomadik/include/plat/ste_dma40.h
@@ -200,8 +200,7 @@ dma_async_tx_descriptor *stedma40_slave_mem(struct dma_chan *chan,
200 sg.dma_address = addr; 200 sg.dma_address = addr;
201 sg.length = size; 201 sg.length = size;
202 202
203 return chan->device->device_prep_slave_sg(chan, &sg, 1, 203 return dmaengine_prep_slave_sg(chan, &sg, 1, direction, flags);
204 direction, flags);
205} 204}
206 205
207#else 206#else
diff --git a/arch/arm/plat-samsung/dma-ops.c b/arch/arm/plat-samsung/dma-ops.c
index 0747c77a2fd5..a6ef3961134c 100644
--- a/arch/arm/plat-samsung/dma-ops.c
+++ b/arch/arm/plat-samsung/dma-ops.c
@@ -79,11 +79,11 @@ static int samsung_dmadev_prepare(unsigned ch,
79 info->len, offset_in_page(info->buf)); 79 info->len, offset_in_page(info->buf));
80 sg_dma_address(&sg) = info->buf; 80 sg_dma_address(&sg) = info->buf;
81 81
82 desc = chan->device->device_prep_slave_sg(chan, 82 desc = dmaengine_prep_slave_sg(chan,
83 &sg, 1, info->direction, DMA_PREP_INTERRUPT); 83 &sg, 1, info->direction, DMA_PREP_INTERRUPT);
84 break; 84 break;
85 case DMA_CYCLIC: 85 case DMA_CYCLIC:
86 desc = chan->device->device_prep_dma_cyclic(chan, 86 desc = dmaengine_prep_dma_cyclic(chan,
87 info->buf, info->len, info->period, info->direction); 87 info->buf, info->len, info->period, info->direction);
88 break; 88 break;
89 default: 89 default:
diff --git a/drivers/media/video/mx3_camera.c b/drivers/media/video/mx3_camera.c
index 74522773e934..93c35ef5f0ad 100644
--- a/drivers/media/video/mx3_camera.c
+++ b/drivers/media/video/mx3_camera.c
@@ -286,7 +286,7 @@ static void mx3_videobuf_queue(struct vb2_buffer *vb)
286 sg_dma_address(sg) = vb2_dma_contig_plane_dma_addr(vb, 0); 286 sg_dma_address(sg) = vb2_dma_contig_plane_dma_addr(vb, 0);
287 sg_dma_len(sg) = new_size; 287 sg_dma_len(sg) = new_size;
288 288
289 txd = ichan->dma_chan.device->device_prep_slave_sg( 289 txd = dmaengine_prep_slave_sg(
290 &ichan->dma_chan, sg, 1, DMA_DEV_TO_MEM, 290 &ichan->dma_chan, sg, 1, DMA_DEV_TO_MEM,
291 DMA_PREP_INTERRUPT); 291 DMA_PREP_INTERRUPT);
292 if (!txd) 292 if (!txd)
diff --git a/drivers/media/video/timblogiw.c b/drivers/media/video/timblogiw.c
index 4ed1c7c28ae7..02194c056b00 100644
--- a/drivers/media/video/timblogiw.c
+++ b/drivers/media/video/timblogiw.c
@@ -564,7 +564,7 @@ static void buffer_queue(struct videobuf_queue *vq, struct videobuf_buffer *vb)
564 564
565 spin_unlock_irq(&fh->queue_lock); 565 spin_unlock_irq(&fh->queue_lock);
566 566
567 desc = fh->chan->device->device_prep_slave_sg(fh->chan, 567 desc = dmaengine_prep_slave_sg(fh->chan,
568 buf->sg, sg_elems, DMA_DEV_TO_MEM, 568 buf->sg, sg_elems, DMA_DEV_TO_MEM,
569 DMA_PREP_INTERRUPT | DMA_COMPL_SKIP_SRC_UNMAP); 569 DMA_PREP_INTERRUPT | DMA_COMPL_SKIP_SRC_UNMAP);
570 if (!desc) { 570 if (!desc) {
diff --git a/drivers/mmc/host/atmel-mci.c b/drivers/mmc/host/atmel-mci.c
index 3ba865ddebc4..492854b09d89 100644
--- a/drivers/mmc/host/atmel-mci.c
+++ b/drivers/mmc/host/atmel-mci.c
@@ -875,7 +875,7 @@ atmci_prepare_data_dma(struct atmel_mci *host, struct mmc_data *data)
875 data->sg_len, direction); 875 data->sg_len, direction);
876 876
877 dmaengine_slave_config(chan, &host->dma_conf); 877 dmaengine_slave_config(chan, &host->dma_conf);
878 desc = chan->device->device_prep_slave_sg(chan, 878 desc = dmaengine_prep_slave_sg(chan,
879 data->sg, sglen, slave_dirn, 879 data->sg, sglen, slave_dirn,
880 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 880 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
881 if (!desc) 881 if (!desc)
diff --git a/drivers/mmc/host/mmci.c b/drivers/mmc/host/mmci.c
index a09c06ba046c..c55f9663eb13 100644
--- a/drivers/mmc/host/mmci.c
+++ b/drivers/mmc/host/mmci.c
@@ -413,7 +413,7 @@ static int mmci_dma_prep_data(struct mmci_host *host, struct mmc_data *data,
413 return -EINVAL; 413 return -EINVAL;
414 414
415 dmaengine_slave_config(chan, &conf); 415 dmaengine_slave_config(chan, &conf);
416 desc = device->device_prep_slave_sg(chan, data->sg, nr_sg, 416 desc = dmaengine_prep_slave_sg(chan, data->sg, nr_sg,
417 conf.direction, DMA_CTRL_ACK); 417 conf.direction, DMA_CTRL_ACK);
418 if (!desc) 418 if (!desc)
419 goto unmap_exit; 419 goto unmap_exit;
diff --git a/drivers/mmc/host/mxcmmc.c b/drivers/mmc/host/mxcmmc.c
index 68b69a91e5ef..b2058b432320 100644
--- a/drivers/mmc/host/mxcmmc.c
+++ b/drivers/mmc/host/mxcmmc.c
@@ -255,7 +255,7 @@ static int mxcmci_setup_data(struct mxcmci_host *host, struct mmc_data *data)
255 if (nents != data->sg_len) 255 if (nents != data->sg_len)
256 return -EINVAL; 256 return -EINVAL;
257 257
258 host->desc = host->dma->device->device_prep_slave_sg(host->dma, 258 host->desc = dmaengine_prep_slave_sg(host->dma,
259 data->sg, data->sg_len, slave_dirn, 259 data->sg, data->sg_len, slave_dirn,
260 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 260 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
261 261
diff --git a/drivers/mmc/host/mxs-mmc.c b/drivers/mmc/host/mxs-mmc.c
index 382c835d217c..65f36cf2ff33 100644
--- a/drivers/mmc/host/mxs-mmc.c
+++ b/drivers/mmc/host/mxs-mmc.c
@@ -324,7 +324,7 @@ static struct dma_async_tx_descriptor *mxs_mmc_prep_dma(
324 sg_len = SSP_PIO_NUM; 324 sg_len = SSP_PIO_NUM;
325 } 325 }
326 326
327 desc = host->dmach->device->device_prep_slave_sg(host->dmach, 327 desc = dmaengine_prep_slave_sg(host->dmach,
328 sgl, sg_len, host->slave_dirn, append); 328 sgl, sg_len, host->slave_dirn, append);
329 if (desc) { 329 if (desc) {
330 desc->callback = mxs_mmc_dma_irq_callback; 330 desc->callback = mxs_mmc_dma_irq_callback;
diff --git a/drivers/mmc/host/sh_mmcif.c b/drivers/mmc/host/sh_mmcif.c
index f5d8b53be333..3d00f1aab87d 100644
--- a/drivers/mmc/host/sh_mmcif.c
+++ b/drivers/mmc/host/sh_mmcif.c
@@ -285,7 +285,7 @@ static void sh_mmcif_start_dma_rx(struct sh_mmcif_host *host)
285 DMA_FROM_DEVICE); 285 DMA_FROM_DEVICE);
286 if (ret > 0) { 286 if (ret > 0) {
287 host->dma_active = true; 287 host->dma_active = true;
288 desc = chan->device->device_prep_slave_sg(chan, sg, ret, 288 desc = dmaengine_prep_slave_sg(chan, sg, ret,
289 DMA_DEV_TO_MEM, DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 289 DMA_DEV_TO_MEM, DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
290 } 290 }
291 291
@@ -334,7 +334,7 @@ static void sh_mmcif_start_dma_tx(struct sh_mmcif_host *host)
334 DMA_TO_DEVICE); 334 DMA_TO_DEVICE);
335 if (ret > 0) { 335 if (ret > 0) {
336 host->dma_active = true; 336 host->dma_active = true;
337 desc = chan->device->device_prep_slave_sg(chan, sg, ret, 337 desc = dmaengine_prep_slave_sg(chan, sg, ret,
338 DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 338 DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
339 } 339 }
340 340
diff --git a/drivers/mmc/host/tmio_mmc_dma.c b/drivers/mmc/host/tmio_mmc_dma.c
index 7a6e6cc8f8b8..def9c54f73f5 100644
--- a/drivers/mmc/host/tmio_mmc_dma.c
+++ b/drivers/mmc/host/tmio_mmc_dma.c
@@ -76,7 +76,7 @@ static void tmio_mmc_start_dma_rx(struct tmio_mmc_host *host)
76 76
77 ret = dma_map_sg(chan->device->dev, sg, host->sg_len, DMA_FROM_DEVICE); 77 ret = dma_map_sg(chan->device->dev, sg, host->sg_len, DMA_FROM_DEVICE);
78 if (ret > 0) 78 if (ret > 0)
79 desc = chan->device->device_prep_slave_sg(chan, sg, ret, 79 desc = dmaengine_prep_slave_sg(chan, sg, ret,
80 DMA_DEV_TO_MEM, DMA_CTRL_ACK); 80 DMA_DEV_TO_MEM, DMA_CTRL_ACK);
81 81
82 if (desc) { 82 if (desc) {
@@ -157,7 +157,7 @@ static void tmio_mmc_start_dma_tx(struct tmio_mmc_host *host)
157 157
158 ret = dma_map_sg(chan->device->dev, sg, host->sg_len, DMA_TO_DEVICE); 158 ret = dma_map_sg(chan->device->dev, sg, host->sg_len, DMA_TO_DEVICE);
159 if (ret > 0) 159 if (ret > 0)
160 desc = chan->device->device_prep_slave_sg(chan, sg, ret, 160 desc = dmaengine_prep_slave_sg(chan, sg, ret,
161 DMA_MEM_TO_DEV, DMA_CTRL_ACK); 161 DMA_MEM_TO_DEV, DMA_CTRL_ACK);
162 162
163 if (desc) { 163 if (desc) {
diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-lib.c b/drivers/mtd/nand/gpmi-nand/gpmi-lib.c
index 7f680420bfab..2a200ba0bd1a 100644
--- a/drivers/mtd/nand/gpmi-nand/gpmi-lib.c
+++ b/drivers/mtd/nand/gpmi-nand/gpmi-lib.c
@@ -825,7 +825,7 @@ int gpmi_send_command(struct gpmi_nand_data *this)
825 | BM_GPMI_CTRL0_ADDRESS_INCREMENT 825 | BM_GPMI_CTRL0_ADDRESS_INCREMENT
826 | BF_GPMI_CTRL0_XFER_COUNT(this->command_length); 826 | BF_GPMI_CTRL0_XFER_COUNT(this->command_length);
827 pio[1] = pio[2] = 0; 827 pio[1] = pio[2] = 0;
828 desc = channel->device->device_prep_slave_sg(channel, 828 desc = dmaengine_prep_slave_sg(channel,
829 (struct scatterlist *)pio, 829 (struct scatterlist *)pio,
830 ARRAY_SIZE(pio), DMA_TRANS_NONE, 0); 830 ARRAY_SIZE(pio), DMA_TRANS_NONE, 0);
831 if (!desc) { 831 if (!desc) {
@@ -838,8 +838,7 @@ int gpmi_send_command(struct gpmi_nand_data *this)
838 838
839 sg_init_one(sgl, this->cmd_buffer, this->command_length); 839 sg_init_one(sgl, this->cmd_buffer, this->command_length);
840 dma_map_sg(this->dev, sgl, 1, DMA_TO_DEVICE); 840 dma_map_sg(this->dev, sgl, 1, DMA_TO_DEVICE);
841 desc = channel->device->device_prep_slave_sg(channel, 841 desc = dmaengine_prep_slave_sg(channel, sgl, 1, DMA_MEM_TO_DEV, 1);
842 sgl, 1, DMA_MEM_TO_DEV, 1);
843 if (!desc) { 842 if (!desc) {
844 pr_err("step 2 error\n"); 843 pr_err("step 2 error\n");
845 return -1; 844 return -1;
@@ -870,8 +869,7 @@ int gpmi_send_data(struct gpmi_nand_data *this)
870 | BF_GPMI_CTRL0_ADDRESS(address) 869 | BF_GPMI_CTRL0_ADDRESS(address)
871 | BF_GPMI_CTRL0_XFER_COUNT(this->upper_len); 870 | BF_GPMI_CTRL0_XFER_COUNT(this->upper_len);
872 pio[1] = 0; 871 pio[1] = 0;
873 desc = channel->device->device_prep_slave_sg(channel, 872 desc = dmaengine_prep_slave_sg(channel, (struct scatterlist *)pio,
874 (struct scatterlist *)pio,
875 ARRAY_SIZE(pio), DMA_TRANS_NONE, 0); 873 ARRAY_SIZE(pio), DMA_TRANS_NONE, 0);
876 if (!desc) { 874 if (!desc) {
877 pr_err("step 1 error\n"); 875 pr_err("step 1 error\n");
@@ -880,7 +878,7 @@ int gpmi_send_data(struct gpmi_nand_data *this)
880 878
881 /* [2] send DMA request */ 879 /* [2] send DMA request */
882 prepare_data_dma(this, DMA_TO_DEVICE); 880 prepare_data_dma(this, DMA_TO_DEVICE);
883 desc = channel->device->device_prep_slave_sg(channel, &this->data_sgl, 881 desc = dmaengine_prep_slave_sg(channel, &this->data_sgl,
884 1, DMA_MEM_TO_DEV, 1); 882 1, DMA_MEM_TO_DEV, 1);
885 if (!desc) { 883 if (!desc) {
886 pr_err("step 2 error\n"); 884 pr_err("step 2 error\n");
@@ -906,7 +904,7 @@ int gpmi_read_data(struct gpmi_nand_data *this)
906 | BF_GPMI_CTRL0_ADDRESS(BV_GPMI_CTRL0_ADDRESS__NAND_DATA) 904 | BF_GPMI_CTRL0_ADDRESS(BV_GPMI_CTRL0_ADDRESS__NAND_DATA)
907 | BF_GPMI_CTRL0_XFER_COUNT(this->upper_len); 905 | BF_GPMI_CTRL0_XFER_COUNT(this->upper_len);
908 pio[1] = 0; 906 pio[1] = 0;
909 desc = channel->device->device_prep_slave_sg(channel, 907 desc = dmaengine_prep_slave_sg(channel,
910 (struct scatterlist *)pio, 908 (struct scatterlist *)pio,
911 ARRAY_SIZE(pio), DMA_TRANS_NONE, 0); 909 ARRAY_SIZE(pio), DMA_TRANS_NONE, 0);
912 if (!desc) { 910 if (!desc) {
@@ -916,8 +914,8 @@ int gpmi_read_data(struct gpmi_nand_data *this)
916 914
917 /* [2] : send DMA request */ 915 /* [2] : send DMA request */
918 prepare_data_dma(this, DMA_FROM_DEVICE); 916 prepare_data_dma(this, DMA_FROM_DEVICE);
919 desc = channel->device->device_prep_slave_sg(channel, &this->data_sgl, 917 desc = dmaengine_prep_slave_sg(channel, &this->data_sgl,
920 1, DMA_DEV_TO_MEM, 1); 918 1, DMA_DEV_TO_MEM, 1);
921 if (!desc) { 919 if (!desc) {
922 pr_err("step 2 error\n"); 920 pr_err("step 2 error\n");
923 return -1; 921 return -1;
@@ -962,8 +960,7 @@ int gpmi_send_page(struct gpmi_nand_data *this,
962 pio[4] = payload; 960 pio[4] = payload;
963 pio[5] = auxiliary; 961 pio[5] = auxiliary;
964 962
965 desc = channel->device->device_prep_slave_sg(channel, 963 desc = dmaengine_prep_slave_sg(channel, (struct scatterlist *)pio,
966 (struct scatterlist *)pio,
967 ARRAY_SIZE(pio), DMA_TRANS_NONE, 0); 964 ARRAY_SIZE(pio), DMA_TRANS_NONE, 0);
968 if (!desc) { 965 if (!desc) {
969 pr_err("step 2 error\n"); 966 pr_err("step 2 error\n");
@@ -997,7 +994,7 @@ int gpmi_read_page(struct gpmi_nand_data *this,
997 | BF_GPMI_CTRL0_ADDRESS(address) 994 | BF_GPMI_CTRL0_ADDRESS(address)
998 | BF_GPMI_CTRL0_XFER_COUNT(0); 995 | BF_GPMI_CTRL0_XFER_COUNT(0);
999 pio[1] = 0; 996 pio[1] = 0;
1000 desc = channel->device->device_prep_slave_sg(channel, 997 desc = dmaengine_prep_slave_sg(channel,
1001 (struct scatterlist *)pio, 2, 998 (struct scatterlist *)pio, 2,
1002 DMA_TRANS_NONE, 0); 999 DMA_TRANS_NONE, 0);
1003 if (!desc) { 1000 if (!desc) {
@@ -1026,7 +1023,7 @@ int gpmi_read_page(struct gpmi_nand_data *this,
1026 pio[3] = geo->page_size; 1023 pio[3] = geo->page_size;
1027 pio[4] = payload; 1024 pio[4] = payload;
1028 pio[5] = auxiliary; 1025 pio[5] = auxiliary;
1029 desc = channel->device->device_prep_slave_sg(channel, 1026 desc = dmaengine_prep_slave_sg(channel,
1030 (struct scatterlist *)pio, 1027 (struct scatterlist *)pio,
1031 ARRAY_SIZE(pio), DMA_TRANS_NONE, 1); 1028 ARRAY_SIZE(pio), DMA_TRANS_NONE, 1);
1032 if (!desc) { 1029 if (!desc) {
@@ -1045,7 +1042,7 @@ int gpmi_read_page(struct gpmi_nand_data *this,
1045 | BF_GPMI_CTRL0_ADDRESS(address) 1042 | BF_GPMI_CTRL0_ADDRESS(address)
1046 | BF_GPMI_CTRL0_XFER_COUNT(geo->page_size); 1043 | BF_GPMI_CTRL0_XFER_COUNT(geo->page_size);
1047 pio[1] = 0; 1044 pio[1] = 0;
1048 desc = channel->device->device_prep_slave_sg(channel, 1045 desc = dmaengine_prep_slave_sg(channel,
1049 (struct scatterlist *)pio, 2, 1046 (struct scatterlist *)pio, 2,
1050 DMA_TRANS_NONE, 1); 1047 DMA_TRANS_NONE, 1);
1051 if (!desc) { 1048 if (!desc) {
diff --git a/drivers/net/ethernet/micrel/ks8842.c b/drivers/net/ethernet/micrel/ks8842.c
index 0a85690a1321..554fef3f0130 100644
--- a/drivers/net/ethernet/micrel/ks8842.c
+++ b/drivers/net/ethernet/micrel/ks8842.c
@@ -458,7 +458,7 @@ static int ks8842_tx_frame_dma(struct sk_buff *skb, struct net_device *netdev)
458 if (sg_dma_len(&ctl->sg) % 4) 458 if (sg_dma_len(&ctl->sg) % 4)
459 sg_dma_len(&ctl->sg) += 4 - sg_dma_len(&ctl->sg) % 4; 459 sg_dma_len(&ctl->sg) += 4 - sg_dma_len(&ctl->sg) % 4;
460 460
461 ctl->adesc = ctl->chan->device->device_prep_slave_sg(ctl->chan, 461 ctl->adesc = dmaengine_prep_slave_sg(ctl->chan,
462 &ctl->sg, 1, DMA_MEM_TO_DEV, 462 &ctl->sg, 1, DMA_MEM_TO_DEV,
463 DMA_PREP_INTERRUPT | DMA_COMPL_SKIP_SRC_UNMAP); 463 DMA_PREP_INTERRUPT | DMA_COMPL_SKIP_SRC_UNMAP);
464 if (!ctl->adesc) 464 if (!ctl->adesc)
@@ -570,7 +570,7 @@ static int __ks8842_start_new_rx_dma(struct net_device *netdev)
570 570
571 sg_dma_len(sg) = DMA_BUFFER_SIZE; 571 sg_dma_len(sg) = DMA_BUFFER_SIZE;
572 572
573 ctl->adesc = ctl->chan->device->device_prep_slave_sg(ctl->chan, 573 ctl->adesc = dmaengine_prep_slave_sg(ctl->chan,
574 sg, 1, DMA_DEV_TO_MEM, 574 sg, 1, DMA_DEV_TO_MEM,
575 DMA_PREP_INTERRUPT | DMA_COMPL_SKIP_SRC_UNMAP); 575 DMA_PREP_INTERRUPT | DMA_COMPL_SKIP_SRC_UNMAP);
576 576
diff --git a/drivers/spi/spi-dw-mid.c b/drivers/spi/spi-dw-mid.c
index 04d6c1b31383..b9f0192758d6 100644
--- a/drivers/spi/spi-dw-mid.c
+++ b/drivers/spi/spi-dw-mid.c
@@ -146,7 +146,7 @@ static int mid_spi_dma_transfer(struct dw_spi *dws, int cs_change)
146 dws->tx_sgl.dma_address = dws->tx_dma; 146 dws->tx_sgl.dma_address = dws->tx_dma;
147 dws->tx_sgl.length = dws->len; 147 dws->tx_sgl.length = dws->len;
148 148
149 txdesc = txchan->device->device_prep_slave_sg(txchan, 149 txdesc = dmaengine_prep_slave_sg(txchan,
150 &dws->tx_sgl, 150 &dws->tx_sgl,
151 1, 151 1,
152 DMA_MEM_TO_DEV, 152 DMA_MEM_TO_DEV,
@@ -169,7 +169,7 @@ static int mid_spi_dma_transfer(struct dw_spi *dws, int cs_change)
169 dws->rx_sgl.dma_address = dws->rx_dma; 169 dws->rx_sgl.dma_address = dws->rx_dma;
170 dws->rx_sgl.length = dws->len; 170 dws->rx_sgl.length = dws->len;
171 171
172 rxdesc = rxchan->device->device_prep_slave_sg(rxchan, 172 rxdesc = dmaengine_prep_slave_sg(rxchan,
173 &dws->rx_sgl, 173 &dws->rx_sgl,
174 1, 174 1,
175 DMA_DEV_TO_MEM, 175 DMA_DEV_TO_MEM,
diff --git a/drivers/spi/spi-ep93xx.c b/drivers/spi/spi-ep93xx.c
index d46e55c720b7..6db2887852d6 100644
--- a/drivers/spi/spi-ep93xx.c
+++ b/drivers/spi/spi-ep93xx.c
@@ -633,8 +633,8 @@ ep93xx_spi_dma_prepare(struct ep93xx_spi *espi, enum dma_data_direction dir)
633 if (!nents) 633 if (!nents)
634 return ERR_PTR(-ENOMEM); 634 return ERR_PTR(-ENOMEM);
635 635
636 txd = chan->device->device_prep_slave_sg(chan, sgt->sgl, nents, 636 txd = dmaengine_prep_slave_sg(chan, sgt->sgl, nents,
637 slave_dirn, DMA_CTRL_ACK); 637 slave_dirn, DMA_CTRL_ACK);
638 if (!txd) { 638 if (!txd) {
639 dma_unmap_sg(chan->device->dev, sgt->sgl, sgt->nents, dir); 639 dma_unmap_sg(chan->device->dev, sgt->sgl, sgt->nents, dir);
640 return ERR_PTR(-ENOMEM); 640 return ERR_PTR(-ENOMEM);
diff --git a/drivers/spi/spi-pl022.c b/drivers/spi/spi-pl022.c
index 1dc667f8a305..a209f3b7b05b 100644
--- a/drivers/spi/spi-pl022.c
+++ b/drivers/spi/spi-pl022.c
@@ -1040,7 +1040,7 @@ static int configure_dma(struct pl022 *pl022)
1040 goto err_tx_sgmap; 1040 goto err_tx_sgmap;
1041 1041
1042 /* Send both scatterlists */ 1042 /* Send both scatterlists */
1043 rxdesc = rxchan->device->device_prep_slave_sg(rxchan, 1043 rxdesc = dmaengine_prep_slave_sg(rxchan,
1044 pl022->sgt_rx.sgl, 1044 pl022->sgt_rx.sgl,
1045 rx_sglen, 1045 rx_sglen,
1046 DMA_DEV_TO_MEM, 1046 DMA_DEV_TO_MEM,
@@ -1048,7 +1048,7 @@ static int configure_dma(struct pl022 *pl022)
1048 if (!rxdesc) 1048 if (!rxdesc)
1049 goto err_rxdesc; 1049 goto err_rxdesc;
1050 1050
1051 txdesc = txchan->device->device_prep_slave_sg(txchan, 1051 txdesc = dmaengine_prep_slave_sg(txchan,
1052 pl022->sgt_tx.sgl, 1052 pl022->sgt_tx.sgl,
1053 tx_sglen, 1053 tx_sglen,
1054 DMA_MEM_TO_DEV, 1054 DMA_MEM_TO_DEV,
diff --git a/drivers/spi/spi-topcliff-pch.c b/drivers/spi/spi-topcliff-pch.c
index 2a6429d8c363..ea4c8d57667a 100644
--- a/drivers/spi/spi-topcliff-pch.c
+++ b/drivers/spi/spi-topcliff-pch.c
@@ -1078,7 +1078,7 @@ static void pch_spi_handle_dma(struct pch_spi_data *data, int *bpw)
1078 sg_dma_address(sg) = dma->rx_buf_dma + sg->offset; 1078 sg_dma_address(sg) = dma->rx_buf_dma + sg->offset;
1079 } 1079 }
1080 sg = dma->sg_rx_p; 1080 sg = dma->sg_rx_p;
1081 desc_rx = dma->chan_rx->device->device_prep_slave_sg(dma->chan_rx, sg, 1081 desc_rx = dmaengine_prep_slave_sg(dma->chan_rx, sg,
1082 num, DMA_DEV_TO_MEM, 1082 num, DMA_DEV_TO_MEM,
1083 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 1083 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
1084 if (!desc_rx) { 1084 if (!desc_rx) {
@@ -1123,7 +1123,7 @@ static void pch_spi_handle_dma(struct pch_spi_data *data, int *bpw)
1123 sg_dma_address(sg) = dma->tx_buf_dma + sg->offset; 1123 sg_dma_address(sg) = dma->tx_buf_dma + sg->offset;
1124 } 1124 }
1125 sg = dma->sg_tx_p; 1125 sg = dma->sg_tx_p;
1126 desc_tx = dma->chan_tx->device->device_prep_slave_sg(dma->chan_tx, 1126 desc_tx = dmaengine_prep_slave_sg(dma->chan_tx,
1127 sg, num, DMA_MEM_TO_DEV, 1127 sg, num, DMA_MEM_TO_DEV,
1128 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 1128 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
1129 if (!desc_tx) { 1129 if (!desc_tx) {
diff --git a/drivers/tty/serial/amba-pl011.c b/drivers/tty/serial/amba-pl011.c
index db7f88a1bdee..f9dcb5379b92 100644
--- a/drivers/tty/serial/amba-pl011.c
+++ b/drivers/tty/serial/amba-pl011.c
@@ -483,7 +483,7 @@ static int pl011_dma_tx_refill(struct uart_amba_port *uap)
483 return -EBUSY; 483 return -EBUSY;
484 } 484 }
485 485
486 desc = dma_dev->device_prep_slave_sg(chan, &dmatx->sg, 1, DMA_MEM_TO_DEV, 486 desc = dmaengine_prep_slave_sg(chan, &dmatx->sg, 1, DMA_MEM_TO_DEV,
487 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 487 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
488 if (!desc) { 488 if (!desc) {
489 dma_unmap_sg(dma_dev->dev, &dmatx->sg, 1, DMA_TO_DEVICE); 489 dma_unmap_sg(dma_dev->dev, &dmatx->sg, 1, DMA_TO_DEVICE);
@@ -666,7 +666,6 @@ static void pl011_dma_rx_callback(void *data);
666static int pl011_dma_rx_trigger_dma(struct uart_amba_port *uap) 666static int pl011_dma_rx_trigger_dma(struct uart_amba_port *uap)
667{ 667{
668 struct dma_chan *rxchan = uap->dmarx.chan; 668 struct dma_chan *rxchan = uap->dmarx.chan;
669 struct dma_device *dma_dev;
670 struct pl011_dmarx_data *dmarx = &uap->dmarx; 669 struct pl011_dmarx_data *dmarx = &uap->dmarx;
671 struct dma_async_tx_descriptor *desc; 670 struct dma_async_tx_descriptor *desc;
672 struct pl011_sgbuf *sgbuf; 671 struct pl011_sgbuf *sgbuf;
@@ -677,8 +676,7 @@ static int pl011_dma_rx_trigger_dma(struct uart_amba_port *uap)
677 /* Start the RX DMA job */ 676 /* Start the RX DMA job */
678 sgbuf = uap->dmarx.use_buf_b ? 677 sgbuf = uap->dmarx.use_buf_b ?
679 &uap->dmarx.sgbuf_b : &uap->dmarx.sgbuf_a; 678 &uap->dmarx.sgbuf_b : &uap->dmarx.sgbuf_a;
680 dma_dev = rxchan->device; 679 desc = dmaengine_prep_slave_sg(rxchan, &sgbuf->sg, 1,
681 desc = rxchan->device->device_prep_slave_sg(rxchan, &sgbuf->sg, 1,
682 DMA_DEV_TO_MEM, 680 DMA_DEV_TO_MEM,
683 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 681 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
684 /* 682 /*
diff --git a/drivers/tty/serial/pch_uart.c b/drivers/tty/serial/pch_uart.c
index 17ae65762d1a..61743bdc439b 100644
--- a/drivers/tty/serial/pch_uart.c
+++ b/drivers/tty/serial/pch_uart.c
@@ -763,7 +763,7 @@ static int dma_handle_rx(struct eg20t_port *priv)
763 763
764 sg_dma_address(sg) = priv->rx_buf_dma; 764 sg_dma_address(sg) = priv->rx_buf_dma;
765 765
766 desc = priv->chan_rx->device->device_prep_slave_sg(priv->chan_rx, 766 desc = dmaengine_prep_slave_sg(priv->chan_rx,
767 sg, 1, DMA_DEV_TO_MEM, 767 sg, 1, DMA_DEV_TO_MEM,
768 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 768 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
769 769
@@ -922,7 +922,7 @@ static unsigned int dma_handle_tx(struct eg20t_port *priv)
922 sg_dma_len(sg) = size; 922 sg_dma_len(sg) = size;
923 } 923 }
924 924
925 desc = priv->chan_tx->device->device_prep_slave_sg(priv->chan_tx, 925 desc = dmaengine_prep_slave_sg(priv->chan_tx,
926 priv->sg_tx_p, nent, DMA_MEM_TO_DEV, 926 priv->sg_tx_p, nent, DMA_MEM_TO_DEV,
927 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 927 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
928 if (!desc) { 928 if (!desc) {
diff --git a/drivers/tty/serial/sh-sci.c b/drivers/tty/serial/sh-sci.c
index 75085795528e..872557f89cca 100644
--- a/drivers/tty/serial/sh-sci.c
+++ b/drivers/tty/serial/sh-sci.c
@@ -1338,7 +1338,7 @@ static void sci_submit_rx(struct sci_port *s)
1338 struct scatterlist *sg = &s->sg_rx[i]; 1338 struct scatterlist *sg = &s->sg_rx[i];
1339 struct dma_async_tx_descriptor *desc; 1339 struct dma_async_tx_descriptor *desc;
1340 1340
1341 desc = chan->device->device_prep_slave_sg(chan, 1341 desc = dmaengine_prep_slave_sg(chan,
1342 sg, 1, DMA_DEV_TO_MEM, DMA_PREP_INTERRUPT); 1342 sg, 1, DMA_DEV_TO_MEM, DMA_PREP_INTERRUPT);
1343 1343
1344 if (desc) { 1344 if (desc) {
@@ -1453,7 +1453,7 @@ static void work_fn_tx(struct work_struct *work)
1453 1453
1454 BUG_ON(!sg_dma_len(sg)); 1454 BUG_ON(!sg_dma_len(sg));
1455 1455
1456 desc = chan->device->device_prep_slave_sg(chan, 1456 desc = dmaengine_prep_slave_sg(chan,
1457 sg, s->sg_len_tx, DMA_MEM_TO_DEV, 1457 sg, s->sg_len_tx, DMA_MEM_TO_DEV,
1458 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 1458 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
1459 if (!desc) { 1459 if (!desc) {
diff --git a/drivers/usb/musb/ux500_dma.c b/drivers/usb/musb/ux500_dma.c
index 2a36bf37d7aa..d05c7fbbb703 100644
--- a/drivers/usb/musb/ux500_dma.c
+++ b/drivers/usb/musb/ux500_dma.c
@@ -120,8 +120,7 @@ static bool ux500_configure_channel(struct dma_channel *channel,
120 dma_chan->device->device_control(dma_chan, DMA_SLAVE_CONFIG, 120 dma_chan->device->device_control(dma_chan, DMA_SLAVE_CONFIG,
121 (unsigned long) &slave_conf); 121 (unsigned long) &slave_conf);
122 122
123 dma_desc = dma_chan->device-> 123 dma_desc = dmaengine_prep_slave_sg(dma_chan, &sg, 1, direction,
124 device_prep_slave_sg(dma_chan, &sg, 1, direction,
125 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 124 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
126 if (!dma_desc) 125 if (!dma_desc)
127 return false; 126 return false;
diff --git a/drivers/usb/renesas_usbhs/fifo.c b/drivers/usb/renesas_usbhs/fifo.c
index 72339bd6fcab..7b4309339f3d 100644
--- a/drivers/usb/renesas_usbhs/fifo.c
+++ b/drivers/usb/renesas_usbhs/fifo.c
@@ -783,9 +783,8 @@ static void usbhsf_dma_prepare_tasklet(unsigned long data)
783 sg_dma_address(&sg) = pkt->dma + pkt->actual; 783 sg_dma_address(&sg) = pkt->dma + pkt->actual;
784 sg_dma_len(&sg) = pkt->trans; 784 sg_dma_len(&sg) = pkt->trans;
785 785
786 desc = chan->device->device_prep_slave_sg(chan, &sg, 1, dir, 786 desc = dmaengine_prep_slave_sg(chan, &sg, 1, dir,
787 DMA_PREP_INTERRUPT | 787 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
788 DMA_CTRL_ACK);
789 if (!desc) 788 if (!desc)
790 return; 789 return;
791 790
diff --git a/drivers/video/mx3fb.c b/drivers/video/mx3fb.c
index 727a5149d818..eec0d7b748eb 100644
--- a/drivers/video/mx3fb.c
+++ b/drivers/video/mx3fb.c
@@ -337,7 +337,7 @@ static void sdc_enable_channel(struct mx3fb_info *mx3_fbi)
337 337
338 /* This enables the channel */ 338 /* This enables the channel */
339 if (mx3_fbi->cookie < 0) { 339 if (mx3_fbi->cookie < 0) {
340 mx3_fbi->txd = dma_chan->device->device_prep_slave_sg(dma_chan, 340 mx3_fbi->txd = dmaengine_prep_slave_sg(dma_chan,
341 &mx3_fbi->sg[0], 1, DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT); 341 &mx3_fbi->sg[0], 1, DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT);
342 if (!mx3_fbi->txd) { 342 if (!mx3_fbi->txd) {
343 dev_err(mx3fb->dev, "Cannot allocate descriptor on %d\n", 343 dev_err(mx3fb->dev, "Cannot allocate descriptor on %d\n",
@@ -1091,7 +1091,7 @@ static int mx3fb_pan_display(struct fb_var_screeninfo *var,
1091 if (mx3_fbi->txd) 1091 if (mx3_fbi->txd)
1092 async_tx_ack(mx3_fbi->txd); 1092 async_tx_ack(mx3_fbi->txd);
1093 1093
1094 txd = dma_chan->device->device_prep_slave_sg(dma_chan, sg + 1094 txd = dmaengine_prep_slave_sg(dma_chan, sg +
1095 mx3_fbi->cur_ipu_buf, 1, DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT); 1095 mx3_fbi->cur_ipu_buf, 1, DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT);
1096 if (!txd) { 1096 if (!txd) {
1097 dev_err(fbi->device, 1097 dev_err(fbi->device,
diff --git a/include/linux/dmaengine.h b/include/linux/dmaengine.h
index 715babf4bffe..03d68b7e5705 100644
--- a/include/linux/dmaengine.h
+++ b/include/linux/dmaengine.h
@@ -622,6 +622,22 @@ static inline struct dma_async_tx_descriptor *dmaengine_prep_slave_single(
622 return chan->device->device_prep_slave_sg(chan, &sg, 1, dir, flags); 622 return chan->device->device_prep_slave_sg(chan, &sg, 1, dir, flags);
623} 623}
624 624
625static inline struct dma_async_tx_descriptor *dmaengine_prep_slave_sg(
626 struct dma_chan *chan, struct scatterlist *sgl, unsigned int sg_len,
627 enum dma_transfer_direction dir, unsigned long flags)
628{
629 return chan->device->device_prep_slave_sg(chan, sgl, sg_len,
630 dir, flags);
631}
632
633static inline struct dma_async_tx_descriptor *dmaengine_prep_dma_cyclic(
634 struct dma_chan *chan, dma_addr_t buf_addr, size_t buf_len,
635 size_t period_len, enum dma_transfer_direction dir)
636{
637 return chan->device->device_prep_dma_cyclic(chan, buf_addr, buf_len,
638 period_len, dir);
639}
640
625static inline int dmaengine_terminate_all(struct dma_chan *chan) 641static inline int dmaengine_terminate_all(struct dma_chan *chan)
626{ 642{
627 return dmaengine_device_control(chan, DMA_TERMINATE_ALL, 0); 643 return dmaengine_device_control(chan, DMA_TERMINATE_ALL, 0);
diff --git a/sound/soc/ep93xx/ep93xx-pcm.c b/sound/soc/ep93xx/ep93xx-pcm.c
index de8390449873..50593e50ad57 100644
--- a/sound/soc/ep93xx/ep93xx-pcm.c
+++ b/sound/soc/ep93xx/ep93xx-pcm.c
@@ -142,11 +142,10 @@ static int ep93xx_pcm_dma_submit(struct snd_pcm_substream *substream)
142 struct snd_pcm_runtime *runtime = substream->runtime; 142 struct snd_pcm_runtime *runtime = substream->runtime;
143 struct ep93xx_runtime_data *rtd = runtime->private_data; 143 struct ep93xx_runtime_data *rtd = runtime->private_data;
144 struct dma_chan *chan = rtd->dma_chan; 144 struct dma_chan *chan = rtd->dma_chan;
145 struct dma_device *dma_dev = chan->device;
146 struct dma_async_tx_descriptor *desc; 145 struct dma_async_tx_descriptor *desc;
147 146
148 rtd->pointer_bytes = 0; 147 rtd->pointer_bytes = 0;
149 desc = dma_dev->device_prep_dma_cyclic(chan, runtime->dma_addr, 148 desc = dmaengine_prep_dma_cyclic(chan, runtime->dma_addr,
150 rtd->period_bytes * rtd->periods, 149 rtd->period_bytes * rtd->periods,
151 rtd->period_bytes, 150 rtd->period_bytes,
152 rtd->dma_data.direction); 151 rtd->dma_data.direction);
diff --git a/sound/soc/imx/imx-pcm-dma-mx2.c b/sound/soc/imx/imx-pcm-dma-mx2.c
index 52b0dedbf996..af46b4e2b438 100644
--- a/sound/soc/imx/imx-pcm-dma-mx2.c
+++ b/sound/soc/imx/imx-pcm-dma-mx2.c
@@ -160,7 +160,7 @@ static int snd_imx_pcm_hw_params(struct snd_pcm_substream *substream,
160 160
161 iprtd->buf = (unsigned int *)substream->dma_buffer.area; 161 iprtd->buf = (unsigned int *)substream->dma_buffer.area;
162 162
163 iprtd->desc = chan->device->device_prep_dma_cyclic(chan, dma_addr, 163 iprtd->desc = dmaengine_prep_dma_cyclic(chan, dma_addr,
164 iprtd->period_bytes * iprtd->periods, 164 iprtd->period_bytes * iprtd->periods,
165 iprtd->period_bytes, 165 iprtd->period_bytes,
166 substream->stream == SNDRV_PCM_STREAM_PLAYBACK ? 166 substream->stream == SNDRV_PCM_STREAM_PLAYBACK ?
diff --git a/sound/soc/mxs/mxs-pcm.c b/sound/soc/mxs/mxs-pcm.c
index 105f42a394df..661b678d08a8 100644
--- a/sound/soc/mxs/mxs-pcm.c
+++ b/sound/soc/mxs/mxs-pcm.c
@@ -132,7 +132,7 @@ static int snd_mxs_pcm_hw_params(struct snd_pcm_substream *substream,
132 132
133 iprtd->buf = substream->dma_buffer.area; 133 iprtd->buf = substream->dma_buffer.area;
134 134
135 iprtd->desc = chan->device->device_prep_dma_cyclic(chan, dma_addr, 135 iprtd->desc = dmaengine_prep_dma_cyclic(chan, dma_addr,
136 iprtd->period_bytes * iprtd->periods, 136 iprtd->period_bytes * iprtd->periods,
137 iprtd->period_bytes, 137 iprtd->period_bytes,
138 substream->stream == SNDRV_PCM_STREAM_PLAYBACK ? 138 substream->stream == SNDRV_PCM_STREAM_PLAYBACK ?
diff --git a/sound/soc/sh/siu_pcm.c b/sound/soc/sh/siu_pcm.c
index 0193e595d415..5cfcc655e95f 100644
--- a/sound/soc/sh/siu_pcm.c
+++ b/sound/soc/sh/siu_pcm.c
@@ -130,7 +130,7 @@ static int siu_pcm_wr_set(struct siu_port *port_info,
130 sg_dma_len(&sg) = size; 130 sg_dma_len(&sg) = size;
131 sg_dma_address(&sg) = buff; 131 sg_dma_address(&sg) = buff;
132 132
133 desc = siu_stream->chan->device->device_prep_slave_sg(siu_stream->chan, 133 desc = dmaengine_prep_slave_sg(siu_stream->chan,
134 &sg, 1, DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 134 &sg, 1, DMA_MEM_TO_DEV, DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
135 if (!desc) { 135 if (!desc) {
136 dev_err(dev, "Failed to allocate a dma descriptor\n"); 136 dev_err(dev, "Failed to allocate a dma descriptor\n");
@@ -180,7 +180,7 @@ static int siu_pcm_rd_set(struct siu_port *port_info,
180 sg_dma_len(&sg) = size; 180 sg_dma_len(&sg) = size;
181 sg_dma_address(&sg) = buff; 181 sg_dma_address(&sg) = buff;
182 182
183 desc = siu_stream->chan->device->device_prep_slave_sg(siu_stream->chan, 183 desc = dmaengine_prep_slave_sg(siu_stream->chan,
184 &sg, 1, DMA_DEV_TO_MEM, DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 184 &sg, 1, DMA_DEV_TO_MEM, DMA_PREP_INTERRUPT | DMA_CTRL_ACK);
185 if (!desc) { 185 if (!desc) {
186 dev_err(dev, "Failed to allocate dma descriptor\n"); 186 dev_err(dev, "Failed to allocate dma descriptor\n");
diff --git a/sound/soc/txx9/txx9aclc.c b/sound/soc/txx9/txx9aclc.c
index 21554611557c..b609d2c64c55 100644
--- a/sound/soc/txx9/txx9aclc.c
+++ b/sound/soc/txx9/txx9aclc.c
@@ -132,7 +132,7 @@ txx9aclc_dma_submit(struct txx9aclc_dmadata *dmadata, dma_addr_t buf_dma_addr)
132 sg_set_page(&sg, pfn_to_page(PFN_DOWN(buf_dma_addr)), 132 sg_set_page(&sg, pfn_to_page(PFN_DOWN(buf_dma_addr)),
133 dmadata->frag_bytes, buf_dma_addr & (PAGE_SIZE - 1)); 133 dmadata->frag_bytes, buf_dma_addr & (PAGE_SIZE - 1));
134 sg_dma_address(&sg) = buf_dma_addr; 134 sg_dma_address(&sg) = buf_dma_addr;
135 desc = chan->device->device_prep_slave_sg(chan, &sg, 1, 135 desc = dmaengine_prep_slave_sg(chan, &sg, 1,
136 dmadata->substream->stream == SNDRV_PCM_STREAM_PLAYBACK ? 136 dmadata->substream->stream == SNDRV_PCM_STREAM_PLAYBACK ?
137 DMA_MEM_TO_DEV : DMA_DEV_TO_MEM, 137 DMA_MEM_TO_DEV : DMA_DEV_TO_MEM,
138 DMA_PREP_INTERRUPT | DMA_CTRL_ACK); 138 DMA_PREP_INTERRUPT | DMA_CTRL_ACK);