* drivers/gpu/drm/gma500/opregion.c:324:20: sparse: sparse: incorrect type in argument 1 (different address spaces)
@ 2026-03-24 2:57 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-03-24 2:57 UTC (permalink / raw)
To: Kees Cook; +Cc: oe-kbuild-all, linux-kernel, Nathan Chancellor
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: c369299895a591d96745d6492d4888259b004a9e
commit: d70da12453ac3797e0c54884305ccc894e8c817b hardening: Enable i386 FORTIFY_SOURCE on Clang 16+
date: 1 year ago
config: i386-randconfig-062-20260324 (https://download.01.org/0day-ci/archive/20260324/202603241049.fAX6rSes-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260324/202603241049.fAX6rSes-lkp@intel.com/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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202603241049.fAX6rSes-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
drivers/gpu/drm/gma500/opregion.c:294:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got struct opregion_header *header @@
drivers/gpu/drm/gma500/opregion.c:294:25: sparse: expected void volatile [noderef] __iomem *addr
drivers/gpu/drm/gma500/opregion.c:294:25: sparse: got struct opregion_header *header
>> drivers/gpu/drm/gma500/opregion.c:324:20: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const *const p @@ got void [noderef] __iomem *[assigned] base @@
drivers/gpu/drm/gma500/opregion.c:324:20: sparse: expected void const *const p
drivers/gpu/drm/gma500/opregion.c:324:20: sparse: got void [noderef] __iomem *[assigned] base
drivers/gpu/drm/gma500/opregion.c:330:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct opregion_header *header @@ got void [noderef] __iomem *[assigned] base @@
drivers/gpu/drm/gma500/opregion.c:330:26: sparse: expected struct opregion_header *header
drivers/gpu/drm/gma500/opregion.c:330:26: sparse: got void [noderef] __iomem *[assigned] base
drivers/gpu/drm/gma500/opregion.c:331:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *vbt @@ got void [noderef] __iomem * @@
drivers/gpu/drm/gma500/opregion.c:331:23: sparse: expected void *vbt
drivers/gpu/drm/gma500/opregion.c:331:23: sparse: got void [noderef] __iomem *
drivers/gpu/drm/gma500/opregion.c:338:32: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct opregion_acpi *acpi @@ got void [noderef] __iomem * @@
drivers/gpu/drm/gma500/opregion.c:338:32: sparse: expected struct opregion_acpi *acpi
drivers/gpu/drm/gma500/opregion.c:338:32: sparse: got void [noderef] __iomem *
drivers/gpu/drm/gma500/opregion.c:343:32: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct opregion_asle *asle @@ got void [noderef] __iomem * @@
drivers/gpu/drm/gma500/opregion.c:343:32: sparse: expected struct opregion_asle *asle
drivers/gpu/drm/gma500/opregion.c:343:32: sparse: got void [noderef] __iomem *
vim +324 drivers/gpu/drm/gma500/opregion.c
d839ede47a56ff5 Alan Cox 2012-05-03 275
d839ede47a56ff5 Alan Cox 2012-05-03 276 void psb_intel_opregion_fini(struct drm_device *dev)
d839ede47a56ff5 Alan Cox 2012-05-03 277 {
f71635e893c3832 Thomas Zimmermann 2021-09-20 278 struct drm_psb_private *dev_priv = to_drm_psb_private(dev);
d839ede47a56ff5 Alan Cox 2012-05-03 279 struct psb_intel_opregion *opregion = &dev_priv->opregion;
d839ede47a56ff5 Alan Cox 2012-05-03 280
d839ede47a56ff5 Alan Cox 2012-05-03 281 if (!opregion->header)
d839ede47a56ff5 Alan Cox 2012-05-03 282 return;
d839ede47a56ff5 Alan Cox 2012-05-03 283
d839ede47a56ff5 Alan Cox 2012-05-03 284 if (opregion->acpi) {
d839ede47a56ff5 Alan Cox 2012-05-03 285 opregion->acpi->drdy = 0;
d839ede47a56ff5 Alan Cox 2012-05-03 286
d839ede47a56ff5 Alan Cox 2012-05-03 287 system_opregion = NULL;
d839ede47a56ff5 Alan Cox 2012-05-03 288 unregister_acpi_notifier(&psb_intel_opregion_notifier);
d839ede47a56ff5 Alan Cox 2012-05-03 289 }
d839ede47a56ff5 Alan Cox 2012-05-03 290
778e26dee5e6b3b Patrik Jakobsson 2014-03-11 291 cancel_work_sync(&opregion->asle_work);
778e26dee5e6b3b Patrik Jakobsson 2014-03-11 292
d839ede47a56ff5 Alan Cox 2012-05-03 293 /* just clear all opregion memory pointers now */
d839ede47a56ff5 Alan Cox 2012-05-03 @294 iounmap(opregion->header);
d839ede47a56ff5 Alan Cox 2012-05-03 295 opregion->header = NULL;
d839ede47a56ff5 Alan Cox 2012-05-03 296 opregion->acpi = NULL;
d839ede47a56ff5 Alan Cox 2012-05-03 297 opregion->swsci = NULL;
d839ede47a56ff5 Alan Cox 2012-05-03 298 opregion->asle = NULL;
d839ede47a56ff5 Alan Cox 2012-05-03 299 opregion->vbt = NULL;
d839ede47a56ff5 Alan Cox 2012-05-03 300 }
d839ede47a56ff5 Alan Cox 2012-05-03 301
d839ede47a56ff5 Alan Cox 2012-05-03 302 int psb_intel_opregion_setup(struct drm_device *dev)
d839ede47a56ff5 Alan Cox 2012-05-03 303 {
f71635e893c3832 Thomas Zimmermann 2021-09-20 304 struct drm_psb_private *dev_priv = to_drm_psb_private(dev);
a2c68495b579862 Thomas Zimmermann 2020-12-01 305 struct pci_dev *pdev = to_pci_dev(dev->dev);
d839ede47a56ff5 Alan Cox 2012-05-03 306 struct psb_intel_opregion *opregion = &dev_priv->opregion;
d839ede47a56ff5 Alan Cox 2012-05-03 307 u32 opregion_phy, mboxes;
d64363c7557959c Kirill A. Shutemov 2012-05-03 308 void __iomem *base;
d839ede47a56ff5 Alan Cox 2012-05-03 309 int err = 0;
d839ede47a56ff5 Alan Cox 2012-05-03 310
a2c68495b579862 Thomas Zimmermann 2020-12-01 311 pci_read_config_dword(pdev, PCI_ASLS, &opregion_phy);
d839ede47a56ff5 Alan Cox 2012-05-03 312 if (opregion_phy == 0) {
d839ede47a56ff5 Alan Cox 2012-05-03 313 DRM_DEBUG_DRIVER("ACPI Opregion not supported\n");
d839ede47a56ff5 Alan Cox 2012-05-03 314 return -ENOTSUPP;
d839ede47a56ff5 Alan Cox 2012-05-03 315 }
778e26dee5e6b3b Patrik Jakobsson 2014-03-11 316
778e26dee5e6b3b Patrik Jakobsson 2014-03-11 317 INIT_WORK(&opregion->asle_work, psb_intel_opregion_asle_work);
778e26dee5e6b3b Patrik Jakobsson 2014-03-11 318
d839ede47a56ff5 Alan Cox 2012-05-03 319 DRM_DEBUG("OpRegion detected at 0x%8x\n", opregion_phy);
d839ede47a56ff5 Alan Cox 2012-05-03 320 base = acpi_os_ioremap(opregion_phy, 8*1024);
d839ede47a56ff5 Alan Cox 2012-05-03 321 if (!base)
d839ede47a56ff5 Alan Cox 2012-05-03 322 return -ENOMEM;
d839ede47a56ff5 Alan Cox 2012-05-03 323
d839ede47a56ff5 Alan Cox 2012-05-03 @324 if (memcmp(base, OPREGION_SIGNATURE, 16)) {
d839ede47a56ff5 Alan Cox 2012-05-03 325 DRM_DEBUG_DRIVER("opregion signature mismatch\n");
d839ede47a56ff5 Alan Cox 2012-05-03 326 err = -EINVAL;
d839ede47a56ff5 Alan Cox 2012-05-03 327 goto err_out;
d839ede47a56ff5 Alan Cox 2012-05-03 328 }
d839ede47a56ff5 Alan Cox 2012-05-03 329
d839ede47a56ff5 Alan Cox 2012-05-03 330 opregion->header = base;
d839ede47a56ff5 Alan Cox 2012-05-03 331 opregion->vbt = base + OPREGION_VBT_OFFSET;
d839ede47a56ff5 Alan Cox 2012-05-03 332
d839ede47a56ff5 Alan Cox 2012-05-03 333 opregion->lid_state = base + ACPI_CLID;
d839ede47a56ff5 Alan Cox 2012-05-03 334
d839ede47a56ff5 Alan Cox 2012-05-03 335 mboxes = opregion->header->mboxes;
d839ede47a56ff5 Alan Cox 2012-05-03 336 if (mboxes & MBOX_ACPI) {
d839ede47a56ff5 Alan Cox 2012-05-03 337 DRM_DEBUG_DRIVER("Public ACPI methods supported\n");
d839ede47a56ff5 Alan Cox 2012-05-03 338 opregion->acpi = base + OPREGION_ACPI_OFFSET;
d839ede47a56ff5 Alan Cox 2012-05-03 339 }
d839ede47a56ff5 Alan Cox 2012-05-03 340
d839ede47a56ff5 Alan Cox 2012-05-03 341 if (mboxes & MBOX_ASLE) {
d839ede47a56ff5 Alan Cox 2012-05-03 342 DRM_DEBUG_DRIVER("ASLE supported\n");
d839ede47a56ff5 Alan Cox 2012-05-03 343 opregion->asle = base + OPREGION_ASLE_OFFSET;
d839ede47a56ff5 Alan Cox 2012-05-03 344 }
d839ede47a56ff5 Alan Cox 2012-05-03 345
d839ede47a56ff5 Alan Cox 2012-05-03 346 return 0;
d839ede47a56ff5 Alan Cox 2012-05-03 347
d839ede47a56ff5 Alan Cox 2012-05-03 348 err_out:
d839ede47a56ff5 Alan Cox 2012-05-03 349 iounmap(base);
d839ede47a56ff5 Alan Cox 2012-05-03 350 return err;
d839ede47a56ff5 Alan Cox 2012-05-03 351 }
d839ede47a56ff5 Alan Cox 2012-05-03 352
:::::: The code at line 324 was first introduced by commit
:::::: d839ede47a56ff5f316c88391818488f8e5913af gma500: opregion and ACPI
:::::: TO: Alan Cox <alan@linux.intel.com>
:::::: CC: Dave Airlie <airlied@redhat.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-03-24 2:57 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-24 2:57 drivers/gpu/drm/gma500/opregion.c:324:20: sparse: sparse: incorrect type in argument 1 (different address spaces) kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.