drivers/hwmon/smsc47b397.c:111:9: sparse: sparse: cast removes address space '__iomem' of expression

From: kernel test robot
Date: Sat Aug 08 2020 - 16:34:03 EST


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@xxxxxxxxx>


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@xxxxxxxxxxxx>
:::::: CC: Jean Delvare <khali@hyperion.delvare>

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

Attachment: .config.gz
Description: application/gzip