arch/powerpc/platforms/52xx/mpc52xx_gpt.c:532:16: sparse: sparse: cast removes address space '__iomem' of expression

From: kernel test robot
Date: Mon Aug 10 2020 - 11:32:32 EST


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

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>


sparse warnings: (new ones prefixed by >>)

arch/powerpc/platforms/52xx/mpc52xx_gpt.c:99:1: sparse: sparse: symbol 'mpc52xx_gpt_list' was not declared. Should it be static?
arch/powerpc/platforms/52xx/mpc52xx_gpt.c:100:1: sparse: sparse: symbol 'mpc52xx_gpt_list_mutex' was not declared. Should it be static?
>> arch/powerpc/platforms/52xx/mpc52xx_gpt.c:532:16: sparse: sparse: cast removes address space '__iomem' of expression
>> arch/powerpc/platforms/52xx/mpc52xx_gpt.c:532:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected unsigned char volatile [noderef] [usertype] __iomem *addr @@ got unsigned char [usertype] * @@
>> arch/powerpc/platforms/52xx/mpc52xx_gpt.c:532:16: sparse: expected unsigned char volatile [noderef] [usertype] __iomem *addr
arch/powerpc/platforms/52xx/mpc52xx_gpt.c:532:16: sparse: got unsigned char [usertype] *
>> arch/powerpc/platforms/52xx/mpc52xx_gpt.c:532:16: sparse: sparse: cast removes address space '__iomem' of expression
>> arch/powerpc/platforms/52xx/mpc52xx_gpt.c:532:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected unsigned char volatile [noderef] [usertype] __iomem *addr @@ got unsigned char [usertype] * @@
>> arch/powerpc/platforms/52xx/mpc52xx_gpt.c:532:16: sparse: expected unsigned char volatile [noderef] [usertype] __iomem *addr
arch/powerpc/platforms/52xx/mpc52xx_gpt.c:532:16: sparse: got unsigned char [usertype] *
--
drivers/ide/pmac.c:228:23: sparse: sparse: symbol 'mdma_timings_33' was not declared. Should it be static?
drivers/ide/pmac.c:241:23: sparse: sparse: symbol 'mdma_timings_33k' was not declared. Should it be static?
drivers/ide/pmac.c:254:23: sparse: sparse: symbol 'mdma_timings_66' was not declared. Should it be static?
drivers/ide/pmac.c:272:3: sparse: sparse: symbol 'kl66_udma_timings' was not declared. Should it be static?
drivers/ide/pmac.c:1680:46: sparse: sparse: Using plain integer as NULL pointer
>> drivers/ide/pmac.c:868:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr @@
>> drivers/ide/pmac.c:868:37: sparse: expected void const volatile [noderef] __iomem *addr
>> drivers/ide/pmac.c:868:37: sparse: got unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr
>> drivers/ide/pmac.c:870:33: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr @@
>> drivers/ide/pmac.c:870:33: sparse: expected void volatile [noderef] __iomem *addr
drivers/ide/pmac.c:870:33: sparse: got unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr
drivers/ide/pmac.c:894:45: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr @@
drivers/ide/pmac.c:894:45: sparse: expected void const volatile [noderef] __iomem *addr
drivers/ide/pmac.c:894:45: sparse: got unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr
drivers/ide/pmac.c:896:41: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr @@
drivers/ide/pmac.c:896:41: sparse: expected void volatile [noderef] __iomem *addr
drivers/ide/pmac.c:896:41: sparse: got unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr
drivers/ide/pmac.c:1063:51: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr @@
drivers/ide/pmac.c:1063:51: sparse: expected void volatile [noderef] __iomem *addr
drivers/ide/pmac.c:1063:51: sparse: got unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr
>> drivers/ide/pmac.c:1294:25: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr @@ got void [noderef] __iomem *[assigned] base @@
>> drivers/ide/pmac.c:1294:25: sparse: expected unsigned int volatile [noderef] [usertype] __iomem **[usertype] kauai_fcr
>> drivers/ide/pmac.c:1294:25: sparse: got void [noderef] __iomem *[assigned] base
drivers/ide/pmac.c:1418:12: sparse: sparse: symbol 'pmac_ide_probe' was not declared. Should it be static?

vim +/__iomem +532 arch/powerpc/platforms/52xx/mpc52xx_gpt.c

eda43d16ef3d0b Albrecht Dreß 2009-11-13 525
eda43d16ef3d0b Albrecht Dreß 2009-11-13 526 /* low-level wdt functions */
eda43d16ef3d0b Albrecht Dreß 2009-11-13 527 static inline void mpc52xx_gpt_wdt_ping(struct mpc52xx_gpt_priv *gpt_wdt)
eda43d16ef3d0b Albrecht Dreß 2009-11-13 528 {
eda43d16ef3d0b Albrecht Dreß 2009-11-13 529 unsigned long flags;
eda43d16ef3d0b Albrecht Dreß 2009-11-13 530
77720c82915a8b Julia Cartwright 2017-03-21 531 raw_spin_lock_irqsave(&gpt_wdt->lock, flags);
eda43d16ef3d0b Albrecht Dreß 2009-11-13 @532 out_8((u8 *) &gpt_wdt->regs->mode, MPC52xx_GPT_MODE_WDT_PING);
77720c82915a8b Julia Cartwright 2017-03-21 533 raw_spin_unlock_irqrestore(&gpt_wdt->lock, flags);
eda43d16ef3d0b Albrecht Dreß 2009-11-13 534 }
eda43d16ef3d0b Albrecht Dreß 2009-11-13 535

:::::: The code at line 532 was first introduced by commit
:::::: eda43d16ef3d0bd59e3b762de3ffc73bab02efe9 mpc52xx/wdt: merge WDT code into the GPT driver

:::::: TO: Albrecht Dreß <albrecht.dress@xxxxxxxx>
:::::: CC: Grant Likely <grant.likely@xxxxxxxxxxxx>

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

Attachment: .config.gz
Description: application/gzip