mirror of https://lore.kernel.org/lkml/
 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox