tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   086ba2ec163b638abd2a90ef3e8bab0238d02e56
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to 
define address spaces
date:   8 weeks ago
config: riscv-randconfig-s032-20200810 (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-141-g19506bc2-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 <l...@intel.com>


sparse warnings: (new ones prefixed by >>)

   drivers/video/fbdev/tridentfb.c:567:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:736:9: sparse: sparse: cast removes address 
space '__iomem' of expression
>> drivers/video/fbdev/tridentfb.c:736:9: sparse: sparse: incorrect type in 
>> argument 2 (different address spaces) @@     expected void volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> drivers/video/fbdev/tridentfb.c:736:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/video/fbdev/tridentfb.c:736:9: sparse:     got void *
   drivers/video/fbdev/tridentfb.c:737:9: sparse: sparse: cast removes address 
space '__iomem' of expression
>> drivers/video/fbdev/tridentfb.c:737:9: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> drivers/video/fbdev/tridentfb.c:737:9: sparse:     expected void const 
>> volatile [noderef] __iomem *addr
   drivers/video/fbdev/tridentfb.c:737:9: sparse:     got void *
   drivers/video/fbdev/tridentfb.c:737:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:737:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/video/fbdev/tridentfb.c:737:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/video/fbdev/tridentfb.c:737:9: sparse:     got void *
   drivers/video/fbdev/tridentfb.c:1323:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:181:16: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:171:16: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:181:16: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:176:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c:166:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/video/fbdev/tridentfb.c: note: in included file (through 
arch/riscv/include/asm/io.h, include/linux/fb.h):
   include/asm-generic/io.h:580:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   include/asm-generic/io.h:580:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   include/asm-generic/io.h:580:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   include/asm-generic/io.h:580:9: sparse:     got void *
   include/asm-generic/io.h: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
--
>> drivers/tty/serial/jsm/jsm_driver.c:170:17: sparse: sparse: cast removes 
>> address space '__iomem' of expression
>> drivers/tty/serial/jsm/jsm_driver.c:170:17: sparse: sparse: incorrect type 
>> in argument 2 (different address spaces) @@     expected void volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> drivers/tty/serial/jsm/jsm_driver.c:170:17: sparse:     expected void 
>> volatile [noderef] __iomem *addr
   drivers/tty/serial/jsm/jsm_driver.c:170:17: sparse:     got void *
   drivers/tty/serial/jsm/jsm_driver.c:273:17: sparse: sparse: cast removes 
address space '__iomem' of expression
   drivers/tty/serial/jsm/jsm_driver.c:273:17: sparse: sparse: incorrect type 
in argument 2 (different address spaces) @@     expected void volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/tty/serial/jsm/jsm_driver.c:273:17: sparse:     expected void 
volatile [noderef] __iomem *addr
   drivers/tty/serial/jsm/jsm_driver.c:273:17: sparse:     got void *
--
>> drivers/net/wan/farsync.c:1506:30: sparse: sparse: cast removes address 
>> space '__iomem' of expression
>> drivers/net/wan/farsync.c:1506:30: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> drivers/net/wan/farsync.c:1506:30: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   drivers/net/wan/farsync.c:1506:30: sparse:     got void *
   drivers/net/wan/farsync.c:1512:25: sparse: sparse: cast removes address 
space '__iomem' of expression
>> drivers/net/wan/farsync.c:1512:25: sparse: sparse: incorrect type in 
>> argument 2 (different address spaces) @@     expected void volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> drivers/net/wan/farsync.c:1512:25: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   drivers/net/wan/farsync.c:1512:25: sparse:     got void *
   drivers/net/wan/farsync.c:1524:25: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/net/wan/farsync.c:1524:25: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/net/wan/farsync.c:1524:25: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:1524:25: sparse:     got void *
   drivers/net/wan/farsync.c:2214:23: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/net/wan/farsync.c:2214:23: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/wan/farsync.c:2214:23: sparse:     expected void const volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:2214:23: sparse:     got void *
   drivers/net/wan/farsync.c:2215:23: sparse: sparse: cast removes address 
space '__iomem' of expression
   drivers/net/wan/farsync.c:2215:23: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   drivers/net/wan/farsync.c:2215:23: sparse:     expected void const volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:2215:23: sparse:     got void *
   drivers/net/wan/farsync.c:892:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:892:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:892:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:892:9: sparse:     got void *
   drivers/net/wan/farsync.c:893:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:893:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:893:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:893:9: sparse:     got void *
   drivers/net/wan/farsync.c:894:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:894:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:894:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:894:9: sparse:     got void *
   drivers/net/wan/farsync.c:895:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:895:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:895:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:895:9: sparse:     got void *
   drivers/net/wan/farsync.c:901:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:901:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:901:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:901:9: sparse:     got void *
   drivers/net/wan/farsync.c:919:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:919:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:919:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:919:9: sparse:     got void *
   drivers/net/wan/farsync.c:920:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:920:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:920:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:920:9: sparse:     got void *
   drivers/net/wan/farsync.c:921:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:921:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:921:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:921:9: sparse:     got void *
   drivers/net/wan/farsync.c:922:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:922:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:922:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:922:9: sparse:     got void *
   drivers/net/wan/farsync.c:928:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:928:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:928:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:928:9: sparse:     got void *
   drivers/net/wan/farsync.c:749:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:749:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:749:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:749:17: sparse:     got void *
   drivers/net/wan/farsync.c:749:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:749:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:749:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:749:17: sparse:     got void *
   drivers/net/wan/farsync.c:690:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:690:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:690:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:690:17: sparse:     got void *
   drivers/net/wan/farsync.c:691:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:691:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:691:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:691:17: sparse:     got void *
   drivers/net/wan/farsync.c:696:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:696:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:696:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:696:17: sparse:     got void *
   drivers/net/wan/farsync.c:701:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:701:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:701:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:701:17: sparse:     got void *
   drivers/net/wan/farsync.c:710:26: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:710:26: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__iomem *addr @@     got void * @@
   drivers/net/wan/farsync.c:710:26: sparse:     expected void const volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:710:26: sparse:     got void *
   drivers/net/wan/farsync.c:712:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:712:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:712:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:712:17: sparse:     got void *
   drivers/net/wan/farsync.c:713:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:713:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:713:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:713:17: sparse:     got void *
   drivers/net/wan/farsync.c:732:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:732:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:732:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:732:17: sparse:     got void *
   drivers/net/wan/farsync.c:733:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:733:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:733:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   drivers/net/wan/farsync.c:733:17: sparse:     got void *
   drivers/net/wan/farsync.c:759:17: sparse: sparse: cast removes address space 
'__iomem' of expression
   drivers/net/wan/farsync.c:759:17: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   drivers/net/wan/farsync.c:759:17: sparse:     expected void volatile 
[noderef] __iomem *addr
--
>> sound/pci/ctxfi/cthw20k1.c:2103:9: sparse: sparse: cast removes address 
>> space '__iomem' of expression
>> sound/pci/ctxfi/cthw20k1.c:2103:9: sparse: sparse: incorrect type in 
>> argument 2 (different address spaces) @@     expected void volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> sound/pci/ctxfi/cthw20k1.c:2103:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   sound/pci/ctxfi/cthw20k1.c:2103:9: sparse:     got void *
   sound/pci/ctxfi/cthw20k1.c:2104:17: sparse: sparse: cast removes address 
space '__iomem' of expression
>> sound/pci/ctxfi/cthw20k1.c:2104:17: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> sound/pci/ctxfi/cthw20k1.c:2104:17: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   sound/pci/ctxfi/cthw20k1.c:2104:17: sparse:     got void *
   sound/pci/ctxfi/cthw20k1.c:2117:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ctxfi/cthw20k1.c:2117:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ctxfi/cthw20k1.c:2117:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ctxfi/cthw20k1.c:2117:9: sparse:     got void *
   sound/pci/ctxfi/cthw20k1.c:2118:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ctxfi/cthw20k1.c:2118:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ctxfi/cthw20k1.c:2118:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ctxfi/cthw20k1.c:2118:9: sparse:     got void *
   sound/pci/ctxfi/cthw20k1.c:2131:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ctxfi/cthw20k1.c:2131:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ctxfi/cthw20k1.c:2131:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ctxfi/cthw20k1.c:2131:9: sparse:     got void *
   sound/pci/ctxfi/cthw20k1.c:2132:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ctxfi/cthw20k1.c:2132:17: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ctxfi/cthw20k1.c:2132:17: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ctxfi/cthw20k1.c:2132:17: sparse:     got void *
   sound/pci/ctxfi/cthw20k1.c:2145:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ctxfi/cthw20k1.c:2145:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ctxfi/cthw20k1.c:2145:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ctxfi/cthw20k1.c:2145:9: sparse:     got void *
   sound/pci/ctxfi/cthw20k1.c:2146:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ctxfi/cthw20k1.c:2146:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ctxfi/cthw20k1.c:2146:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ctxfi/cthw20k1.c:2146:9: sparse:     got void *
--
   sound/pci/cs46xx/cs46xx_lib.c:534:5: sparse: sparse: symbol 
'snd_cs46xx_download_image' was not declared. Should it be static?
>> sound/pci/cs46xx/cs46xx_lib.c:3585:26: sparse: sparse: cast removes address 
>> space '__iomem' of expression
>> sound/pci/cs46xx/cs46xx_lib.c:3585:26: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> sound/pci/cs46xx/cs46xx_lib.c:3585:26: sparse:     expected void const 
>> volatile [noderef] __iomem *addr
   sound/pci/cs46xx/cs46xx_lib.c:3585:26: sparse:     got void *
   sound/pci/cs46xx/cs46xx_lib.c:3593:17: sparse: sparse: cast removes address 
space '__iomem' of expression
>> sound/pci/cs46xx/cs46xx_lib.c:3593:17: sparse: sparse: incorrect type in 
>> argument 2 (different address spaces) @@     expected void volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> sound/pci/cs46xx/cs46xx_lib.c:3593:17: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   sound/pci/cs46xx/cs46xx_lib.c:3593:17: sparse:     got void *
--
>> sound/pci/ice1712/ice1724.c:128:27: sparse: sparse: cast removes address 
>> space '__iomem' of expression
>> sound/pci/ice1712/ice1724.c:128:27: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> sound/pci/ice1712/ice1724.c:128:27: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:128:27: sparse:     got void *
   sound/pci/ice1712/ice1724.c:143:22: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:143:22: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:143:22: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:143:22: sparse:     got void *
   sound/pci/ice1712/ice1724.c:159:9: sparse: sparse: cast removes address 
space '__iomem' of expression
>> sound/pci/ice1712/ice1724.c:159:9: sparse: sparse: incorrect type in 
>> argument 2 (different address spaces) @@     expected void volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> sound/pci/ice1712/ice1724.c:159:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:159:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:160:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:160:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:160:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:160:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:161:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:161:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:161:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:161:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:173:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:173:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:173:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:173:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:174:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:174:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:174:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:174:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:177:16: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:177:16: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:177:16: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:177:16: sparse:     got void *
   sound/pci/ice1712/ice1724.c:188:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:188:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:188:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:188:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:189:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:189:9: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:189:9: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:189:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:195:16: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:195:16: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:195:16: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:195:16: sparse:     got void *
   sound/pci/ice1712/ice1724.c:201:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:201:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:201:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:201:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:203:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:203:17: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:203:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:203:17: sparse:     got void *
   sound/pci/ice1712/ice1724.c:204:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:204:9: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:204:9: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:204:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:211:38: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:211:38: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:211:38: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:211:38: sparse:     got void *
   sound/pci/ice1712/ice1724.c:214:31: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:214:31: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:214:31: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:214:31: sparse:     got void *
   sound/pci/ice1712/ice1724.c:220:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:220:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:220:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:220:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:222:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:222:17: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:222:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:222:17: sparse:     got void *
   sound/pci/ice1712/ice1724.c:223:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:223:9: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:223:9: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:223:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:230:38: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:230:38: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:230:38: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:230:38: sparse:     got void *
   sound/pci/ice1712/ice1724.c:233:31: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:233:31: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:233:31: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:233:31: sparse:     got void *
   sound/pci/ice1712/ice1724.c:245:22: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:245:22: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:245:22: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:245:22: sparse:     got void *
   sound/pci/ice1712/ice1724.c:246:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:246:17: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:246:17: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:246:17: sparse:     got void *
   sound/pci/ice1712/ice1724.c:297:19: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:297:19: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:297:19: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:297:19: sparse:     got void *
   sound/pci/ice1712/ice1724.c:302:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:302:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:302:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:302:9: sparse:     got void *
   sound/pci/ice1712/ice1724.c:265:22: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:265:22: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:265:22: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:265:22: sparse:     got void *
   sound/pci/ice1712/ice1724.c:269:25: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:269:25: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:269:25: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/ice1724.c:269:25: sparse:     got void *
   sound/pci/ice1712/ice1724.c:285:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/ice1724.c:285:17: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/ice1724.c:285:17: sparse:     expected void const volatile 
[noderef] __iomem *addr
--
>> sound/pci/ice1712/revo.c:30:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> sound/pci/ice1712/revo.c:30:9: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> sound/pci/ice1712/revo.c:30:9: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   sound/pci/ice1712/revo.c:30:9: sparse:     got void *
>> sound/pci/ice1712/revo.c:30:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> sound/pci/ice1712/revo.c:30:9: sparse: sparse: incorrect type in argument 2 
>> (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> sound/pci/ice1712/revo.c:30:9: sparse:     expected void volatile [noderef] 
>> __iomem *addr
   sound/pci/ice1712/revo.c:30:9: sparse:     got void *
   sound/pci/ice1712/revo.c:33:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   sound/pci/ice1712/revo.c:33:9: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/revo.c:33:9: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/revo.c:33:9: sparse:     got void *
   sound/pci/ice1712/revo.c:33:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   sound/pci/ice1712/revo.c:33:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   sound/pci/ice1712/revo.c:33:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   sound/pci/ice1712/revo.c:33:9: sparse:     got void *
--
>> sound/pci/ice1712/pontis.c:764:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> sound/pci/ice1712/pontis.c:764:9: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> sound/pci/ice1712/pontis.c:764:9: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   sound/pci/ice1712/pontis.c:764:9: sparse:     got void *
>> sound/pci/ice1712/pontis.c:764:9: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> sound/pci/ice1712/pontis.c:764:9: sparse: sparse: incorrect type in argument 
>> 2 (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> sound/pci/ice1712/pontis.c:764:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   sound/pci/ice1712/pontis.c:764:9: sparse:     got void *
   sound/pci/ice1712/pontis.c:767:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   sound/pci/ice1712/pontis.c:767:9: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/pontis.c:767:9: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/pontis.c:767:9: sparse:     got void *
   sound/pci/ice1712/pontis.c:767:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   sound/pci/ice1712/pontis.c:767:9: sparse: sparse: incorrect type in argument 
2 (different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   sound/pci/ice1712/pontis.c:767:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/pontis.c:767:9: sparse:     got void *
--
>> sound/pci/ice1712/juli.c:238:15: sparse: sparse: cast removes address space 
>> '__iomem' of expression
>> sound/pci/ice1712/juli.c:238:15: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __iomem *addr @@     got void * @@
>> sound/pci/ice1712/juli.c:238:15: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   sound/pci/ice1712/juli.c:238:15: sparse:     got void *
   sound/pci/ice1712/juli.c:239:9: sparse: sparse: cast removes address space 
'__iomem' of expression
>> sound/pci/ice1712/juli.c:239:9: sparse: sparse: incorrect type in argument 2 
>> (different address spaces) @@     expected void volatile [noderef] __iomem 
>> *addr @@     got void * @@
>> sound/pci/ice1712/juli.c:239:9: sparse:     expected void volatile [noderef] 
>> __iomem *addr
   sound/pci/ice1712/juli.c:239:9: sparse:     got void *
   sound/pci/ice1712/juli.c:241:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   sound/pci/ice1712/juli.c:241:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   sound/pci/ice1712/juli.c:241:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   sound/pci/ice1712/juli.c:241:9: sparse:     got void *
   sound/pci/ice1712/juli.c:529:15: sparse: sparse: cast removes address space 
'__iomem' of expression
   sound/pci/ice1712/juli.c:529:15: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/juli.c:529:15: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/juli.c:529:15: sparse:     got void *
   sound/pci/ice1712/juli.c:530:9: sparse: sparse: cast removes address space 
'__iomem' of expression
   sound/pci/ice1712/juli.c:530:9: sparse: sparse: incorrect type in argument 2 
(different address spaces) @@     expected void volatile [noderef] __iomem 
*addr @@     got void * @@
   sound/pci/ice1712/juli.c:530:9: sparse:     expected void volatile [noderef] 
__iomem *addr
   sound/pci/ice1712/juli.c:530:9: sparse:     got void *
--
>> sound/pci/ice1712/quartet.c:851:15: sparse: sparse: cast removes address 
>> space '__iomem' of expression
>> sound/pci/ice1712/quartet.c:851:15: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> sound/pci/ice1712/quartet.c:851:15: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   sound/pci/ice1712/quartet.c:851:15: sparse:     got void *
   sound/pci/ice1712/quartet.c:852:9: sparse: sparse: cast removes address 
space '__iomem' of expression
>> sound/pci/ice1712/quartet.c:852:9: sparse: sparse: incorrect type in 
>> argument 2 (different address spaces) @@     expected void volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> sound/pci/ice1712/quartet.c:852:9: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   sound/pci/ice1712/quartet.c:852:9: sparse:     got void *
   sound/pci/ice1712/quartet.c:988:15: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/quartet.c:988:15: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/ice1712/quartet.c:988:15: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/quartet.c:988:15: sparse:     got void *
   sound/pci/ice1712/quartet.c:989:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/ice1712/quartet.c:989:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/ice1712/quartet.c:989:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/ice1712/quartet.c:989:9: sparse:     got void *
--
>> sound/pci/riptide/riptide.c:855:40: sparse: sparse: cast removes address 
>> space '__iomem' of expression
>> sound/pci/riptide/riptide.c:855:40: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> sound/pci/riptide/riptide.c:855:40: sparse:     expected void const volatile 
>> [noderef] __iomem *addr
   sound/pci/riptide/riptide.c:855:40: sparse:     got void *
   sound/pci/riptide/riptide.c:865:21: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:865:21: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:865:21: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:865:21: sparse:     got void *
   sound/pci/riptide/riptide.c:866:25: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:866:25: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:866:25: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:866:25: sparse:     got void *
   sound/pci/riptide/riptide.c:867:25: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:867:25: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:867:25: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:867:25: sparse:     got void *
   sound/pci/riptide/riptide.c:869:21: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:869:21: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:869:21: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:869:21: sparse:     got void *
   sound/pci/riptide/riptide.c:871:33: sparse: sparse: cast removes address 
space '__iomem' of expression
>> sound/pci/riptide/riptide.c:871:33: sparse: sparse: incorrect type in 
>> argument 2 (different address spaces) @@     expected void volatile 
>> [noderef] __iomem *addr @@     got void * @@
>> sound/pci/riptide/riptide.c:871:33: sparse:     expected void volatile 
>> [noderef] __iomem *addr
   sound/pci/riptide/riptide.c:871:33: sparse:     got void *
   sound/pci/riptide/riptide.c:872:25: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:872:25: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:872:25: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:872:25: sparse:     got void *
   sound/pci/riptide/riptide.c:874:41: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:874:41: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:874:41: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:874:41: sparse:     got void *
   sound/pci/riptide/riptide.c:881:45: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:881:45: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:881:45: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:881:45: sparse:     got void *
   sound/pci/riptide/riptide.c:883:45: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:883:45: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:883:45: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:883:45: sparse:     got void *
   sound/pci/riptide/riptide.c:919:42: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:919:42: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:919:42: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:919:42: sparse:     got void *
   sound/pci/riptide/riptide.c:919:60: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:919:60: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:919:60: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:919:60: sparse:     got void *
   sound/pci/riptide/riptide.c:1788:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1788:17: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1788:17: sparse:     expected void const 
volatile [noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1788:17: sparse:     got void *
   sound/pci/riptide/riptide.c:1788:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1788:17: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1788:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1788:17: sparse:     got void *
   sound/pci/riptide/riptide.c:1295:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1295:9: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1295:9: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1295:9: sparse:     got void *
   sound/pci/riptide/riptide.c:1295:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1295:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1295:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1295:9: sparse:     got void *
   sound/pci/riptide/riptide.c:1296:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1296:9: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1296:9: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1296:9: sparse:     got void *
   sound/pci/riptide/riptide.c:1296:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1296:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1296:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1296:9: sparse:     got void *
   sound/pci/riptide/riptide.c:1297:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1297:9: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1297:9: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1297:9: sparse:     got void *
   sound/pci/riptide/riptide.c:1297:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1297:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1297:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1297:9: sparse:     got void *
   sound/pci/riptide/riptide.c:1122:38: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1122:38: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1122:38: sparse:     expected void const 
volatile [noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1122:38: sparse:     got void *
   sound/pci/riptide/riptide.c:1175:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1175:17: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1175:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1175:17: sparse:     got void *
   sound/pci/riptide/riptide.c:1176:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1176:17: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1176:17: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1176:17: sparse:     got void *
   sound/pci/riptide/riptide.c:1178:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1178:9: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1178:9: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1178:9: sparse:     got void *
   sound/pci/riptide/riptide.c:1178:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1178:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1178:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1178:9: sparse:     got void *
   sound/pci/riptide/riptide.c:1180:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1180:9: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1180:9: sparse:     expected void const volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1180:9: sparse:     got void *
   sound/pci/riptide/riptide.c:1180:9: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1180:9: sparse: sparse: incorrect type in 
argument 2 (different address spaces) @@     expected void volatile [noderef] 
__iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1180:9: sparse:     expected void volatile 
[noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1180:9: sparse:     got void *
   sound/pci/riptide/riptide.c:1184:21: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1184:21: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1184:21: sparse:     expected void const 
volatile [noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1184:21: sparse:     got void *
   sound/pci/riptide/riptide.c:1184:47: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1184:47: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1184:47: sparse:     expected void const 
volatile [noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1184:47: sparse:     got void *
   sound/pci/riptide/riptide.c:1188:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1188:17: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1188:17: sparse:     expected void const 
volatile [noderef] __iomem *addr
   sound/pci/riptide/riptide.c:1188:17: sparse:     got void *
   sound/pci/riptide/riptide.c:1188:17: sparse: sparse: cast removes address 
space '__iomem' of expression
   sound/pci/riptide/riptide.c:1188:17: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __iomem *addr @@     got void * @@
   sound/pci/riptide/riptide.c:1188:17: sparse:     expected void const 
volatile [noderef] __iomem *addr

vim +736 drivers/video/fbdev/tridentfb.c

^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  538  
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  539  /*
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  540   * 
TGUI 9440/96XX acceleration
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  541   */
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  542  
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  543  
static void tgui_init_accel(struct tridentfb_par *par, int pitch, int bpp)
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  544  {
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  545     
unsigned char x = bpp == 24 ? 3 : (bpp >> 4);
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  546  
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  547     
/* disable clipping */
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  548     
writemmr(par, 0x2148, 0);
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  549     
writemmr(par, 0x214C, point(4095, 2047));
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  550  
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  551     
switch ((pitch * bpp) / 8) {
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  552     
case 8192:
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  553     
case 512:
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  554     
        x |= 0x00;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  555     
        break;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  556     
case 1024:
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  557     
        x |= 0x04;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  558     
        break;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  559     
case 2048:
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  560     
        x |= 0x08;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  561     
        break;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  562     
case 4096:
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  563     
        x |= 0x0C;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  564     
        break;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  565     
}
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  566  
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23 @567     
fb_writew(x, par->io_virt + 0x2122);
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  568  }
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  569  
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  570  
static void tgui_fill_rect(struct tridentfb_par *par,
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  571     
                   u32 x, u32 y, u32 w, u32 h, u32 c, u32 rop)
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  572  {
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  573     
t_outb(par, ROP_P, 0x2127);
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  574     
writemmr(par, OLDCLR, c);
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  575     
writemmr(par, DRAWFL, 0x4020);
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  576     
writemmr(par, OLDDIM, point(w - 1, h - 1));
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  577     
writemmr(par, OLDDST, point(x, y));
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  578     
t_outb(par, 1, OLDCMD);
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  579  }
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  580  
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  581  
static void tgui_copy_rect(struct tridentfb_par *par,
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  582     
                   u32 x1, u32 y1, u32 x2, u32 y2, u32 w, u32 h)
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  583  {
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  584     
int flags = 0;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  585     
u16 x1_tmp, x2_tmp, y1_tmp, y2_tmp;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  586  
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  587     
if ((x1 < x2) && (y1 == y2)) {
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  588     
        flags |= 0x0200;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  589     
        x1_tmp = x1 + w - 1;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  590     
        x2_tmp = x2 + w - 1;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  591     
} else {
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  592     
        x1_tmp = x1;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  593     
        x2_tmp = x2;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  594     
}
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  595  
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  596     
if (y1 < y2) {
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  597     
        flags |= 0x0100;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  598     
        y1_tmp = y1 + h - 1;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  599     
        y2_tmp = y2 + h - 1;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  600     
} else {
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  601     
        y1_tmp = y1;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  602     
        y2_tmp = y2;
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  603     
}
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  604  
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  605     
writemmr(par, DRAWFL, 0x4 | flags);
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  606     
t_outb(par, ROP_S, 0x2127);
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  607     
writemmr(par, OLDSRC, point(x1_tmp, y1_tmp));
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  608     
writemmr(par, OLDDST, point(x2_tmp, y2_tmp));
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  609     
writemmr(par, OLDDIM, point(w - 1, h - 1));
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  610     
t_outb(par, 1, OLDCMD);
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  611  }
bcac2d5fe36238 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  612  
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  613  /*
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  614   * 
Accel functions called by the upper layers
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  615   */
245a2c2c69fee3 drivers/video/tridentfb.c Krzysztof Helt     2007-10-16  616  
static void tridentfb_fillrect(struct fb_info *info,
245a2c2c69fee3 drivers/video/tridentfb.c Krzysztof Helt     2007-10-16  617     
                       const struct fb_fillrect *fr)
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  618  {
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  619     
struct tridentfb_par *par = info->par;
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  620     
int col;
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  621  
01a2d9ed85c945 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  622     
if (info->flags & FBINFO_HWACCEL_DISABLED) {
01a2d9ed85c945 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  623     
        cfb_fillrect(info, fr);
01a2d9ed85c945 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  624     
        return;
01a2d9ed85c945 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  625     
}
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  626     
if (info->var.bits_per_pixel == 8) {
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  627     
        col = fr->color;
8dad46cf38c029 drivers/video/tridentfb.c Antonino A. Daplas 2005-08-01  628     
        col |= col << 8;
8dad46cf38c029 drivers/video/tridentfb.c Antonino A. Daplas 2005-08-01  629     
        col |= col << 16;
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  630     
} else
245a2c2c69fee3 drivers/video/tridentfb.c Krzysztof Helt     2007-10-16  631     
        col = ((u32 *)(info->pseudo_palette))[fr->color];
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  632  
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  633     
par->wait_engine(par);
d9cad04bcde004 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  634     
par->fill_rect(par, fr->dx, fr->dy, fr->width,
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  635     
               fr->height, col, fr->rop);
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  636  }
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  637  
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  638  
static void tridentfb_imageblit(struct fb_info *info,
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  639     
                        const struct fb_image *img)
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  640  {
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  641     
struct tridentfb_par *par = info->par;
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  642     
int col, bgcol;
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  643  
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  644     
if ((info->flags & FBINFO_HWACCEL_DISABLED) || img->depth != 1) {
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  645     
        cfb_imageblit(info, img);
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  646     
        return;
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  647     
}
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  648     
if (info->var.bits_per_pixel == 8) {
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  649     
        col = img->fg_color;
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  650     
        col |= col << 8;
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  651     
        col |= col << 16;
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  652     
        bgcol = img->bg_color;
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  653     
        bgcol |= bgcol << 8;
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  654     
        bgcol |= bgcol << 16;
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  655     
} else {
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  656     
        col = ((u32 *)(info->pseudo_palette))[img->fg_color];
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  657     
        bgcol = ((u32 *)(info->pseudo_palette))[img->bg_color];
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  658     
}
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  659  
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  660     
par->wait_engine(par);
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  661     
if (par->image_blit)
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  662     
        par->image_blit(par, img->data, img->dx, img->dy,
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  663     
                        img->width, img->height, col, bgcol);
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  664     
else
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  665     
        cfb_imageblit(info, img);
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  666  }
0292be4a382957 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  667  
245a2c2c69fee3 drivers/video/tridentfb.c Krzysztof Helt     2007-10-16  668  
static void tridentfb_copyarea(struct fb_info *info,
245a2c2c69fee3 drivers/video/tridentfb.c Krzysztof Helt     2007-10-16  669     
                       const struct fb_copyarea *ca)
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  670  {
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  671     
struct tridentfb_par *par = info->par;
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  672  
01a2d9ed85c945 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  673     
if (info->flags & FBINFO_HWACCEL_DISABLED) {
01a2d9ed85c945 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  674     
        cfb_copyarea(info, ca);
01a2d9ed85c945 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  675     
        return;
01a2d9ed85c945 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  676     
}
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  677     
par->wait_engine(par);
d9cad04bcde004 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  678     
par->copy_rect(par, ca->sx, ca->sy, ca->dx, ca->dy,
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  679     
               ca->width, ca->height);
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  680  }
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  681  
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  682  
static int tridentfb_sync(struct fb_info *info)
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  683  {
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  684     
struct tridentfb_par *par = info->par;
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  685  
01a2d9ed85c945 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  686     
if (!(info->flags & FBINFO_HWACCEL_DISABLED))
d9cad04bcde004 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  687     
        par->wait_engine(par);
49b1f4b44bcdc4 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  688     
return 0;
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  689  }
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  690  
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  691  /*
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  692   * 
Hardware access functions
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  693   */
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  694  
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  695  
static inline unsigned char read3X4(struct tridentfb_par *par, int reg)
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  696  {
10172ed6dc4d40 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  697     
return vga_mm_rcrt(par->io_virt, reg);
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  698  }
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  699  
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  700  
static inline void write3X4(struct tridentfb_par *par, int reg,
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  701     
                    unsigned char val)
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  702  {
10172ed6dc4d40 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  703     
vga_mm_wcrt(par->io_virt, reg, val);
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  704  }
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  705  
10172ed6dc4d40 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  706  
static inline unsigned char read3CE(struct tridentfb_par *par,
10172ed6dc4d40 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  707     
                            unsigned char reg)
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  708  {
10172ed6dc4d40 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  709     
return vga_mm_rgfx(par->io_virt, reg);
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  710  }
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  711  
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  712  
static inline void writeAttr(struct tridentfb_par *par, int reg,
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  713     
                     unsigned char val)
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  714  {
10172ed6dc4d40 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  715     
fb_readb(par->io_virt + VGA_IS1_RC);    /* flip-flop to index */
10172ed6dc4d40 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  716     
vga_mm_wattr(par->io_virt, reg, val);
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  717  }
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  718  
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  719  
static inline void write3CE(struct tridentfb_par *par, int reg,
306fa6f60a2870 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  720     
                    unsigned char val)
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  721  {
10172ed6dc4d40 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  722     
vga_mm_wgfx(par->io_virt, reg, val);
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  723  }
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  724  
13b0de49f52ec8 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  725  
static void enable_mmio(struct tridentfb_par *par)
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  726  {
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  727     
/* Goto New Mode */
10172ed6dc4d40 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  728     
vga_io_rseq(0x0B);
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  729  
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  730     
/* Unprotect registers */
10172ed6dc4d40 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  731     
vga_io_wseq(NewMode1, 0x80);
13b0de49f52ec8 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  732     
if (!is_oldprotect(par->chip_id))
13b0de49f52ec8 drivers/video/tridentfb.c Krzysztof Helt     2008-07-23  733     
        vga_io_wseq(Protection, 0x92);
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  734  
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16  735     
/* Enable MMIO */
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16 @736     
outb(PCIReg, 0x3D4);
^1da177e4c3f41 drivers/video/tridentfb.c Linus Torvalds     2005-04-16 @737     
outb(inb(0x3D5) | 0x01, 0x3D5);
e8ed857c64e3ae drivers/video/tridentfb.c Krzysztof Helt     2008-03-04  738  }
e8ed857c64e3ae drivers/video/tridentfb.c Krzysztof Helt     2008-03-04  739  

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

:::::: TO: Linus Torvalds <torva...@ppc970.osdl.org>
:::::: CC: Linus Torvalds <torva...@ppc970.osdl.org>

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

Attachment: .config.gz
Description: application/gzip

Reply via email to