tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   bcf876870b95592b52519ed4aafcf9d95999bc9c
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to 
define address spaces
date:   7 weeks ago
config: riscv-randconfig-s031-20200803 (attached as .config)
compiler: riscv32-linux-gcc (GCC) 9.3.0
reproduce:
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.2-117-g8c7aee71-dirty
        git checkout 670d0a4b10704667765f7d18f7592993d02783aa
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 
CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=riscv 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>


sparse warnings: (new ones prefixed by >>)

>> drivers/net/hamradio/baycom_ser_hdx.c:371:20: sparse: sparse: cast removes 
>> address space '__iomem' of expression
>> drivers/net/hamradio/baycom_ser_hdx.c:371:20: sparse: sparse: incorrect type 
>> in argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> drivers/net/hamradio/baycom_ser_hdx.c:371:20: sparse:     expected void 
>> const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:371:20: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:377:25: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:377:25: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:377:25: sparse:     expected void 
const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:377:25: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:381:25: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:381:25: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:381:25: sparse:     expected void 
const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:381:25: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:394:25: sparse: sparse: cast removes 
address space '__iomem' of expression
>> drivers/net/hamradio/baycom_ser_hdx.c:394:25: sparse: sparse: incorrect type 
>> in argument 2 (different address spaces) @@     expected void volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> drivers/net/hamradio/baycom_ser_hdx.c:394:25: sparse:     expected void 
>> volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:394:25: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:398:25: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:398:25: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:398:25: sparse:     expected void 
const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:398:25: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:401:23: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:401:23: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:401:23: sparse:     expected void 
const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:401:23: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:430:14: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:430:14: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:430:14: sparse:     expected void 
const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:430:14: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:431:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:431:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:431:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:431:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:432:14: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:432:14: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:432:14: sparse:     expected void 
const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:432:14: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:433:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:433:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:433:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:433:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:434:14: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:434:14: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:434:14: sparse:     expected void 
const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:434:14: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:435:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:435:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:435:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:435:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:436:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:436:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:436:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:436:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:439:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:439:9: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:439:9: sparse:     expected void const 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:439:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:440:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:440:9: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:440:9: sparse:     expected void const 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:440:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:441:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:441:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:441:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:441:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:442:23: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:442:23: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:442:23: sparse:     expected void 
const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:442:23: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:444:17: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:444:17: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:444:17: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:444:17: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:445:22: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:445:22: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:445:22: sparse:     expected void 
const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:445:22: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:446:17: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:446:17: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:446:17: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:446:17: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:447:22: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:447:22: sparse: sparse: incorrect type 
in argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:447:22: sparse:     expected void 
const volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:447:22: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:474:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:474:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:474:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:474:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:475:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:475:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:475:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:475:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:476:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:476:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:476:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:476:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:485:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:485:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:485:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:485:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:508:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:508:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:508:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:508:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:509:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:509:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:509:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:509:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:193:9: sparse: sparse: dubious: x | !y
   drivers/net/hamradio/baycom_ser_hdx.c:193:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:193:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/hamradio/baycom_ser_hdx.c:193:9: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/net/hamradio/baycom_ser_hdx.c:193:9: sparse:     got void *
   drivers/net/hamradio/baycom_ser_hdx.c:158:9: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/net/hamradio/baycom_ser_hdx.c:158:9: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
--
   drivers/hwmon/w83627ehf.c: note: in included file (through 
arch/riscv/include/asm/io.h, include/linux/io.h):
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
   include/asm-generic/io.h:556:16: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:556:16: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__iomem *addr @@     got void * @@
   include/asm-generic/io.h:556:16: sparse:     expected void const volatile 
[noderef] __iomem *addr
   include/asm-generic/io.h:556:16: sparse:     got void *
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
   include/asm-generic/io.h:556:16: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:556:16: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__iomem *addr @@     got void * @@
   include/asm-generic/io.h:556:16: sparse:     expected void const volatile 
