include/linux/firmware/qcom/qcom_pas.h:29:22: error: call to undeclared function 'ioremap_prot'; ISO C99 and later do not support implicit function declarations
From: kernel test robot
Date: Thu Sep 10 2026 - 06:35:22 EST
Hi Mukesh,
FYI, the error/warning still remains.
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 50d05c7c76c96b90462f24debacca971d2e86713
commit: 0b0379fcf9ce395bb51cadb6552ec3b1380436bb remoteproc: qcom: pas: Map/unmap subsystem region before auth_and_reset
date: 6 weeks ago
config: s390-randconfig-r122-20260910 (https://download.01.org/0day-ci/archive/20260910/202609101812.rvVl2iE2-lkp@xxxxxxxxx/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project d3db069999553568848400c84cbf815c03f5470f)
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260910/202609101812.rvVl2iE2-lkp@xxxxxxxxx/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Fixes: 0b0379fcf9ce ("remoteproc: qcom: pas: Map/unmap subsystem region before auth_and_reset")
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202609101812.rvVl2iE2-lkp@xxxxxxxxx/
All errors (new ones prefixed by >>):
In file included from drivers/firmware/qcom/qcom_pas.c:9:
>> include/linux/firmware/qcom/qcom_pas.h:29:22: error: call to undeclared function 'ioremap_prot'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
29 | void __iomem *ptr = ioremap_wc(ctx->mem_phys, ctx->mem_size);
| ^
arch/s390/include/asm/io.h:36:2: note: expanded from macro 'ioremap_wc'
36 | ioremap_prot((addr), (size), pgprot_writecombine(PAGE_KERNEL))
| ^
arch/s390/include/asm/io.h:30:22: note: expanded from macro 'ioremap_prot'
30 | #define ioremap_prot ioremap_prot
| ^
In file included from drivers/firmware/qcom/qcom_pas.c:9:
>> include/linux/firmware/qcom/qcom_pas.h:29:16: error: incompatible integer to pointer conversion initializing 'void *' with an expression of type 'int' [-Wint-conversion]
29 | void __iomem *ptr = ioremap_wc(ctx->mem_phys, ctx->mem_size);
| ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2 errors generated.
vim +/ioremap_prot +29 include/linux/firmware/qcom/qcom_pas.h
26
27 static inline void __iomem *qcom_pas_ctx_map(struct qcom_pas_context *ctx)
28 {
> 29 void __iomem *ptr = ioremap_wc(ctx->mem_phys, ctx->mem_size);
30
31 if (!ptr)
32 dev_err(ctx->dev, "unable to map memory region: %pa+%zx\n",
33 &ctx->mem_phys, ctx->mem_size);
34 return ptr;
35 }
36
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki