[linux-next:master 9937/12137] 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

kernel test robot <[email protected]> Tue, 04 Aug 2026 16:45:45 +0800
Newsgroups dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   9a4cdc958dd79fc6c3b20b51a10debec6ca09fec
commit: 0b0379fcf9ce395bb51cadb6552ec3b1380436bb [9937/12137] remoteproc: qcom: pas: Map/unmap subsystem region before auth_and_reset
config: s390-randconfig-r061-20260804 (https://download.01.org/0day-ci/archive/20260804/[email protected]/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project bacfe2950f8218268fcc0a8765644ea0c15f0360)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260804/[email protected]/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
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

All errors (new ones prefixed by >>):

   In file included from drivers/firmware/qcom/qcom_scm.c:16:
>> 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_scm.c:16:
>> 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