lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Sun, 9 Aug 2020 03:24:13 +0800
From:   kernel test robot <lkp@...el.com>
To:     Luc Van Oostenryck <luc.vanoostenryck@...il.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: drivers/hwmon/smsc47b397.c:111:9: sparse: sparse: cast removes
 address space '__iomem' of expression

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   11030fe96b57ad843518b0e9430f3cd4b3610ce2
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date:   7 weeks ago
config: riscv-randconfig-s031-20200809 (attached as .config)
compiler: riscv64-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-118-ge1578773-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 <lkp@...el.com>


sparse warnings: (new ones prefixed by >>)

>> drivers/hwmon/smsc47b397.c:111:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/hwmon/smsc47b397.c:111:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/hwmon/smsc47b397.c:111:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:111:9: sparse:     got void *
   drivers/hwmon/smsc47b397.c: note: in included file (through arch/riscv/include/asm/io.h, include/linux/io.h):
   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 *
   drivers/hwmon/smsc47b397.c:67:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/hwmon/smsc47b397.c:67:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/hwmon/smsc47b397.c:67:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:67:9: sparse:     got void *
   drivers/hwmon/smsc47b397.c:52:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/hwmon/smsc47b397.c:52:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/hwmon/smsc47b397.c:52:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:52:9: sparse:     got void *
   drivers/hwmon/smsc47b397.c:53:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/hwmon/smsc47b397.c:53:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/hwmon/smsc47b397.c:53:16: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:53:16: sparse:     got void *
   drivers/hwmon/smsc47b397.c:73:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/hwmon/smsc47b397.c:73:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/hwmon/smsc47b397.c:73:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:73:9: sparse:     got void *
   drivers/hwmon/smsc47b397.c:52:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/hwmon/smsc47b397.c:52:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/hwmon/smsc47b397.c:52:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:52:9: sparse:     got void *
   drivers/hwmon/smsc47b397.c:53:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/hwmon/smsc47b397.c:53:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/hwmon/smsc47b397.c:53:16: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:53:16: sparse:     got void *
   drivers/hwmon/smsc47b397.c:46:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/hwmon/smsc47b397.c:46:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/hwmon/smsc47b397.c:46:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:46:9: sparse:     got void *
   drivers/hwmon/smsc47b397.c:47:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/hwmon/smsc47b397.c:47:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/hwmon/smsc47b397.c:47:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:47:9: sparse:     got void *
   drivers/hwmon/smsc47b397.c:52:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/hwmon/smsc47b397.c:52:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/hwmon/smsc47b397.c:52:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:52:9: sparse:     got void *
   drivers/hwmon/smsc47b397.c:53:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/hwmon/smsc47b397.c:53:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/hwmon/smsc47b397.c:53:16: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:53:16: sparse:     got void *
   drivers/hwmon/smsc47b397.c:52:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/hwmon/smsc47b397.c:52:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/hwmon/smsc47b397.c:52:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:52:9: sparse:     got void *
   drivers/hwmon/smsc47b397.c:53:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/hwmon/smsc47b397.c:53:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/hwmon/smsc47b397.c:53:16: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:53:16: sparse:     got void *
   drivers/hwmon/smsc47b397.c:73:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/hwmon/smsc47b397.c:73:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/hwmon/smsc47b397.c:73:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/hwmon/smsc47b397.c:73:9: sparse:     got void *
--
>> drivers/staging/comedi/drivers/cb_das16_cs.c:133:18: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/staging/comedi/drivers/cb_das16_cs.c:133:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/staging/comedi/drivers/cb_das16_cs.c:133:18: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:133:18: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:151:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/staging/comedi/drivers/cb_das16_cs.c:151:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/staging/comedi/drivers/cb_das16_cs.c:151:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:151:9: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:161:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:161:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:161:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:161:9: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:178:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:178:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:178:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:178:9: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:181:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:181:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:181:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:181:17: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:187:27: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:187:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:187:27: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:187:27: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:208:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:208:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:208:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:208:17: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:218:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:218:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:218:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:218:17: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:226:25: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:226:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:226:25: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:226:25: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:228:25: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:228:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:228:25: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:228:25: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:236:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:236:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:236:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:236:17: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:250:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:250:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:250:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:250:17: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:252:19: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:252:19: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:252:19: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:252:19: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:284:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:284:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:284:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:284:9: sparse:     got void *
   drivers/staging/comedi/drivers/cb_das16_cs.c:308:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/cb_das16_cs.c:308:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/cb_das16_cs.c:308:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/cb_das16_cs.c:308:17: sparse:     got void *
