[PATCH 13/14] dma: mxs: rename custom flag

Vinod Koul vkoul at kernel.org
Mon Apr 22 22:25:19 PDT 2019


On 09-04-19, 13:34, Sascha Hauer wrote:
> The mxs dma driver uses the flags parameter in dmaengine_prep_slave_sg() for
> custom flags, but still uses the dmaengine specific names of the flags.
> Do a little bit better and at least give the flag a custom name.

after subsystem tag to dmaengine:

Acked-by: Vinod Koul <vkoul at kernel.org>

> 
> Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
> ---
>  drivers/dma/mxs-dma.c                      |  4 ++--
>  drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c | 17 +++++++++++------
>  include/linux/dma/mxs-dma.h                |  2 ++
>  3 files changed, 15 insertions(+), 8 deletions(-)
> 
> diff --git a/drivers/dma/mxs-dma.c b/drivers/dma/mxs-dma.c
> index 62ee9328aea1..c622bee7eb12 100644
> --- a/drivers/dma/mxs-dma.c
> +++ b/drivers/dma/mxs-dma.c
> @@ -541,7 +541,7 @@ static struct dma_async_tx_descriptor *mxs_dma_prep_slave_sg(
>  		ccw->bits = 0;
>  		ccw->bits |= CCW_IRQ;
>  		ccw->bits |= CCW_DEC_SEM;
> -		if (flags & DMA_CTRL_ACK)
> +		if (flags & MXS_DMA_CTRL_WAIT4END)
>  			ccw->bits |= CCW_WAIT4END;
>  		ccw->bits |= CCW_HALT_ON_TERM;
>  		ccw->bits |= CCW_TERM_FLUSH;
> @@ -573,7 +573,7 @@ static struct dma_async_tx_descriptor *mxs_dma_prep_slave_sg(
>  				ccw->bits &= ~CCW_CHAIN;
>  				ccw->bits |= CCW_IRQ;
>  				ccw->bits |= CCW_DEC_SEM;
> -				if (flags & DMA_CTRL_ACK)
> +				if (flags & MXS_DMA_CTRL_WAIT4END)
>  					ccw->bits |= CCW_WAIT4END;
>  			}
>  		}
> diff --git a/drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c b/drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c
> index cf016ec0b1c6..9f648b40197e 100644
> --- a/drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c
> +++ b/drivers/mtd/nand/raw/gpmi-nand/gpmi-nand.c
> @@ -925,7 +925,8 @@ static int gpmi_send_command(struct gpmi_nand_data *this)
>  	sg_init_one(sgl, this->cmd_buffer, this->command_length);
>  	dma_map_sg(this->dev, sgl, 1, DMA_TO_DEVICE);
>  	desc = dmaengine_prep_slave_sg(channel,
> -				sgl, 1, DMA_MEM_TO_DEV, DMA_CTRL_ACK);
> +				sgl, 1, DMA_MEM_TO_DEV,
> +				MXS_DMA_CTRL_WAIT4END);
>  	if (!desc)
>  		return -EINVAL;
>  
> @@ -996,7 +997,8 @@ static int gpmi_send_data(struct gpmi_nand_data *this, const void *buf,
>  	/* [2] send DMA request */
>  	prepare_data_dma(this, buf, len, DMA_TO_DEVICE);
>  	desc = dmaengine_prep_slave_sg(channel, &this->data_sgl,
> -					1, DMA_MEM_TO_DEV, DMA_CTRL_ACK);
> +					1, DMA_MEM_TO_DEV,
> +					MXS_DMA_CTRL_WAIT4END);
>  	if (!desc)
>  		return -EINVAL;
>  
> @@ -1033,7 +1035,8 @@ static int gpmi_read_data(struct gpmi_nand_data *this, void *buf, int len)
>  	/* [2] : send DMA request */
>  	direct = prepare_data_dma(this, buf, len, DMA_FROM_DEVICE);
>  	desc = dmaengine_prep_slave_sg(channel, &this->data_sgl,
> -					1, DMA_DEV_TO_MEM, DMA_CTRL_ACK);
> +					1, DMA_DEV_TO_MEM,
> +					MXS_DMA_CTRL_WAIT4END);
>  	if (!desc)
>  		return -EINVAL;
>  
> @@ -1083,7 +1086,8 @@ static int gpmi_send_page(struct gpmi_nand_data *this,  dma_addr_t payload,
>  	pio[5] = auxiliary;
>  
>  	desc = mxs_dmaengine_prep_pio(channel, pio, ARRAY_SIZE(pio),
> -				      DMA_TRANS_NONE, DMA_CTRL_ACK);
> +				      DMA_TRANS_NONE,
> +				      MXS_DMA_CTRL_WAIT4END);
>  	if (!desc)
>  		return -EINVAL;
>  
> @@ -1140,7 +1144,8 @@ static int gpmi_read_page(struct gpmi_nand_data *this,
>  	pio[4] = payload;
>  	pio[5] = auxiliary;
>  	desc = mxs_dmaengine_prep_pio(channel, pio, ARRAY_SIZE(pio),
> -				      DMA_TRANS_NONE, DMA_CTRL_ACK);
> +				      DMA_TRANS_NONE,
> +				      MXS_DMA_CTRL_WAIT4END);
>  	if (!desc)
>  		return -EINVAL;
>  
> @@ -1157,7 +1162,7 @@ static int gpmi_read_page(struct gpmi_nand_data *this,
>  	pio[1] = 0;
>  	pio[2] = 0; /* clear GPMI_HW_GPMI_ECCCTRL, disable the BCH. */
>  	desc = mxs_dmaengine_prep_pio(channel, pio, 3, DMA_TRANS_NONE,
> -				      DMA_CTRL_ACK);
> +				      MXS_DMA_CTRL_WAIT4END);
>  	if (!desc)
>  		return -EINVAL;
>  
> diff --git a/include/linux/dma/mxs-dma.h b/include/linux/dma/mxs-dma.h
> index 092b2a7b92ac..4a33f2c8a682 100644
> --- a/include/linux/dma/mxs-dma.h
> +++ b/include/linux/dma/mxs-dma.h
> @@ -4,6 +4,8 @@
>  
>  #include <linux/dmaengine.h>
>  
> +#define MXS_DMA_CTRL_WAIT4END	BIT(31)
> +
>  /*
>   * The mxs dmaengine can do PIO transfers. We pass a pointer to the PIO words
>   * in the second argument to dmaengine_prep_slave_sg when the direction is
> -- 
> 2.20.1

-- 
~Vinod



More information about the linux-mtd mailing list