All of lore.kernel.org
 help / color / mirror / Atom feed
* [esmil:vsrv 4/7] drivers/net/ethernet/vlsi/vlsi-mac.c:202:9: sparse: sparse: incorrect type in argument 2 (different address spaces)
@ 2025-08-07 14:00 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-08-07 14:00 UTC (permalink / raw)
  To: Emil Renner Berthing; +Cc: oe-kbuild-all

tree:   https://github.com/esmil/linux vsrv
head:   58e54ef4640355003af8e733da39cafa53ad38a9
commit: 17e17550692a1c7e7c8b2c8ddc155ccf02676e65 [4/7] net: vlsi: Add VLSI ethernet driver
config: sparc-randconfig-r121-20250807 (https://download.01.org/0day-ci/archive/20250807/202508072138.6KPhLRF4-lkp@intel.com/config)
compiler: sparc64-linux-gcc (GCC) 15.1.0
reproduce: (https://download.01.org/0day-ci/archive/20250807/202508072138.6KPhLRF4-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/202508072138.6KPhLRF4-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
>> drivers/net/ethernet/vlsi/vlsi-mac.c:202:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const * @@     got void [noderef] __iomem * @@
   drivers/net/ethernet/vlsi/vlsi-mac.c:202:9: sparse:     expected void const *
   drivers/net/ethernet/vlsi/vlsi-mac.c:202:9: sparse:     got void [noderef] __iomem *
>> drivers/net/ethernet/vlsi/vlsi-mac.c:214:38: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/net/ethernet/vlsi/vlsi-mac.c:554:50: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int volatile [usertype] *rxbase @@     got void [noderef] __iomem * @@
   drivers/net/ethernet/vlsi/vlsi-mac.c:554:50: sparse:     expected unsigned int volatile [usertype] *rxbase
   drivers/net/ethernet/vlsi/vlsi-mac.c:554:50: sparse:     got void [noderef] __iomem *
>> drivers/net/ethernet/vlsi/vlsi-mac.c:805:49: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int volatile [usertype] *txmem @@     got void [noderef] __iomem * @@
   drivers/net/ethernet/vlsi/vlsi-mac.c:805:49: sparse:     expected unsigned int volatile [usertype] *txmem
   drivers/net/ethernet/vlsi/vlsi-mac.c:805:49: sparse:     got void [noderef] __iomem *

vim +202 drivers/net/ethernet/vlsi/vlsi-mac.c

   192	
   193		struct device *dev = kobj_to_dev(kobj);
   194		struct vsrves01_private *db = dev_get_drvdata(dev);
   195	
   196		if (offset > 512)
   197			return -1;
   198	
   199		if (offset + size > 512)
   200			size = 512-offset;
   201	
 > 202		memcpy(buf, db->membase + offset, size);
   203	
   204		return size;
   205	}
   206	
   207	static ssize_t vsrves01_sysfs_set_regmem(struct file *file, struct kobject *kobj,
   208						 const struct bin_attribute *attr,
   209						 char *buf, loff_t offset,
   210						 size_t size)
   211	{
   212		struct device *dev = kobj_to_dev(kobj);
   213		struct vsrves01_private *db = dev_get_drvdata(dev);
 > 214		volatile uint32_t *ethmem = (void *)db->membase;
   215		int ret = 0;
   216	
   217		if (offset > 512)
   218			return -1;
   219	
   220		if (offset + size > 512)
   221			size = 512-offset;
   222	
   223		while (size > 0) {
   224			uint32_t value;
   225			uint32_t addr = (unsigned)offset >> 2;
   226			uint32_t oldvalue = ethmem[addr];
   227	
   228			memcpy(&value, buf, 4);
   229	
   230			//dprintk("RegMEM Write %d bytes, at 0x%x (0x%x) %x => %x\n", size, (unsigned)offset, addr, oldvalue, value);
   231			if (addr == 0 && ((oldvalue&~0x81) == (value&~0x81))) {
   232				ethmem[0] = value;
   233				ret += 4;
   234			} else if (addr >= 103 && addr < 120) {
   235				ethmem[addr] = value;
   236				ret += 4;
   237			} else {
   238				return ret;
   239			}
   240	
   241			buf += 4;
   242			offset +=4;
   243			size -=4;
   244		}
   245	
   246		return ret;
   247	}
   248	

-- 
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:[~2025-08-07 14:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-07 14:00 [esmil:vsrv 4/7] drivers/net/ethernet/vlsi/vlsi-mac.c:202:9: sparse: sparse: incorrect type in argument 2 (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.