tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master head: 4fafd96910add124586b549ad005dcd179de8a18 commit: 29814986b82e820ae9d3eb7474cdcf66605bd114 [4683/10357] remoteproc: qcom_q6v5_pas: add support for dtb co-firmware loading config: arm-randconfig-s033-20230204 (https://download.01.org/0day-ci/archive/20230205/202302050024.hJM9mOuJ-lkp@xxxxxxxxx/config) compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.4-39-gce1a6720-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=29814986b82e820ae9d3eb7474cdcf66605bd114 git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git git fetch --no-tags linux-next master git checkout 29814986b82e820ae9d3eb7474cdcf66605bd114 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=arm olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=arm SHELL=/bin/bash drivers/remoteproc/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot <lkp@xxxxxxxxx> sparse warnings: (new ones prefixed by >>) drivers/remoteproc/qcom_q6v5_pas.c:528:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *mem_region @@ got void [noderef] __iomem * @@ drivers/remoteproc/qcom_q6v5_pas.c:528:26: sparse: expected void *mem_region drivers/remoteproc/qcom_q6v5_pas.c:528:26: sparse: got void [noderef] __iomem * >> drivers/remoteproc/qcom_q6v5_pas.c:550:30: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *dtb_mem_region @@ got void [noderef] __iomem * @@ drivers/remoteproc/qcom_q6v5_pas.c:550:30: sparse: expected void *dtb_mem_region drivers/remoteproc/qcom_q6v5_pas.c:550:30: sparse: got void [noderef] __iomem * vim +550 drivers/remoteproc/qcom_q6v5_pas.c 508 509 static int adsp_alloc_memory_region(struct qcom_adsp *adsp) 510 { 511 struct device_node *node; 512 struct resource r; 513 int ret; 514 515 node = of_parse_phandle(adsp->dev->of_node, "memory-region", 0); 516 if (!node) { 517 dev_err(adsp->dev, "no memory-region specified\n"); 518 return -EINVAL; 519 } 520 521 ret = of_address_to_resource(node, 0, &r); 522 of_node_put(node); 523 if (ret) 524 return ret; 525 526 adsp->mem_phys = adsp->mem_reloc = r.start; 527 adsp->mem_size = resource_size(&r); 528 adsp->mem_region = devm_ioremap_wc(adsp->dev, adsp->mem_phys, adsp->mem_size); 529 if (!adsp->mem_region) { 530 dev_err(adsp->dev, "unable to map memory region: %pa+%zx\n", 531 &r.start, adsp->mem_size); 532 return -EBUSY; 533 } 534 535 if (!adsp->dtb_pas_id) 536 return 0; 537 538 node = of_parse_phandle(adsp->dev->of_node, "memory-region", 1); 539 if (!node) { 540 dev_err(adsp->dev, "no dtb memory-region specified\n"); 541 return -EINVAL; 542 } 543 544 ret = of_address_to_resource(node, 0, &r); 545 if (ret) 546 return ret; 547 548 adsp->dtb_mem_phys = adsp->dtb_mem_reloc = r.start; 549 adsp->dtb_mem_size = resource_size(&r); > 550 adsp->dtb_mem_region = devm_ioremap_wc(adsp->dev, adsp->dtb_mem_phys, adsp->dtb_mem_size); 551 if (!adsp->dtb_mem_region) { 552 dev_err(adsp->dev, "unable to map dtb memory region: %pa+%zx\n", 553 &r.start, adsp->dtb_mem_size); 554 return -EBUSY; 555 } 556 557 return 0; 558 } 559 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests