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 for Android: free password hash cracker in your pocket
[<prev] [next>] [day] [month] [year] [list]
Date:   Tue, 7 Jul 2020 18:03:04 +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/gpio/gpio-menz127.c:69:17: sparse: sparse: cast removes
 address space '__iomem' of expression

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   bfe91da29bfad9941d5d703d45e29f0812a20724
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date:   3 weeks ago
config: m68k-randconfig-s031-20200707 (attached as .config)
compiler: m68k-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-31-gabbfd661-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=m68k 

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/gpio/gpio-menz127.c:69:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/gpio/gpio-menz127.c:79:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/gpio/gpio-menz127.c:80:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/gpio/gpio-menz127.c:95:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/gpio/gpio-menz127.c:103:9: sparse: sparse: cast removes address space '__iomem' of expression
--
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:177:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:167:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
--
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/spi/spi-dw.h:162:16: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/spi/spi-dw.h:172:9: sparse: sparse: cast removes address space '__iomem' of expression
--
>> drivers/video/fbdev/68328fb.c:438:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char [noderef] __iomem *static [toplevel] screen_base @@     got void * @@
>> drivers/video/fbdev/68328fb.c:438:29: sparse:     expected char [noderef] __iomem *static [toplevel] screen_base
   drivers/video/fbdev/68328fb.c:438:29: sparse:     got void *
--
>> drivers/watchdog/dw_wdt.c:78:19: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/dw_wdt.c:87:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/dw_wdt.c:114:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/dw_wdt.c:132:19: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/dw_wdt.c:138:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/dw_wdt.c:172:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/dw_wdt.c:174:17: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/dw_wdt.c:189:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/dw_wdt.c:63:16: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/dw_wdt.c:63:16: sparse: sparse: cast removes address space '__iomem' of expression
--
>> drivers/watchdog/menz69_wdt.c:39:15: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/menz69_wdt.c:41:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/menz69_wdt.c:51:15: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/menz69_wdt.c:53:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/menz69_wdt.c:64:15: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/menz69_wdt.c:66:9: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/menz69_wdt.c:80:15: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/watchdog/menz69_wdt.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
--
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
>> sound/soc/hisilicon/hi6210-i2s.c:88:16: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/hisilicon/hi6210-i2s.c:83:9: sparse: sparse: cast removes address space '__iomem' of expression
--
>> drivers/crypto/amlogic/amlogic-gxl-core.c:31:29: sparse: sparse: cast removes address space '__iomem' of expression
   include/asm-generic/io.h:299:9: sparse: sparse: cast removes address space '__iomem' of expression
   include/asm-generic/io.h:299:9: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int volatile @@     got restricted __le32 [usertype] @@
   include/asm-generic/io.h:299:9: sparse:     expected unsigned int volatile
   include/asm-generic/io.h:299:9: sparse:     got restricted __le32 [usertype]
--
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:171:19: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __le32 [usertype] v @@     got unsigned long @@
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:171:19: sparse:     expected restricted __le32 [usertype] v
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:171:19: sparse:     got unsigned long
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:172:34: sparse: sparse: cast from restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:172:34: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int [usertype] val @@     got restricted __le32 [usertype] v @@
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:172:34: sparse:     expected unsigned int [usertype] val
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:172:34: sparse:     got restricted __le32 [usertype] v
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:172:34: sparse: sparse: cast from restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:172:34: sparse: sparse: cast from restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:172:34: sparse: sparse: cast from restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:172:34: sparse: sparse: cast from restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:215:19: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __le32 [usertype] v @@     got unsigned long @@
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:215:19: sparse:     expected restricted __le32 [usertype] v
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:215:19: sparse:     got unsigned long
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:217:27: sparse: sparse: invalid assignment: |=
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:217:27: sparse:    left side has type restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:217:27: sparse:    right side has type unsigned long
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:221:27: sparse: sparse: invalid assignment: |=
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:221:27: sparse:    left side has type restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:221:27: sparse:    right side has type unsigned long
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:222:34: sparse: sparse: cast from restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:222:34: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int [usertype] val @@     got restricted __le32 [usertype] v @@
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:222:34: sparse:     expected unsigned int [usertype] val
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:222:34: sparse:     got restricted __le32 [usertype] v
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:222:34: sparse: sparse: cast from restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:222:34: sparse: sparse: cast from restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:222:34: sparse: sparse: cast from restricted __le32
   drivers/crypto/amlogic/amlogic-gxl-cipher.c:222:34: sparse: sparse: cast from restricted __le32
>> drivers/crypto/amlogic/amlogic-gxl-cipher.c:230:9: sparse: sparse: cast removes address space '__iomem' of expression
--
   sound/soc/xilinx/xlnx_i2s.c:28:53: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void [noderef] __iomem *base @@     got void * @@
   sound/soc/xilinx/xlnx_i2s.c:28:53: sparse:     expected void [noderef] __iomem *base
   sound/soc/xilinx/xlnx_i2s.c:28:53: sparse:     got void *
>> sound/soc/xilinx/xlnx_i2s.c:33:9: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/xilinx/xlnx_i2s.c:43:53: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void [noderef] __iomem *base @@     got void * @@
   sound/soc/xilinx/xlnx_i2s.c:43:53: sparse:     expected void [noderef] __iomem *base
   sound/soc/xilinx/xlnx_i2s.c:43:53: sparse:     got void *
   sound/soc/xilinx/xlnx_i2s.c:49:17: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/xilinx/xlnx_i2s.c:59:53: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void [noderef] __iomem *base @@     got void * @@
   sound/soc/xilinx/xlnx_i2s.c:59:53: sparse:     expected void [noderef] __iomem *base
   sound/soc/xilinx/xlnx_i2s.c:59:53: sparse:     got void *
   sound/soc/xilinx/xlnx_i2s.c:65:17: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/xilinx/xlnx_i2s.c:70:17: sparse: sparse: cast removes address space '__iomem' of expression
   sound/soc/xilinx/xlnx_i2s.c:156:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void *data @@     got void [noderef] __iomem *[assigned] base @@
   sound/soc/xilinx/xlnx_i2s.c:156:37: sparse:     expected void *data
   sound/soc/xilinx/xlnx_i2s.c:156:37: sparse:     got void [noderef] __iomem *[assigned] base

