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 <[email protected]>


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 <[email protected]>
:::::: CC: Jean Delvare <[email protected]>

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

Attachment: .config.gz
Description: application/gzip

Reply via email to