arch/powerpc/platforms/44x/ppc476.c:242:34: sparse: sparse: incorrect type in argument 1 (different address spaces)

From: kernel test robot
Date: Tue Sep 08 2020 - 21:09:26 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 34d4ddd359dbcdf6c5fb3f85a179243d7a1cb7f8
commit: 8f28ca6bd8211214faf717677bbffe375c2a6072 iomap: constify ioreadX() iomem argument (as in generic implementation)
date: 4 weeks ago
config: powerpc64-randconfig-s032-20200909 (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-191-g10164920-dirty
git checkout 8f28ca6bd8211214faf717677bbffe375c2a6072
# 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=powerpc64

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/44x/ppc476.c:237:17: sparse: sparse: cast removes address space '__iomem' of expression
>> arch/powerpc/platforms/44x/ppc476.c:242:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned char [usertype] * @@
>> arch/powerpc/platforms/44x/ppc476.c:242:34: sparse: expected void const [noderef] __iomem *
arch/powerpc/platforms/44x/ppc476.c:242:34: sparse: got unsigned char [usertype] *
arch/powerpc/platforms/44x/ppc476.c:244:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned char [usertype] *[assigned] fpga @@
arch/powerpc/platforms/44x/ppc476.c:244:17: sparse: expected void volatile [noderef] __iomem *addr
arch/powerpc/platforms/44x/ppc476.c:244:17: sparse: got unsigned char [usertype] *[assigned] fpga
--
drivers/dma/ppc4xx/adma.c:73:1: sparse: sparse: symbol 'ppc440spe_adma_chan_list' was not declared. Should it be static?
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:140:17: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:543:35: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] sg1l @@ got restricted __le32 [usertype] @@
drivers/dma/ppc4xx/adma.c:543:35: sparse: expected unsigned int [usertype] sg1l
drivers/dma/ppc4xx/adma.c:543:35: sparse: got restricted __le32 [usertype]
drivers/dma/ppc4xx/adma.c:544:35: sparse: sparse: invalid assignment: |=
drivers/dma/ppc4xx/adma.c:544:35: sparse: left side has type unsigned int
drivers/dma/ppc4xx/adma.c:544:35: sparse: right side has type restricted __le32
drivers/dma/ppc4xx/adma.c:590:23: sparse: sparse: invalid assignment: |=
drivers/dma/ppc4xx/adma.c:590:23: sparse: left side has type unsigned int
drivers/dma/ppc4xx/adma.c:590:23: sparse: right side has type restricted __le32
drivers/dma/ppc4xx/adma.c:629:23: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] @@ got restricted __le32 [usertype] @@
drivers/dma/ppc4xx/adma.c:629:23: sparse: expected unsigned int [usertype]
drivers/dma/ppc4xx/adma.c:629:23: sparse: got restricted __le32 [usertype]
drivers/dma/ppc4xx/adma.c:630:23: sparse: sparse: invalid assignment: |=
drivers/dma/ppc4xx/adma.c:630:23: sparse: left side has type unsigned int
drivers/dma/ppc4xx/adma.c:630:23: sparse: right side has type restricted __le32
drivers/dma/ppc4xx/adma.c:655:34: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] cnt @@ got restricted __le32 [usertype] @@
drivers/dma/ppc4xx/adma.c:655:34: sparse: expected unsigned int [usertype] cnt
drivers/dma/ppc4xx/adma.c:655:34: sparse: got restricted __le32 [usertype]
drivers/dma/ppc4xx/adma.c:688:38: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:688:38: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:688:38: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:689:38: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:689:38: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:689:38: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:690:38: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:690:38: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:690:38: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:691:39: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:691:39: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:691:39: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:738:69: sparse: sparse: Using plain integer as NULL pointer
drivers/dma/ppc4xx/adma.c:1187:25: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct dma_regs *dma_reg @@ got struct dma_regs [noderef] __iomem *dma_reg @@
drivers/dma/ppc4xx/adma.c:1187:25: sparse: expected struct dma_regs *dma_reg
drivers/dma/ppc4xx/adma.c:1187:25: sparse: got struct dma_regs [noderef] __iomem *dma_reg
>> drivers/dma/ppc4xx/adma.c:1188:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
>> drivers/dma/ppc4xx/adma.c:1188:34: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1188:34: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1190:25: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct xor_regs *xor_reg @@ got struct xor_regs [noderef] __iomem *xor_reg @@
drivers/dma/ppc4xx/adma.c:1190:25: sparse: expected struct xor_regs *xor_reg
drivers/dma/ppc4xx/adma.c:1190:25: sparse: got struct xor_regs [noderef] __iomem *xor_reg
drivers/dma/ppc4xx/adma.c:1191:36: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1191:36: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1191:36: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1138:25: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct xor_regs *xor_reg @@ got struct xor_regs [noderef] __iomem *xor_reg @@
drivers/dma/ppc4xx/adma.c:1138:25: sparse: expected struct xor_regs *xor_reg
drivers/dma/ppc4xx/adma.c:1138:25: sparse: got struct xor_regs [noderef] __iomem *xor_reg
drivers/dma/ppc4xx/adma.c:1147:35: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1147:35: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1147:35: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1157:49: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1157:49: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1157:49: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1159:38: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1159:38: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1159:38: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:911:25: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct dma_regs *dma_reg @@ got struct dma_regs [noderef] __iomem *dma_reg @@
drivers/dma/ppc4xx/adma.c:911:25: sparse: expected struct dma_regs *dma_reg
drivers/dma/ppc4xx/adma.c:911:25: sparse: got struct dma_regs [noderef] __iomem *dma_reg
drivers/dma/ppc4xx/adma.c:912:40: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:912:40: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:912:40: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:929:37: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:929:37: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:929:37: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:929:37: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:929:37: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:929:37: sparse: sparse: cast to restricted __le32
drivers/dma/ppc4xx/adma.c:974:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:974:32: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:974:32: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:979:40: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:979:40: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:979:40: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:984:25: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct xor_regs *xor_reg @@ got struct xor_regs [noderef] __iomem *xor_reg @@
drivers/dma/ppc4xx/adma.c:984:25: sparse: expected struct xor_regs *xor_reg
drivers/dma/ppc4xx/adma.c:984:25: sparse: got struct xor_regs [noderef] __iomem *xor_reg
drivers/dma/ppc4xx/adma.c:985:34: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:985:34: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:985:34: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:986:34: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:986:34: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:986:34: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:993:55: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:993:55: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:993:55: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:995:51: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:995:51: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:995:51: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:997:51: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:997:51: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:997:51: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:999:46: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:999:46: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:999:46: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1008:35: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1008:35: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1008:35: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1027:25: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct dma_regs *dma_reg @@ got struct dma_regs [noderef] __iomem *dma_reg @@
drivers/dma/ppc4xx/adma.c:1027:25: sparse: expected struct dma_regs *dma_reg
drivers/dma/ppc4xx/adma.c:1027:25: sparse: got struct dma_regs [noderef] __iomem *dma_reg
>> drivers/dma/ppc4xx/adma.c:1031:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned short * @@
drivers/dma/ppc4xx/adma.c:1031:31: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1031:31: sparse: got unsigned short *
drivers/dma/ppc4xx/adma.c:1031:60: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned short * @@
drivers/dma/ppc4xx/adma.c:1031:60: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1031:60: sparse: got unsigned short *
drivers/dma/ppc4xx/adma.c:1032:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned short * @@
drivers/dma/ppc4xx/adma.c:1032:31: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1032:31: sparse: got unsigned short *
drivers/dma/ppc4xx/adma.c:1032:60: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned short * @@
drivers/dma/ppc4xx/adma.c:1032:60: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1032:60: sparse: got unsigned short *
drivers/dma/ppc4xx/adma.c:1038:25: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct xor_regs *xor_reg @@ got struct xor_regs [noderef] __iomem *xor_reg @@
drivers/dma/ppc4xx/adma.c:1038:25: sparse: expected struct xor_regs *xor_reg
drivers/dma/ppc4xx/adma.c:1038:25: sparse: got struct xor_regs [noderef] __iomem *xor_reg
drivers/dma/ppc4xx/adma.c:1039:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1039:37: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1039:37: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1053:48: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct xor_regs *xor_reg @@ got struct xor_regs [noderef] __iomem *xor_reg @@
drivers/dma/ppc4xx/adma.c:1053:48: sparse: expected struct xor_regs *xor_reg
drivers/dma/ppc4xx/adma.c:1053:48: sparse: got struct xor_regs [noderef] __iomem *xor_reg
drivers/dma/ppc4xx/adma.c:1055:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1055:25: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1055:25: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1062:41: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1062:41: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1062:41: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1064:39: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1064:39: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1064:39: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1065:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1065:25: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1065:25: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1066:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1066:33: sparse: expected void const [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1066:33: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1067:22: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1067:22: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1067:22: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1080:48: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected struct dma_regs *dma_reg @@ got struct dma_regs [noderef] __iomem *dma_reg @@
drivers/dma/ppc4xx/adma.c:1080:48: sparse: expected struct dma_regs *dma_reg
drivers/dma/ppc4xx/adma.c:1080:48: sparse: got struct dma_regs [noderef] __iomem *dma_reg
drivers/dma/ppc4xx/adma.c:1090:26: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1090:26: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1090:26: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:1210:25: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct xor_regs *xor_reg @@ got struct xor_regs [noderef] __iomem *xor_reg @@
drivers/dma/ppc4xx/adma.c:1210:25: sparse: expected struct xor_regs *xor_reg
drivers/dma/ppc4xx/adma.c:1210:25: sparse: got struct xor_regs [noderef] __iomem *xor_reg
drivers/dma/ppc4xx/adma.c:1214:30: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem * @@ got unsigned int * @@
drivers/dma/ppc4xx/adma.c:1214:30: sparse: expected void [noderef] __iomem *
drivers/dma/ppc4xx/adma.c:1214:30: sparse: got unsigned int *
drivers/dma/ppc4xx/adma.c:2777:62: sparse: sparse: Using plain integer as NULL pointer
drivers/dma/ppc4xx/adma.c:4094:14: sparse: sparse: too many warnings

# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=8f28ca6bd8211214faf717677bbffe375c2a6072
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 8f28ca6bd8211214faf717677bbffe375c2a6072
vim +242 arch/powerpc/platforms/44x/ppc476.c

228d55053397e6 arch/powerpc/platforms/44x/currituck.c Tony Breeds 2011-11-30 218
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 219 static int board_rev = -1;
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 220 static int __init ppc47x_get_board_rev(void)
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 221 {
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 222 int reg;
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 223 u8 *fpga;
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 224 struct device_node *np = NULL;
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 225
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 226 if (of_machine_is_compatible("ibm,currituck")) {
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 227 np = of_find_compatible_node(NULL, NULL, "ibm,currituck-fpga");
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 228 reg = 0;
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 229 } else if (of_machine_is_compatible("ibm,akebono")) {
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 230 np = of_find_compatible_node(NULL, NULL, "ibm,akebono-fpga");
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 231 reg = 2;
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 232 }
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 233
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 234 if (!np)
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 235 goto fail;
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 236
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 237 fpga = (u8 *) of_iomap(np, 0);
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 238 of_node_put(np);
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 239 if (!fpga)
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 240 goto fail;
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 241
2a2c74b2efcb1a arch/powerpc/platforms/44x/ppc476.c Alistair Popple 2014-03-06 @242 board_rev = ioread8(fpga + reg) & 0x03;
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 243 pr_info("%s: Found board revision %d\n", __func__, board_rev);
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 244 iounmap(fpga);
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 245 return 0;
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 246
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 247 fail:
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 248 pr_info("%s: Unable to find board revision\n", __func__);
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 249 return 0;
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 250 }
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 251 machine_arch_initcall(ppc47x, ppc47x_get_board_rev);
ab9a4183fddf23 arch/powerpc/platforms/44x/currituck.c Alistair Popple 2013-05-09 252

:::::: The code at line 242 was first introduced by commit
:::::: 2a2c74b2efcb1a0ca3fdcb5fbb96ad8de6a29177 IBM Akebono: Add the Akebono platform

:::::: TO: Alistair Popple <alistair@xxxxxxxxxxxx>
:::::: CC: Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>

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

Attachment: .config.gz
Description: application/gzip