All of lore.kernel.org
 help / color / mirror / Atom feed
* 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.