--
>> drivers/staging/comedi/drivers/ni_daq_700.c:85:25: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/staging/comedi/drivers/ni_daq_700.c:85:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/staging/comedi/drivers/ni_daq_700.c:85:25: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:85:25: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:89:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/staging/comedi/drivers/ni_daq_700.c:89:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/staging/comedi/drivers/ni_daq_700.c:89:16: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:89:16: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:120:18: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:120:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:120:18: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:120:18: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:123:18: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:123:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:123:18: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:123:18: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:149:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:149:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:149:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:149:9: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:153:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:153:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:153:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:153:9: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:160:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:160:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:160:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:160:17: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:161:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:161:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:161:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:161:17: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:162:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:162:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:162:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:162:17: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:164:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:164:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:164:17: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:164:17: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:166:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:166:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:166:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:166:17: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:174:21: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:174:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:174:21: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:174:21: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:200:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:200:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:200:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:200:9: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:201:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:201:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:201:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:201:9: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:202:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:202:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:202:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:202:9: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:203:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:203:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:203:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:203:9: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:204:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:204:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:204:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:204:9: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:205:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:205:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:205:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:205:9: sparse:     got void *
   drivers/staging/comedi/drivers/ni_daq_700.c:206:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/ni_daq_700.c:206:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/ni_daq_700.c:206:9: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/ni_daq_700.c:206:9: sparse:     got void *
--
>> drivers/staging/comedi/drivers/quatech_daqp_cs.c:170:26: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/staging/comedi/drivers/quatech_daqp_cs.c:170:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/staging/comedi/drivers/quatech_daqp_cs.c:170:26: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:170:26: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:190:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/staging/comedi/drivers/quatech_daqp_cs.c:190:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
>> drivers/staging/comedi/drivers/quatech_daqp_cs.c:190:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:190:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:191:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:191:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:191:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:191:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:192:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:192:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:192:9: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:192:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:206:15: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:206:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:206:15: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:206:15: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:207:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:207:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:207:16: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:207:16: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:222:18: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:222:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:222:18: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:222:18: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:247:26: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:247:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:247:26: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:247:26: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:278:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:278:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:278:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:278:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:279:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:279:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:279:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:279:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:289:18: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:289:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:289:18: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:289:18: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:307:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:307:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:307:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:307:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:310:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:310:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:310:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:310:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:316:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:316:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:316:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:316:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:319:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:319:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:319:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:319:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:327:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:327:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:327:17: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:327:17: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:335:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:335:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:335:17: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:335:17: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:341:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:341:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:341:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:341:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:342:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:342:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:342:9: sparse:     expected void const volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:342:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:366:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:366:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:366:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:366:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:367:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:367:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:367:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:367:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:368:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:368:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:368:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:368:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:474:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:474:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:474:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:474:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:477:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:477:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:477:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:477:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:587:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:587:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:587:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:587:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:597:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:597:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:597:9: sparse:     expected void volatile [noderef] __iomem *addr
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:597:9: sparse:     got void *
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:598:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:598:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void volatile [noderef] __iomem *addr @@     got void * @@
   drivers/staging/comedi/drivers/quatech_daqp_cs.c:598:9: sparse:     expected void volatile [noderef] __iomem *addr

vim +/__iomem +111 drivers/hwmon/smsc47b397.c