[noderef] __iomem *addr
   include/asm-generic/io.h:556:16: sparse:     got void *
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:104:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:104:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: cast removes address space 
'__iomem' of expression
>> drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:105:16: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:105:16: sparse:     got void *
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:104:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:104:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: cast removes address space 
'__iomem' of expression
>> drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:105:16: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:105:16: sparse:     got void *
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:104:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:104:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: cast removes address space 
'__iomem' of expression
>> drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:105:16: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:105:16: sparse:     got void *
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:104:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:104:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: cast removes address space 
'__iomem' of expression
>> drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:105:16: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:105:16: sparse:     got void *
   drivers/hwmon/w83627ehf.c:121:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:121:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:121:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:121:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:122:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:122:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:122:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:122:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:111:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:111:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:111:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:111:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:112:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:112:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:112:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:112:9: sparse:     got void *
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:104:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:104:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: cast removes address space 
'__iomem' of expression
>> drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:105:16: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:105:16: sparse:     got void *
   drivers/hwmon/w83627ehf.c:111:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:111:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:111:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:111:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:112:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:112:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:112:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:112:9: sparse:     got void *
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:104:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:104:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: cast removes address space 
'__iomem' of expression
>> drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:105:16: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:105:16: sparse:     got void *
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:104:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:104:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: cast removes address space 
'__iomem' of expression
>> drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:105:16: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:105:16: sparse:     got void *
   drivers/hwmon/w83627ehf.c:97:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:97:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:97:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   drivers/hwmon/w83627ehf.c:97:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:98:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:98:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:98:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   drivers/hwmon/w83627ehf.c:98:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:97:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:97:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:97:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   drivers/hwmon/w83627ehf.c:97:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:98:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:98:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:98:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   drivers/hwmon/w83627ehf.c:98:9: sparse:     got void *
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:104:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:104:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: cast removes address space 
'__iomem' of expression
>> drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:105:16: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:105:16: sparse:     got void *
   drivers/hwmon/w83627ehf.c:130:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:130:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:130:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:130:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:131:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:131:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:131:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:131:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:132:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:132:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:132:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:132:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:121:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:121:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:121:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:121:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:122:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:122:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:122:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:122:9: sparse:     got void *
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:104:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:104:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: cast removes address space 
'__iomem' of expression
>> drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:105:16: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:105:16: sparse:     got void *
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> drivers/hwmon/w83627ehf.c:104:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:104:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:104:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: cast removes address space 
'__iomem' of expression
>> drivers/hwmon/w83627ehf.c:105:16: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> drivers/hwmon/w83627ehf.c:105:16: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:105:16: sparse:     got void *
   drivers/hwmon/w83627ehf.c:130:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:130:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:130:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:130:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:131:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/hwmon/w83627ehf.c:131:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/hwmon/w83627ehf.c:131:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/hwmon/w83627ehf.c:131:9: sparse:     got void *
   drivers/hwmon/w83627ehf.c:132:9: sparse: sparse: too many warnings

vim +/__iomem +371 drivers/net/hamradio/baycom_ser_hdx.c

