On Mon, Aug 08, 2022 at 09:16:09AM +0800, Kefeng Wang wrote: > Fix sparse warnings, > drivers/remoteproc/st_remoteproc.c:98:12: sparse: sparse: incorrect type in assignment (different address spaces) @@ > expected void *va @@ got void [noderef] __iomem * @@ > drivers/remoteproc/st_remoteproc.c:98:12: sparse: expected void *va > drivers/remoteproc/st_remoteproc.c:98:12: sparse: got void [noderef] __iomem * > ... > drivers/remoteproc/st_remoteproc.c:114:20: sparse: expected void volatile [noderef] __iomem *io_addr > drivers/remoteproc/st_remoteproc.c:114:20: sparse: got void *va > > Add __iomem to io address space 'va' to fix it. > > Reported-by: kernel test robot <lkp@xxxxxxxxx> > Signed-off-by: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> > --- > note: the commit d803336abdbc "(ARM: mm: kill unused runtime hook arch_iounmap())" > won't introduce the warning, but lkp report issue to me many times, > let's fix it. > > drivers/remoteproc/rcar_rproc.c | 2 +- > include/linux/remoteproc.h | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > $ ./scripts/checkpatch.pl _PATCH_remoteproc_rcar_rproc_silince_address_space_sparse_warning.patch WARNING: A patch subject line should describe the change not the tool that found it #9: Subject: [PATCH] remoteproc: rcar_rproc: silince address space sparse warning total: 0 errors, 1 warnings, 16 lines checked NOTE: For some of the reported defects, checkpatch may be able to mechanically convert to the typical style using --fix or --fix-inplace. _PATCH_remoteproc_rcar_rproc_silince_address_space_sparse_warning.patch has style problems, please review. NOTE: If any of the errors are false positives, please report them to the maintainer, see CHECKPATCH in MAINTAINERS. > diff --git a/drivers/remoteproc/rcar_rproc.c b/drivers/remoteproc/rcar_rproc.c > index aa86154109c7..e3363a4cde0a 100644 > --- a/drivers/remoteproc/rcar_rproc.c > +++ b/drivers/remoteproc/rcar_rproc.c > @@ -22,7 +22,7 @@ static int rcar_rproc_mem_alloc(struct rproc *rproc, > struct rproc_mem_entry *mem) > { > struct device *dev = &rproc->dev; > - void *va; > + void __iomem *va; > > dev_dbg(dev, "map memory: %pa+%zx\n", &mem->dma, mem->len); > va = ioremap_wc(mem->dma, mem->len); > diff --git a/include/linux/remoteproc.h b/include/linux/remoteproc.h > index 7c943f0a2fc4..c0c950cf7d72 100644 > --- a/include/linux/remoteproc.h > +++ b/include/linux/remoteproc.h > @@ -330,7 +330,7 @@ struct rproc; > * @alloc: specific memory allocator function > */ > struct rproc_mem_entry { > - void *va; > + void __iomem *va; > bool is_iomem; > dma_addr_t dma; > size_t len; > -- > 2.35.3 >