2022-08-15 13:31:30

by Shengjiu Wang

[permalink] [raw]
Subject: [PATCH] remoteproc: imx_dsp_rproc: fix argument 2 of rproc_mem_entry_init

There are sparse warning:
drivers/remoteproc/imx_dsp_rproc.c:602:49: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *va @@ got void [noderef] __iomem *[assigned] cpu_addr @@
drivers/remoteproc/imx_dsp_rproc.c:602:49: sparse: expected void *va
drivers/remoteproc/imx_dsp_rproc.c:602:49: sparse: got void [noderef] __iomem *[assigned] cpu_addr
drivers/remoteproc/imx_dsp_rproc.c:638:49: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *va @@ got void [noderef] __iomem *[assigned] cpu_addr @@
drivers/remoteproc/imx_dsp_rproc.c:638:49: sparse: expected void *va
drivers/remoteproc/imx_dsp_rproc.c:638:49: sparse: got void [noderef] __iomem *[assigned] cpu_addr

Fixes: ec0e5549f358 ("remoteproc: imx_dsp_rproc: Add remoteproc driver for DSP on i.MX")
Reported-by: kernel test robot <[email protected]>
Signed-off-by: Shengjiu Wang <[email protected]>
---
drivers/remoteproc/imx_dsp_rproc.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/remoteproc/imx_dsp_rproc.c b/drivers/remoteproc/imx_dsp_rproc.c
index ca0817f8e41e..899aa8dd12f0 100644
--- a/drivers/remoteproc/imx_dsp_rproc.c
+++ b/drivers/remoteproc/imx_dsp_rproc.c
@@ -599,7 +599,7 @@ static int imx_dsp_rproc_add_carveout(struct imx_dsp_rproc *priv)
}

/* Register memory region */
- mem = rproc_mem_entry_init(dev, cpu_addr, (dma_addr_t)att->sa,
+ mem = rproc_mem_entry_init(dev, (void __force *)cpu_addr, (dma_addr_t)att->sa,
att->size, da, NULL, NULL, "dsp_mem");

if (mem)
@@ -635,7 +635,7 @@ static int imx_dsp_rproc_add_carveout(struct imx_dsp_rproc *priv)
}