vim +/__iomem +69 drivers/gpio/gpio-menz127.c

f436bc2726c645 Andreas Werner 2016-02-29  37  
f436bc2726c645 Andreas Werner 2016-02-29  38  static int men_z127_debounce(struct gpio_chip *gc, unsigned gpio,
f436bc2726c645 Andreas Werner 2016-02-29  39  			     unsigned debounce)
f436bc2726c645 Andreas Werner 2016-02-29  40  {
f436bc2726c645 Andreas Werner 2016-02-29  41  	struct men_z127_gpio *priv = gpiochip_get_data(gc);
86d3f367686852 Axel Lin       2016-03-09  42  	struct device *dev = gc->parent;
f436bc2726c645 Andreas Werner 2016-02-29  43  	unsigned int rnd;
f436bc2726c645 Andreas Werner 2016-02-29  44  	u32 db_en, db_cnt;
f436bc2726c645 Andreas Werner 2016-02-29  45  
f436bc2726c645 Andreas Werner 2016-02-29  46  	if (!MEN_Z127_DB_IN_RANGE(debounce)) {
f436bc2726c645 Andreas Werner 2016-02-29  47  		dev_err(dev, "debounce value %u out of range", debounce);
f436bc2726c645 Andreas Werner 2016-02-29  48  		return -EINVAL;
f436bc2726c645 Andreas Werner 2016-02-29  49  	}
f436bc2726c645 Andreas Werner 2016-02-29  50  
f436bc2726c645 Andreas Werner 2016-02-29  51  	if (debounce > 0) {
f436bc2726c645 Andreas Werner 2016-02-29  52  		/* round up or down depending on MSB-1 */
f436bc2726c645 Andreas Werner 2016-02-29  53  		rnd = fls(debounce) - 1;
f436bc2726c645 Andreas Werner 2016-02-29  54  
f436bc2726c645 Andreas Werner 2016-02-29  55  		if (rnd && (debounce & BIT(rnd - 1)))
7279d9917560bb Nadav Amit     2018-06-04  56  			debounce = roundup(debounce, MEN_Z127_DB_MIN_US);
f436bc2726c645 Andreas Werner 2016-02-29  57  		else
7279d9917560bb Nadav Amit     2018-06-04  58  			debounce = rounddown(debounce, MEN_Z127_DB_MIN_US);
f436bc2726c645 Andreas Werner 2016-02-29  59  
f436bc2726c645 Andreas Werner 2016-02-29  60  		if (debounce > MEN_Z127_DB_MAX_US)
f436bc2726c645 Andreas Werner 2016-02-29  61  			debounce = MEN_Z127_DB_MAX_US;
f436bc2726c645 Andreas Werner 2016-02-29  62  
f436bc2726c645 Andreas Werner 2016-02-29  63  		/* 50us per register unit */
f436bc2726c645 Andreas Werner 2016-02-29  64  		debounce /= 50;
f436bc2726c645 Andreas Werner 2016-02-29  65  	}
f436bc2726c645 Andreas Werner 2016-02-29  66  
fd975a7b180c9a Axel Lin       2016-03-09  67  	spin_lock(&gc->bgpio_lock);
f436bc2726c645 Andreas Werner 2016-02-29  68  
f436bc2726c645 Andreas Werner 2016-02-29 @69  	db_en = readl(priv->reg_base + MEN_Z127_DBER);
f436bc2726c645 Andreas Werner 2016-02-29  70  
f436bc2726c645 Andreas Werner 2016-02-29  71  	if (debounce == 0) {
f436bc2726c645 Andreas Werner 2016-02-29  72  		db_en &= ~BIT(gpio);
f436bc2726c645 Andreas Werner 2016-02-29  73  		db_cnt = 0;
f436bc2726c645 Andreas Werner 2016-02-29  74  	} else {
f436bc2726c645 Andreas Werner 2016-02-29  75  		db_en |= BIT(gpio);
f436bc2726c645 Andreas Werner 2016-02-29  76  		db_cnt = debounce;
f436bc2726c645 Andreas Werner 2016-02-29  77  	}
f436bc2726c645 Andreas Werner 2016-02-29  78  
f436bc2726c645 Andreas Werner 2016-02-29  79  	writel(db_en, priv->reg_base + MEN_Z127_DBER);
f436bc2726c645 Andreas Werner 2016-02-29  80  	writel(db_cnt, priv->reg_base + GPIO_TO_DBCNT_REG(gpio));
f436bc2726c645 Andreas Werner 2016-02-29  81  
fd975a7b180c9a Axel Lin       2016-03-09  82  	spin_unlock(&gc->bgpio_lock);
f436bc2726c645 Andreas Werner 2016-02-29  83  
f436bc2726c645 Andreas Werner 2016-02-29  84  	return 0;
f436bc2726c645 Andreas Werner 2016-02-29  85  }
f436bc2726c645 Andreas Werner 2016-02-29  86  

:::::: The code at line 69 was first introduced by commit
:::::: f436bc2726c6451bd15b63f100f00dcee52ba103 gpio: add driver for MEN 16Z127 GPIO controller

:::::: TO: Andreas Werner <andy@...nerandy.de>
:::::: CC: Linus Walleij <linus.walleij@...aro.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" (22731 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