drivers/gpu/drm/msm/dp/dp_display.c:1313:39: sparse: sparse: incompatible types in comparison expression (different address spaces):
kernel test robot <[email protected]>
| Newsgroups | dev.linux.lists.oe-kbuild-all,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 94515f3a7d4256a5062176b7d6ed0471938cd51a commit: 603fc0fc30bf69e78a7a5febdb1431bd49d87f22 drm/msm/dp: drop the msm_dp_catalog module date: 1 year ago config: arm64-randconfig-r122-20260718 (https://download.01.org/0day-ci/archive/20260718/[email protected]/config) compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 5c0dfced1adc55429e32b1db08570abd3a219d85) sparse: v0.6.5-rc1 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260718/[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 | Fixes: 603fc0fc30bf ("drm/msm/dp: drop the msm_dp_catalog module") | Reported-by: kernel test robot <[email protected]> | Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/ sparse warnings: (new ones prefixed by >>) >> drivers/gpu/drm/msm/dp/dp_display.c:1313:39: sparse: sparse: incompatible types in comparison expression (different address spaces): drivers/gpu/drm/msm/dp/dp_display.c:1313:39: sparse: void [noderef] __iomem * drivers/gpu/drm/msm/dp/dp_display.c:1313:39: sparse: void * vim +1313 drivers/gpu/drm/msm/dp/dp_display.c 1302 1303 static int msm_dp_display_get_io(struct msm_dp_display_private *display) 1304 { 1305 struct platform_device *pdev = display->msm_dp_display.pdev; 1306 1307 display->ahb_base = msm_dp_ioremap(pdev, 0, &display->ahb_len); 1308 if (IS_ERR(display->ahb_base)) 1309 return PTR_ERR(display->ahb_base); 1310 1311 display->aux_base = msm_dp_ioremap(pdev, 1, &display->aux_len); 1312 if (IS_ERR(display->aux_base)) { > 1313 if (display->aux_base != ERR_PTR(-EINVAL)) { 1314 DRM_ERROR("unable to remap aux region: %pe\n", display->aux_base); 1315 return PTR_ERR(display->aux_base); 1316 } 1317 1318 /* 1319 * The initial binding had a single reg, but in order to 1320 * support variation in the sub-region sizes this was split. 1321 * msm_dp_ioremap() will fail with -EINVAL here if only a single 1322 * reg is specified, so fill in the sub-region offsets and 1323 * lengths based on this single region. 1324 */ 1325 if (display->ahb_len < DP_DEFAULT_P0_OFFSET + DP_DEFAULT_P0_SIZE) { 1326 DRM_ERROR("legacy memory region not large enough\n"); 1327 return -EINVAL; 1328 } 1329 1330 display->ahb_len = DP_DEFAULT_AHB_SIZE; 1331 display->aux_base = display->ahb_base + DP_DEFAULT_AUX_OFFSET; 1332 display->aux_len = DP_DEFAULT_AUX_SIZE; 1333 display->link_base = display->ahb_base + DP_DEFAULT_LINK_OFFSET; 1334 display->link_len = DP_DEFAULT_LINK_SIZE; 1335 display->p0_base = display->ahb_base + DP_DEFAULT_P0_OFFSET; 1336 display->p0_len = DP_DEFAULT_P0_SIZE; 1337 1338 return 0; 1339 } 1340 1341 display->link_base = msm_dp_ioremap(pdev, 2, &display->link_len); 1342 if (IS_ERR(display->link_base)) { 1343 DRM_ERROR("unable to remap link region: %pe\n", display->link_base); 1344 return PTR_ERR(display->link_base); 1345 } 1346 1347 display->p0_base = msm_dp_ioremap(pdev, 3, &display->p0_len); 1348 if (IS_ERR(display->p0_base)) { 1349 DRM_ERROR("unable to remap p0 region: %pe\n", display->p0_base); 1350 return PTR_ERR(display->p0_base); 1351 } 1352 1353 return 0; 1354 } 1355 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki