lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Tue, 11 Aug 2020 13:56:38 +0800
From:   kernel test robot <lkp@...el.com>
To:     Luc Van Oostenryck <luc.vanoostenryck@...il.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: drivers/video/fbdev/tridentfb.c:736:9: sparse: sparse: incorrect
 type in argument 2 (different address spaces)

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 <lkp@...el.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 <torvalds@...970.osdl.org>
:::::: CC: Linus Torvalds <torvalds@...970.osdl.org>

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

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