^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   49  
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   50  static inline int superio_inb(int reg)
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   51  {
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   52  	outb(reg, REG);
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  @53  	return inb(VAL);
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   54  }
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   55  
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   56  /* select superio logical device */
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   57  static inline void superio_select(int ld)
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   58  {
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   59  	superio_outb(0x07, ld);
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   60  }
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   61  
8c0826756744c0 drivers/hwmon/smsc47b397.c     Guenter Roeck  2019-04-04   62  static inline int superio_enter(void)
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   63  {
8c0826756744c0 drivers/hwmon/smsc47b397.c     Guenter Roeck  2019-04-04   64  	if (!request_muxed_region(REG, 2, DRVNAME))
8c0826756744c0 drivers/hwmon/smsc47b397.c     Guenter Roeck  2019-04-04   65  		return -EBUSY;
8c0826756744c0 drivers/hwmon/smsc47b397.c     Guenter Roeck  2019-04-04   66  
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   67  	outb(0x55, REG);
8c0826756744c0 drivers/hwmon/smsc47b397.c     Guenter Roeck  2019-04-04   68  	return 0;
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   69  }
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   70  
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   71  static inline void superio_exit(void)
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   72  {
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   73  	outb(0xAA, REG);
8c0826756744c0 drivers/hwmon/smsc47b397.c     Guenter Roeck  2019-04-04   74  	release_region(REG, 2);
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   75  }
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   76  
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   77  #define SUPERIO_REG_DEVID	0x20
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   78  #define SUPERIO_REG_DEVREV	0x21
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   79  #define SUPERIO_REG_BASE_MSB	0x60
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   80  #define SUPERIO_REG_BASE_LSB	0x61
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   81  #define SUPERIO_REG_LD8		0x08
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   82  
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   83  #define SMSC_EXTENT		0x02
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   84  
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   85  /* 0 <= nr <= 3 */
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   86  static u8 smsc47b397_reg_temp[] = {0x25, 0x26, 0x27, 0x80};
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   87  #define SMSC47B397_REG_TEMP(nr)	(smsc47b397_reg_temp[(nr)])
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   88  
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   89  /* 0 <= nr <= 3 */
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   90  #define SMSC47B397_REG_FAN_LSB(nr) (0x28 + 2 * (nr))
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   91  #define SMSC47B397_REG_FAN_MSB(nr) (0x29 + 2 * (nr))
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   92  
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   93  struct smsc47b397_data {
292fc1a5ff44d4 drivers/hwmon/smsc47b397.c     Jean Delvare   2007-05-08   94  	unsigned short addr;
9a61bf6300533d drivers/hwmon/smsc47b397.c     Ingo Molnar    2006-01-18   95  	struct mutex lock;
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   96  
9a61bf6300533d drivers/hwmon/smsc47b397.c     Ingo Molnar    2006-01-18   97  	struct mutex update_lock;
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   98  	unsigned long last_updated; /* in jiffies */
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16   99  	int valid;
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  100  
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  101  	/* register values */
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  102  	u16 fan[4];
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  103  	u8 temp[4];
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  104  };
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  105  
292fc1a5ff44d4 drivers/hwmon/smsc47b397.c     Jean Delvare   2007-05-08  106  static int smsc47b397_read_value(struct smsc47b397_data *data, u8 reg)
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  107  {
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  108  	int res;
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  109  
9a61bf6300533d drivers/hwmon/smsc47b397.c     Ingo Molnar    2006-01-18  110  	mutex_lock(&data->lock);
292fc1a5ff44d4 drivers/hwmon/smsc47b397.c     Jean Delvare   2007-05-08 @111  	outb(reg, data->addr);
292fc1a5ff44d4 drivers/hwmon/smsc47b397.c     Jean Delvare   2007-05-08  112  	res = inb_p(data->addr + 1);
9a61bf6300533d drivers/hwmon/smsc47b397.c     Ingo Molnar    2006-01-18  113  	mutex_unlock(&data->lock);
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  114  	return res;
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  115  }
^1da177e4c3f41 drivers/i2c/chips/smsc47b397.c Linus Torvalds 2005-04-16  116  

:::::: The code at line 111 was first introduced by commit
:::::: 292fc1a5ff44d477ff335a343a48d2b67bbc70e3 hwmon/smsc47b397: Convert to a platform driver

:::::: TO: Jean Delvare <khali@...ux-fr.org>
:::::: CC: Jean Delvare <khali@...erion.delvare>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Download attachment ".config.gz" of type "application/gzip" (29354 bytes)

Powered by blists - more mailing lists