^1da177e4c3f415 Linus Torvalds 2005-04-16  361  
7d12e780e003f93 David Howells  2006-10-05  362  static irqreturn_t 
ser12_interrupt(int irq, void *dev_id)
^1da177e4c3f415 Linus Torvalds 2005-04-16  363  {
^1da177e4c3f415 Linus Torvalds 2005-04-16  364          struct net_device *dev 
= (struct net_device *)dev_id;
^1da177e4c3f415 Linus Torvalds 2005-04-16  365          struct baycom_state *bc 
= netdev_priv(dev);
^1da177e4c3f415 Linus Torvalds 2005-04-16  366          unsigned char iir;
^1da177e4c3f415 Linus Torvalds 2005-04-16  367  
^1da177e4c3f415 Linus Torvalds 2005-04-16  368          if (!dev || !bc || 
bc->hdrv.magic != HDLCDRV_MAGIC)
^1da177e4c3f415 Linus Torvalds 2005-04-16  369                  return IRQ_NONE;
^1da177e4c3f415 Linus Torvalds 2005-04-16  370          /* fast way out */
^1da177e4c3f415 Linus Torvalds 2005-04-16 @371          if ((iir = 
inb(IIR(dev->base_addr))) & 1)
^1da177e4c3f415 Linus Torvalds 2005-04-16  372                  return IRQ_NONE;
^1da177e4c3f415 Linus Torvalds 2005-04-16  373          baycom_int_freq(bc);
^1da177e4c3f415 Linus Torvalds 2005-04-16  374          do {
^1da177e4c3f415 Linus Torvalds 2005-04-16  375                  switch (iir & 
6) {
^1da177e4c3f415 Linus Torvalds 2005-04-16  376                  case 6:
^1da177e4c3f415 Linus Torvalds 2005-04-16  377                          
inb(LSR(dev->base_addr));
^1da177e4c3f415 Linus Torvalds 2005-04-16  378                          break;
^1da177e4c3f415 Linus Torvalds 2005-04-16  379                          
^1da177e4c3f415 Linus Torvalds 2005-04-16  380                  case 4:
^1da177e4c3f415 Linus Torvalds 2005-04-16  381                          
inb(RBR(dev->base_addr));
^1da177e4c3f415 Linus Torvalds 2005-04-16  382                          break;
^1da177e4c3f415 Linus Torvalds 2005-04-16  383                          
^1da177e4c3f415 Linus Torvalds 2005-04-16  384                  case 2:
^1da177e4c3f415 Linus Torvalds 2005-04-16  385                          /*
^1da177e4c3f415 Linus Torvalds 2005-04-16  386                           * 
check if transmitter active
^1da177e4c3f415 Linus Torvalds 2005-04-16  387                           */
^1da177e4c3f415 Linus Torvalds 2005-04-16  388                          if 
(hdlcdrv_ptt(&bc->hdrv))
^1da177e4c3f415 Linus Torvalds 2005-04-16  389                                  
ser12_tx(dev, bc);
^1da177e4c3f415 Linus Torvalds 2005-04-16  390                          else {
^1da177e4c3f415 Linus Torvalds 2005-04-16  391                                  
ser12_rx(dev, bc);
^1da177e4c3f415 Linus Torvalds 2005-04-16  392                                  
bc->modem.arb_divider--;
^1da177e4c3f415 Linus Torvalds 2005-04-16  393                          }
^1da177e4c3f415 Linus Torvalds 2005-04-16 @394                          
outb(0x00, THR(dev->base_addr));
^1da177e4c3f415 Linus Torvalds 2005-04-16  395                          break;
^1da177e4c3f415 Linus Torvalds 2005-04-16  396                          
^1da177e4c3f415 Linus Torvalds 2005-04-16  397                  default:
^1da177e4c3f415 Linus Torvalds 2005-04-16  398                          
inb(MSR(dev->base_addr));
^1da177e4c3f415 Linus Torvalds 2005-04-16  399                          break;
^1da177e4c3f415 Linus Torvalds 2005-04-16  400                  }
^1da177e4c3f415 Linus Torvalds 2005-04-16  401                  iir = 
inb(IIR(dev->base_addr));
^1da177e4c3f415 Linus Torvalds 2005-04-16  402          } while (!(iir & 1));
^1da177e4c3f415 Linus Torvalds 2005-04-16  403          if 
(bc->modem.arb_divider <= 0) {
^1da177e4c3f415 Linus Torvalds 2005-04-16  404                  
bc->modem.arb_divider = SER12_ARB_DIVIDER(bc);
^1da177e4c3f415 Linus Torvalds 2005-04-16  405                  
local_irq_enable();
^1da177e4c3f415 Linus Torvalds 2005-04-16  406                  
hdlcdrv_arbitrate(dev, &bc->hdrv);
^1da177e4c3f415 Linus Torvalds 2005-04-16  407          }
^1da177e4c3f415 Linus Torvalds 2005-04-16  408          local_irq_enable();
^1da177e4c3f415 Linus Torvalds 2005-04-16  409          
hdlcdrv_transmitter(dev, &bc->hdrv);
^1da177e4c3f415 Linus Torvalds 2005-04-16  410          hdlcdrv_receiver(dev, 
&bc->hdrv);
^1da177e4c3f415 Linus Torvalds 2005-04-16  411          local_irq_disable();
^1da177e4c3f415 Linus Torvalds 2005-04-16  412          return IRQ_HANDLED;
^1da177e4c3f415 Linus Torvalds 2005-04-16  413  }
^1da177e4c3f415 Linus Torvalds 2005-04-16  414  

:::::: The code at line 371 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <[email protected]>
:::::: CC: Linus Torvalds <[email protected]>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

Reply via email to