[PATCH] dmaengine: owl: fix register access functions

Manivannan Sadhasivam manivannan.sadhasivam at linaro.org
Fri Mar 22 07:32:11 PDT 2024


On Fri, Mar 22, 2024 at 02:21:07PM +0100, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd at arndb.de>
> 
> When building with 'make W=1', clang notices that the computed register
> values are never actually written back but instead the wrong variable
> is set:
> 
> drivers/dma/owl-dma.c:244:6: error: variable 'regval' set but not used [-Werror,-Wunused-but-set-variable]
>   244 |         u32 regval;
>       |             ^
> drivers/dma/owl-dma.c:268:6: error: variable 'regval' set but not used [-Werror,-Wunused-but-set-variable]
>   268 |         u32 regval;
>       |             ^
> 
> Change these to what was most likely intended.
> 

Wow... Thanks for spotting. Well thanks to Clang also ;)

> Fixes: 47e20577c24d ("dmaengine: Add Actions Semi Owl family S900 DMA driver")
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>

Cc: stable at vger.kernel.org # 4.19

Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam at linaro.org>

- Mani

> ---
>  drivers/dma/owl-dma.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/dma/owl-dma.c b/drivers/dma/owl-dma.c
> index 4e76c4ec2d39..e001f4f7aa64 100644
> --- a/drivers/dma/owl-dma.c
> +++ b/drivers/dma/owl-dma.c
> @@ -250,7 +250,7 @@ static void pchan_update(struct owl_dma_pchan *pchan, u32 reg,
>  	else
>  		regval &= ~val;
>  
> -	writel(val, pchan->base + reg);
> +	writel(regval, pchan->base + reg);
>  }
>  
>  static void pchan_writel(struct owl_dma_pchan *pchan, u32 reg, u32 data)
> @@ -274,7 +274,7 @@ static void dma_update(struct owl_dma *od, u32 reg, u32 val, bool state)
>  	else
>  		regval &= ~val;
>  
> -	writel(val, od->base + reg);
> +	writel(regval, od->base + reg);
>  }
>  
>  static void dma_writel(struct owl_dma *od, u32 reg, u32 data)
> -- 
> 2.39.2
> 

-- 
மணிவண்ணன் சதாசிவம்



More information about the linux-arm-kernel mailing list