/* Register memory region */
- mem = rproc_mem_entry_init(dev, cpu_addr, (dma_addr_t)rmem->base,
+ mem = rproc_mem_entry_init(dev, (void __force *)cpu_addr, (dma_addr_t)rmem->base,
rmem->size, da, NULL, NULL, it.node->name);

if (mem)
--
2.34.1


2022-08-15 15:06:44

by Mukesh Ojha

[permalink] [raw]
Subject: Re: [PATCH] remoteproc: imx_dsp_rproc: fix argument 2 of rproc_mem_entry_init

Hi,

On 8/15/2022 6:13 PM, Shengjiu Wang wrote:
> There are sparse warning:
> drivers/remoteproc/imx_dsp_rproc.c:602:49: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *va @@ got void [noderef] __iomem *[assigned] cpu_addr @@
> drivers/remoteproc/imx_dsp_rproc.c:602:49: sparse: expected void *va
> drivers/remoteproc/imx_dsp_rproc.c:602:49: sparse: got void [noderef] __iomem *[assigned] cpu_addr
> drivers/remoteproc/imx_dsp_rproc.c:638:49: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *va @@ got void [noderef] __iomem *[assigned] cpu_addr @@
> drivers/remoteproc/imx_dsp_rproc.c:638:49: sparse: expected void *va
> drivers/remoteproc/imx_dsp_rproc.c:638:49: sparse: got void [noderef] __iomem *[assigned] cpu_addr
>
> Fixes: ec0e5549f358 ("remoteproc: imx_dsp_rproc: Add remoteproc driver for DSP on i.MX")
> Reported-by: kernel test robot <[email protected]>
> Signed-off-by: Shengjiu Wang <[email protected]>
> ---
> drivers/remoteproc/imx_dsp_rproc.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/remoteproc/imx_dsp_rproc.c b/drivers/remoteproc/imx_dsp_rproc.c
> index ca0817f8e41e..899aa8dd12f0 100644
> --- a/drivers/remoteproc/imx_dsp_rproc.c
> +++ b/drivers/remoteproc/imx_dsp_rproc.c
> @@ -599,7 +599,7 @@ static int imx_dsp_rproc_add_carveout(struct imx_dsp_rproc *priv)
> }
>
> /* Register memory region */
> - mem = rproc_mem_entry_init(dev, cpu_addr, (dma_addr_t)att->sa,
> + mem = rproc_mem_entry_init(dev, (void __force *)cpu_addr, (dma_addr_t)att->sa,
> att->size, da, NULL, NULL, "dsp_mem");
>
> if (mem)
> @@ -635,7 +635,7 @@ static int imx_dsp_rproc_add_carveout(struct imx_dsp_rproc *priv)
> }
>
> /* Register memory region */
> - mem = rproc_mem_entry_init(dev, cpu_addr, (dma_addr_t)rmem->base,
> + mem = rproc_mem_entry_init(dev, (void __force *)cpu_addr, (dma_addr_t)rmem->base,
> rmem->size, da, NULL, NULL, it.node->name);
>
> if (mem)

Acked-by: Mukesh Ojha <[email protected]>

-Mukesh

2022-08-23 20:38:59

by Mathieu Poirier

[permalink] [raw]
Subject: Re: [PATCH] remoteproc: imx_dsp_rproc: fix argument 2 of rproc_mem_entry_init

On Mon, Aug 15, 2022 at 08:43:18PM +0800, Shengjiu Wang wrote:
> There are sparse warning:
> drivers/remoteproc/imx_dsp_rproc.c:602:49: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *va @@ got void [noderef] __iomem *[assigned] cpu_addr @@
> drivers/remoteproc/imx_dsp_rproc.c:602:49: sparse: expected void *va
> drivers/remoteproc/imx_dsp_rproc.c:602:49: sparse: got void [noderef] __iomem *[assigned] cpu_addr
> drivers/remoteproc/imx_dsp_rproc.c:638:49: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void *va @@ got void [noderef] __iomem *[assigned] cpu_addr @@
> drivers/remoteproc/imx_dsp_rproc.c:638:49: sparse: expected void *va
> drivers/remoteproc/imx_dsp_rproc.c:638:49: sparse: got void [noderef] __iomem *[assigned] cpu_addr
>
> Fixes: ec0e5549f358 ("remoteproc: imx_dsp_rproc: Add remoteproc driver for DSP on i.MX")
> Reported-by: kernel test robot <[email protected]>
> Signed-off-by: Shengjiu Wang <[email protected]>
> ---
> drivers/remoteproc/imx_dsp_rproc.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/remoteproc/imx_dsp_rproc.c b/drivers/remoteproc/imx_dsp_rproc.c
> index ca0817f8e41e..899aa8dd12f0 100644
> --- a/drivers/remoteproc/imx_dsp_rproc.c
> +++ b/drivers/remoteproc/imx_dsp_rproc.c
> @@ -599,7 +599,7 @@ static int imx_dsp_rproc_add_carveout(struct imx_dsp_rproc *priv)
> }
>
> /* Register memory region */
> - mem = rproc_mem_entry_init(dev, cpu_addr, (dma_addr_t)att->sa,
> + mem = rproc_mem_entry_init(dev, (void __force *)cpu_addr, (dma_addr_t)att->sa,
> att->size, da, NULL, NULL, "dsp_mem");
>
> if (mem)
> @@ -635,7 +635,7 @@ static int imx_dsp_rproc_add_carveout(struct imx_dsp_rproc *priv)
> }
>
> /* Register memory region */
> - mem = rproc_mem_entry_init(dev, cpu_addr, (dma_addr_t)rmem->base,
> + mem = rproc_mem_entry_init(dev, (void __force *)cpu_addr, (dma_addr_t)rmem->base,
> rmem->size, da, NULL, NULL, it.node->name);

Applied.

Thanks,
Mathieu

>
> if (mem)
> --
> 2.34.1
>