2018-07-24 13:45:14

by Hanna Hawa

[permalink] [raw]
Subject: [PATCH 1/1] dmaengine: mv_xor_v2: use {lower,upper}_32_bits to configure HW descriptor address

From: Hanna Hawa <[email protected]>

>> drivers/dma/mv_xor_v2.c:647:36: sparse: constant 0xFFFF00000000 is so big it is long
include/linux/device.h:678:13: sparse: undefined identifier '__builtin_mul_overflow'
include/linux/device.h:678:13: sparse: call with no type!

Use lower_32_bits and upper_32_bits to set the hw_desq address, instead of
using constant.

Signed-off-by: Hanna Hawa <[email protected]>
---
drivers/dma/mv_xor_v2.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/dma/mv_xor_v2.c b/drivers/dma/mv_xor_v2.c
index d41d916..8dc0aa4 100644
--- a/drivers/dma/mv_xor_v2.c
+++ b/drivers/dma/mv_xor_v2.c
@@ -642,9 +642,9 @@ static int mv_xor_v2_descq_init(struct mv_xor_v2_device *xor_dev)
xor_dev->dma_base + MV_XOR_V2_DMA_DESQ_SIZE_OFF);

/* write the DESQ address to the DMA enngine*/
- writel(xor_dev->hw_desq & 0xFFFFFFFF,
+ writel(lower_32_bits(xor_dev->hw_desq),
xor_dev->dma_base + MV_XOR_V2_DMA_DESQ_BALR_OFF);
- writel((xor_dev->hw_desq & 0xFFFF00000000) >> 32,
+ writel(upper_32_bits(xor_dev->hw_desq),
xor_dev->dma_base + MV_XOR_V2_DMA_DESQ_BAHR_OFF);

/*
--
1.9.1



2018-07-25 12:18:27

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH 1/1] dmaengine: mv_xor_v2: use {lower,upper}_32_bits to configure HW descriptor address

On 24-07-18, 16:40, [email protected] wrote:
> From: Hanna Hawa <[email protected]>
>
> >> drivers/dma/mv_xor_v2.c:647:36: sparse: constant 0xFFFF00000000 is so big it is long
> include/linux/device.h:678:13: sparse: undefined identifier '__builtin_mul_overflow'
> include/linux/device.h:678:13: sparse: call with no type!
>
> Use lower_32_bits and upper_32_bits to set the hw_desq address, instead of
> using constant.

Applied after adding reported-by, thanks.

You should always give credit to error reports

--
~Vinod