Re: [PATCH 09/15] net: irda: pxaficp_ir: remove the dmaengine compat need

From: Robert Jarzmik
Date: Sat Apr 21 2018 - 15:30:29 EST


Robert Jarzmik <robert.jarzmik@xxxxxxx> writes:

> As the pxa architecture switched towards the dmaengine slave map, the
> old compatibility mechanism to acquire the dma requestor line number and
> priority are not needed anymore.
>
> This patch simplifies the dma resource acquisition, using the more
> generic function dma_request_slave_channel().
>
> Signed-off-by: Robert Jarzmik <robert.jarzmik@xxxxxxx>
Samuel, could I have your ack please ?

Cheers.

--
Robert

PS: The submitted patch
> ---
> drivers/staging/irda/drivers/pxaficp_ir.c | 14 ++------------
> 1 file changed, 2 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/staging/irda/drivers/pxaficp_ir.c b/drivers/staging/irda/drivers/pxaficp_ir.c
> index 2ea00a6531f9..9dd6e21dc11e 100644
> --- a/drivers/staging/irda/drivers/pxaficp_ir.c
> +++ b/drivers/staging/irda/drivers/pxaficp_ir.c
> @@ -20,7 +20,6 @@
> #include <linux/clk.h>
> #include <linux/dmaengine.h>
> #include <linux/dma-mapping.h>
> -#include <linux/dma/pxa-dma.h>
> #include <linux/gpio.h>
> #include <linux/slab.h>
> #include <linux/sched/clock.h>
> @@ -735,9 +734,7 @@ static void pxa_irda_shutdown(struct pxa_irda *si)
> static int pxa_irda_start(struct net_device *dev)
> {
> struct pxa_irda *si = netdev_priv(dev);
> - dma_cap_mask_t mask;
> struct dma_slave_config config;
> - struct pxad_param param;
> int err;
>
> si->speed = 9600;
> @@ -757,9 +754,6 @@ static int pxa_irda_start(struct net_device *dev)
> disable_irq(si->icp_irq);
>
> err = -EBUSY;
> - dma_cap_zero(mask);
> - dma_cap_set(DMA_SLAVE, mask);
> - param.prio = PXAD_PRIO_LOWEST;
>
> memset(&config, 0, sizeof(config));
> config.src_addr_width = DMA_SLAVE_BUSWIDTH_1_BYTE;
> @@ -769,15 +763,11 @@ static int pxa_irda_start(struct net_device *dev)
> config.src_maxburst = 32;
> config.dst_maxburst = 32;
>
> - param.drcmr = si->drcmr_rx;
> - si->rxdma = dma_request_slave_channel_compat(mask, pxad_filter_fn,
> - &param, &dev->dev, "rx");
> + si->rxdma = dma_request_slave_channel(&dev->dev, "rx");
> if (!si->rxdma)
> goto err_rx_dma;
>
> - param.drcmr = si->drcmr_tx;
> - si->txdma = dma_request_slave_channel_compat(mask, pxad_filter_fn,
> - &param, &dev->dev, "tx");
> + si->txdma = dma_request_slave_channel(&dev->dev, "tx");
> if (!si->txdma)
> goto err_tx_dma;