]> git.itanic.dy.fi Git - linux-stable/commitdiff
serial: imx: convert not to use dma_request_slave_channel()
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Sun, 19 Nov 2023 16:12:48 +0000 (17:12 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 23 Nov 2023 19:32:48 +0000 (19:32 +0000)
dma_request_slave_channel() is deprecated. dma_request_chan() should
be used directly instead.

Switch to the preferred function and update the error handling accordingly.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Link: https://lore.kernel.org/r/a46b493c6b5cfa09417e3e138e304fd01b61e748.1700410346.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/tty/serial/imx.c

index 3ea9466ee5ef0f64a259fa221f2d0269e504dbbe..52dd8a6b87603fd54c0227e19193606242b5615c 100644 (file)
@@ -1336,15 +1336,18 @@ static int imx_uart_dma_init(struct imx_port *sport)
 {
        struct dma_slave_config slave_config = {};
        struct device *dev = sport->port.dev;
+       struct dma_chan *chan;
        int ret;
 
        /* Prepare for RX : */
-       sport->dma_chan_rx = dma_request_slave_channel(dev, "rx");
-       if (!sport->dma_chan_rx) {
+       chan = dma_request_chan(dev, "rx");
+       if (IS_ERR(chan)) {
                dev_dbg(dev, "cannot get the DMA channel.\n");
-               ret = -EINVAL;
+               sport->dma_chan_rx = NULL;
+               ret = PTR_ERR(chan);
                goto err;
        }
+       sport->dma_chan_rx = chan;
 
        slave_config.direction = DMA_DEV_TO_MEM;
        slave_config.src_addr = sport->port.mapbase + URXD0;
@@ -1366,12 +1369,14 @@ static int imx_uart_dma_init(struct imx_port *sport)
        sport->rx_ring.buf = sport->rx_buf;
 
        /* Prepare for TX : */
-       sport->dma_chan_tx = dma_request_slave_channel(dev, "tx");
-       if (!sport->dma_chan_tx) {
+       chan = dma_request_chan(dev, "tx");
+       if (IS_ERR(chan)) {
                dev_err(dev, "cannot get the TX DMA channel!\n");
-               ret = -EINVAL;
+               sport->dma_chan_tx = NULL;
+               ret = PTR_ERR(chan);
                goto err;
        }
+       sport->dma_chan_tx = chan;
 
        slave_config.direction = DMA_MEM_TO_DEV;
        slave_config.dst_addr = sport->port.mapbase + URTX0;