tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 1df27313f50a57497c1faeb6a6ae4ca939c85a7d commit: 9b0dfef4755301d9f7fcef63e2f64d23649bebb4 ethernet: ucc_geth: simplify rx/tx allocations date: 8 weeks ago config: powerpc-randconfig-s031-20210317 (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.3-277-gc089cd2d-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9b0dfef4755301d9f7fcef63e2f64d23649bebb4 git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git git fetch --no-tags linus master git checkout 9b0dfef4755301d9f7fcef63e2f64d23649bebb4 # 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 <l...@intel.com> sparse warnings: (new ones prefixed by >>) drivers/net/ethernet/freescale/ucc_geth.c:243:21: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:243:21: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:243:21: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:404:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short volatile [noderef] [usertype] __iomem *addr @@ got restricted __be16 [noderef] [usertype] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:404:22: sparse: expected unsigned short volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:404:22: sparse: got restricted __be16 [noderef] [usertype] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:405:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short volatile [noderef] [usertype] __iomem *addr @@ got restricted __be16 [noderef] [usertype] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:405:22: sparse: expected unsigned short volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:405:22: sparse: got restricted __be16 [noderef] [usertype] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:406:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short volatile [noderef] [usertype] __iomem *addr @@ got restricted __be16 [noderef] [usertype] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:406:22: sparse: expected unsigned short volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:406:22: sparse: got restricted __be16 [noderef] [usertype] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:448:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected restricted __be16 [noderef] [usertype] __iomem *reg @@ got unsigned short [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:448:23: sparse: expected restricted __be16 [noderef] [usertype] __iomem *reg drivers/net/ethernet/freescale/ucc_geth.c:448:23: sparse: got unsigned short [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1316:26: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1316:26: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1316:26: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1343:19: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1343:19: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1343:19: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1389:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:1389:9: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1389:9: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm drivers/net/ethernet/freescale/ucc_geth.c:1389:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:1389:9: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1389:9: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm drivers/net/ethernet/freescale/ucc_geth.c:1390:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_ucce @@ drivers/net/ethernet/freescale/ucc_geth.c:1390:22: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1390:22: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_ucce drivers/net/ethernet/freescale/ucc_geth.c:1401:36: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_ucce @@ drivers/net/ethernet/freescale/ucc_geth.c:1401:36: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1401:36: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_ucce drivers/net/ethernet/freescale/ucc_geth.c:1570:38: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1570:38: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1570:38: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1635:35: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1635:35: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1635:35: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1823:41: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1823:41: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1823:41: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1838:50: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const * @@ got unsigned char [noderef] [usertype] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1838:50: sparse: expected void const * drivers/net/ethernet/freescale/ucc_geth.c:1838:50: sparse: got unsigned char [noderef] [usertype] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1863:33: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1863:33: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1863:33: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1875:42: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const * @@ got unsigned char [noderef] [usertype] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1875:42: sparse: expected void const * drivers/net/ethernet/freescale/ucc_geth.c:1875:42: sparse: got unsigned char [noderef] [usertype] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1964:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1964:17: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1964:17: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1964:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1964:17: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1964:17: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1966:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1966:17: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1966:17: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:1966:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:1966:17: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:1966:17: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2012:29: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:2012:29: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:2012:29: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm drivers/net/ethernet/freescale/ucc_geth.c:2015:29: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_ucce @@ drivers/net/ethernet/freescale/ucc_geth.c:2015:29: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:2015:29: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_ucce drivers/net/ethernet/freescale/ucc_geth.c:2159:40: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [noderef] [usertype] __iomem * @@ got void * @@ drivers/net/ethernet/freescale/ucc_geth.c:2159:40: sparse: expected unsigned char [noderef] [usertype] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2159:40: sparse: got void * >> drivers/net/ethernet/freescale/ucc_geth.c:2167:47: sparse: sparse: incorrect >> type in argument 1 (different address spaces) @@ expected void * @@ >> got unsigned char [noderef] [usertype] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:2167:47: sparse: expected void * drivers/net/ethernet/freescale/ucc_geth.c:2167:47: sparse: got unsigned char [noderef] [usertype] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2187:37: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:2187:37: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:2187:37: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2220:40: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [noderef] [usertype] __iomem * @@ got void * @@ drivers/net/ethernet/freescale/ucc_geth.c:2220:40: sparse: expected unsigned char [noderef] [usertype] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2220:40: sparse: got void * drivers/net/ethernet/freescale/ucc_geth.c:2247:37: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:2247:37: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:2247:37: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2309:32: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [noderef] [usertype] __iomem *upsmr_register @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:2309:32: sparse: expected unsigned int [noderef] [usertype] __iomem *upsmr_register drivers/net/ethernet/freescale/ucc_geth.c:2309:32: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2315:57: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected unsigned int [noderef] [usertype] __iomem *upsmr_register @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:2315:57: sparse: expected unsigned int [noderef] [usertype] __iomem *upsmr_register drivers/net/ethernet/freescale/ucc_geth.c:2315:57: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2327:35: sparse: sparse: incorrect type in argument 6 (different base types) @@ expected unsigned int [noderef] [usertype] __iomem *upsmr_register @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:2327:35: sparse: expected unsigned int [noderef] [usertype] __iomem *upsmr_register drivers/net/ethernet/freescale/ucc_geth.c:2327:35: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2375:37: sparse: sparse: incorrect type in argument 3 (different base types) @@ expected unsigned int [noderef] [usertype] __iomem *upsmr_register @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:2375:37: sparse: expected unsigned int [noderef] [usertype] __iomem *upsmr_register drivers/net/ethernet/freescale/ucc_geth.c:2375:37: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2453:64: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile *address @@ got unsigned char [noderef] [usertype] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:2453:64: sparse: expected void volatile *address drivers/net/ethernet/freescale/ucc_geth.c:2453:64: sparse: got unsigned char [noderef] [usertype] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2456:45: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile *address @@ got unsigned char [noderef] [usertype] __iomem *[assigned] endOfRing @@ drivers/net/ethernet/freescale/ucc_geth.c:2456:45: sparse: expected void volatile *address drivers/net/ethernet/freescale/ucc_geth.c:2456:45: sparse: got unsigned char [noderef] [usertype] __iomem *[assigned] endOfRing drivers/net/ethernet/freescale/ucc_geth.c:2676:64: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void volatile *address @@ got unsigned char [noderef] [usertype] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:2676:64: sparse: expected void volatile *address drivers/net/ethernet/freescale/ucc_geth.c:2676:64: sparse: got unsigned char [noderef] [usertype] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:2943:21: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:2943:21: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:2943:21: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:3009:46: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@ drivers/net/ethernet/freescale/ucc_geth.c:3009:46: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3009:46: sparse: got restricted __be32 [noderef] __iomem * drivers/net/ethernet/freescale/ucc_geth.c:3137:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:3137:17: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3137:17: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm drivers/net/ethernet/freescale/ucc_geth.c:3137:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:3137:17: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3137:17: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm drivers/net/ethernet/freescale/ucc_geth.c:3158:34: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_ucce @@ drivers/net/ethernet/freescale/ucc_geth.c:3158:34: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3158:34: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_ucce drivers/net/ethernet/freescale/ucc_geth.c:3159:34: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:3159:34: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3159:34: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm drivers/net/ethernet/freescale/ucc_geth.c:3161:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_ucce @@ drivers/net/ethernet/freescale/ucc_geth.c:3161:22: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3161:22: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_ucce drivers/net/ethernet/freescale/ucc_geth.c:3167:38: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:3167:38: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3167:38: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm drivers/net/ethernet/freescale/ucc_geth.c:3413:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:3413:17: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3413:17: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm drivers/net/ethernet/freescale/ucc_geth.c:3413:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:3413:17: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3413:17: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm drivers/net/ethernet/freescale/ucc_geth.c:3436:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:3436:25: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3436:25: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm drivers/net/ethernet/freescale/ucc_geth.c:3436:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] [usertype] __iomem *p_uccm @@ drivers/net/ethernet/freescale/ucc_geth.c:3436:25: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr drivers/net/ethernet/freescale/ucc_geth.c:3436:25: sparse: got restricted __be32 [noderef] [usertype] __iomem *p_uccm vim +2167 drivers/net/ethernet/freescale/ucc_geth.c 2137 2138 static int ucc_geth_alloc_tx(struct ucc_geth_private *ugeth) 2139 { 2140 struct ucc_geth_info *ug_info; 2141 struct ucc_fast_info *uf_info; 2142 int length; 2143 u16 i, j; 2144 u8 __iomem *bd; 2145 2146 ug_info = ugeth->ug_info; 2147 uf_info = &ug_info->uf_info; 2148 2149 /* Allocate Tx bds */ 2150 for (j = 0; j < ucc_geth_tx_queues(ug_info); j++) { 2151 u32 align = max(UCC_GETH_TX_BD_RING_ALIGNMENT, 2152 UCC_GETH_TX_BD_RING_SIZE_MEMORY_ALIGNMENT); 2153 u32 alloc; 2154 2155 length = ug_info->bdRingLenTx[j] * sizeof(struct qe_bd); 2156 alloc = round_up(length, align); 2157 alloc = roundup_pow_of_two(alloc); 2158 2159 ugeth->p_tx_bd_ring[j] = kmalloc(alloc, GFP_KERNEL); 2160 2161 if (!ugeth->p_tx_bd_ring[j]) { 2162 if (netif_msg_ifup(ugeth)) 2163 pr_err("Can not allocate memory for Tx bd rings\n"); 2164 return -ENOMEM; 2165 } 2166 /* Zero unused end of bd ring, according to spec */ > 2167 memset(ugeth->p_tx_bd_ring[j] + length, 0, alloc - > length); 2168 } 2169 2170 /* Init Tx bds */ 2171 for (j = 0; j < ucc_geth_tx_queues(ug_info); j++) { 2172 /* Setup the skbuff rings */ 2173 ugeth->tx_skbuff[j] = 2174 kcalloc(ugeth->ug_info->bdRingLenTx[j], 2175 sizeof(struct sk_buff *), GFP_KERNEL); 2176 2177 if (ugeth->tx_skbuff[j] == NULL) { 2178 if (netif_msg_ifup(ugeth)) 2179 pr_err("Could not allocate tx_skbuff\n"); 2180 return -ENOMEM; 2181 } 2182 2183 ugeth->skb_curtx[j] = ugeth->skb_dirtytx[j] = 0; 2184 bd = ugeth->confBd[j] = ugeth->txBd[j] = ugeth->p_tx_bd_ring[j]; 2185 for (i = 0; i < ug_info->bdRingLenTx[j]; i++) { 2186 /* clear bd buffer */ 2187 out_be32(&((struct qe_bd __iomem *)bd)->buf, 0); 2188 /* set bd status and length */ 2189 out_be32((u32 __iomem *)bd, 0); 2190 bd += sizeof(struct qe_bd); 2191 } 2192 bd -= sizeof(struct qe_bd); 2193 /* set bd status and length */ 2194 out_be32((u32 __iomem *)bd, T_W); /* for last BD set Wrap bit */ 2195 } 2196 2197 return 0; 2198 } 2199 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org
.config.gz
Description: application/gzip