Re: [PATCH] dmaengine: owl: fix register access functions

From: Manivannan Sadhasivam
Date: Fri Mar 22 2024 - 10:32:40 EST


On Fri, Mar 22, 2024 at 02:21:07PM +0100, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@xxxxxxxx>
>
> 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@xxxxxxxx>

Cc: stable@xxxxxxxxxxxxxxx # 4.19

Reviewed-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxx>

- 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
>

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