Hi Zhao, kernel test robot noticed the following build warnings: [auto build test WARNING on 61124f42dcaa30f58a8b47a2b69ddb80260677c7] url: https://github.com/intel-lab-lkp/linux/commits/Zhao-Qunqin/dt-bindings-EDAC-for-ls3a5000-memory-controller/20241018-094803 base: 61124f42dcaa30f58a8b47a2b69ddb80260677c7 patch link: https://lore.kernel.org/r/20241018014542.27283-3-zhaoqunqin%40loongson.cn patch subject: [PATCH v6 RESEND 2/2] EDAC: Add EDAC driver for loongson memory controller config: arm64-randconfig-r113-20241019 (https://download.01.org/0day-ci/archive/20241020/202410200949.GpnHSLfV-lkp@xxxxxxxxx/config) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce: (https://download.01.org/0day-ci/archive/20241020/202410200949.GpnHSLfV-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 | Reported-by: kernel test robot <lkp@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202410200949.GpnHSLfV-lkp@xxxxxxxxx/ sparse warnings: (new ones prefixed by >>) >> drivers/edac/loongson_edac.c:100:15: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [usertype] *vbase @@ got void [noderef] __iomem * @@ drivers/edac/loongson_edac.c:100:15: sparse: expected unsigned long long [usertype] *vbase drivers/edac/loongson_edac.c:100:15: sparse: got void [noderef] __iomem * vim +100 drivers/edac/loongson_edac.c 91 92 static int edac_probe(struct platform_device *pdev) 93 { 94 struct edac_mc_layer layers[2]; 95 struct loongson_edac_pvt *pvt; 96 struct mem_ctl_info *mci; 97 u64 *vbase; 98 int ret; 99 > 100 vbase = devm_platform_ioremap_resource(pdev, 0); 101 if (IS_ERR(vbase)) 102 return PTR_ERR(vbase); 103 104 /* allocate a new MC control structure */ 105 layers[0].type = EDAC_MC_LAYER_CHANNEL; 106 layers[0].size = 1; 107 layers[0].is_virt_csrow = false; 108 layers[1].type = EDAC_MC_LAYER_SLOT; 109 layers[1].size = 1; 110 layers[1].is_virt_csrow = true; 111 mci = edac_mc_alloc(0, ARRAY_SIZE(layers), layers, sizeof(*pvt)); 112 if (mci == NULL) 113 return -ENOMEM; 114 115 mci->mc_idx = edac_device_alloc_index(); 116 mci->mtype_cap = MEM_FLAG_RDDR4; 117 mci->edac_ctl_cap = EDAC_FLAG_NONE; 118 mci->edac_cap = EDAC_FLAG_NONE; 119 mci->mod_name = "loongson_edac.c"; 120 mci->ctl_name = "loongson_edac_ctl"; 121 mci->dev_name = "loongson_edac_dev"; 122 mci->ctl_page_to_phys = NULL; 123 mci->pdev = &pdev->dev; 124 mci->error_desc.grain = 8; 125 /* Set the function pointer to an actual operation function */ 126 mci->edac_check = edac_check; 127 128 pvt_init(mci, vbase); 129 get_dimm_config(mci); 130 131 ret = edac_mc_add_mc(mci); 132 if (ret) { 133 edac_dbg(0, "MC: failed edac_mc_add_mc()\n"); 134 edac_mc_free(mci); 135 return ret; 136 } 137 edac_op_state = EDAC_OPSTATE_POLL; 138 139 return 0; 140 } 141 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki