[linux-next:master 8973/12727] drivers/soc/fsl/qe/gpio.c:43:34: sparse: sparse: incorrect type in assignment (different base types)

kernel test robot <[email protected]> Wed, 05 Aug 2026 19:55:25 +0800
Newsgroups dev.linux.lists.oe-kbuild-all
Message-ID <[email protected]>
tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   0f6da28aab51b16762ed82e8fdeaa5042da45b08
commit: 21d055109b2352542ac293872ca9113b42b6c55e [8973/12727] powerpc: Move CONFIG_QE_GPIO to SoC
config: arc-randconfig-r132-20260805 (https://download.01.org/0day-ci/archive/20260805/[email protected]/config)
compiler: arc-linux-gcc (GCC) 8.5.0
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260805/[email protected]/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <[email protected]>
| Closes: https://lore.kernel.org/oe-kbuild-all/[email protected]/

sparse warnings: (new ones prefixed by >>)
   drivers/soc/fsl/qe/gpio.c:42:34: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] cpdata @@     got unsigned int [usertype] cpdata @@
   drivers/soc/fsl/qe/gpio.c:42:34: sparse:     expected restricted __be32 [usertype] cpdata
   drivers/soc/fsl/qe/gpio.c:42:34: sparse:     got unsigned int [usertype] cpdata
>> drivers/soc/fsl/qe/gpio.c:43:34: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] cpdir1 @@     got unsigned int [usertype] __v @@
   drivers/soc/fsl/qe/gpio.c:43:34: sparse:     expected restricted __be32 [usertype] cpdir1
   drivers/soc/fsl/qe/gpio.c:43:34: sparse:     got unsigned int [usertype] __v
>> drivers/soc/fsl/qe/gpio.c:44:34: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] cpdir2 @@     got unsigned int [usertype] __v @@
   drivers/soc/fsl/qe/gpio.c:44:34: sparse:     expected restricted __be32 [usertype] cpdir2
   drivers/soc/fsl/qe/gpio.c:44:34: sparse:     got unsigned int [usertype] __v
>> drivers/soc/fsl/qe/gpio.c:45:34: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] cppar1 @@     got unsigned int [usertype] __v @@
   drivers/soc/fsl/qe/gpio.c:45:34: sparse:     expected restricted __be32 [usertype] cppar1
   drivers/soc/fsl/qe/gpio.c:45:34: sparse:     got unsigned int [usertype] __v
>> drivers/soc/fsl/qe/gpio.c:46:34: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] cppar2 @@     got unsigned int [usertype] __v @@
   drivers/soc/fsl/qe/gpio.c:46:34: sparse:     expected restricted __be32 [usertype] cppar2
   drivers/soc/fsl/qe/gpio.c:46:34: sparse:     got unsigned int [usertype] __v
>> drivers/soc/fsl/qe/gpio.c:47:33: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] cpodr @@     got unsigned int [usertype] __v @@
   drivers/soc/fsl/qe/gpio.c:47:33: sparse:     expected restricted __be32 [usertype] cpodr
   drivers/soc/fsl/qe/gpio.c:47:33: sparse:     got unsigned int [usertype] __v
   drivers/soc/fsl/qe/gpio.c:248:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:248:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:248:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:248:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:248:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:248:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:250:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:250:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:250:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:250:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:250:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:250:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:253:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:253:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:253:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:253:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:253:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:253:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:255:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:255:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:255:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:255:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:255:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:255:17: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:259:18: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:265:9: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:265:9: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:265:9: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:265:9: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:265:9: sparse: sparse: restricted __be32 degrades to integer
   drivers/soc/fsl/qe/gpio.c:265:9: sparse: sparse: restricted __be32 degrades to integer

vim +43 drivers/soc/fsl/qe/gpio.c

32def337aafee0b arch/powerpc/sysdev/qe_lib/gpio.c Anton Vorontsov  2008-05-19  36  
e9713655b29a47d drivers/soc/fsl/qe/gpio.c         Christophe Leroy 2025-09-18  37  static void qe_gpio_save_regs(struct qe_gpio_chip *qe_gc)
32def337aafee0b arch/powerpc/sysdev/qe_lib/gpio.c Anton Vorontsov  2008-05-19  38  {
e9713655b29a47d drivers/soc/fsl/qe/gpio.c         Christophe Leroy 2025-09-18  39  	struct qe_pio_regs __iomem *regs = qe_gc->regs;
32def337aafee0b arch/powerpc/sysdev/qe_lib/gpio.c Anton Vorontsov  2008-05-19  40  
3f39f38ea91dc26 drivers/soc/fsl/qe/gpio.c         Christophe Leroy 2021-03-06  41  	qe_gc->cpdata = ioread32be(&regs->cpdata);
1b9e89046c31fd3 arch/powerpc/sysdev/qe_lib/gpio.c Anton Vorontsov  2008-12-03  42  	qe_gc->saved_regs.cpdata = qe_gc->cpdata;
3f39f38ea91dc26 drivers/soc/fsl/qe/gpio.c         Christophe Leroy 2021-03-06 @43  	qe_gc->saved_regs.cpdir1 = ioread32be(&regs->cpdir1);
3f39f38ea91dc26 drivers/soc/fsl/qe/gpio.c         Christophe Leroy 2021-03-06 @44  	qe_gc->saved_regs.cpdir2 = ioread32be(&regs->cpdir2);
3f39f38ea91dc26 drivers/soc/fsl/qe/gpio.c         Christophe Leroy 2021-03-06 @45  	qe_gc->saved_regs.cppar1 = ioread32be(&regs->cppar1);
3f39f38ea91dc26 drivers/soc/fsl/qe/gpio.c         Christophe Leroy 2021-03-06 @46  	qe_gc->saved_regs.cppar2 = ioread32be(&regs->cppar2);
3f39f38ea91dc26 drivers/soc/fsl/qe/gpio.c         Christophe Leroy 2021-03-06 @47  	qe_gc->saved_regs.cpodr = ioread32be(&regs->cpodr);
32def337aafee0b arch/powerpc/sysdev/qe_lib/gpio.c Anton Vorontsov  2008-05-19  48  }
32def337aafee0b arch/powerpc/sysdev/qe_lib/gpio.c Anton Vorontsov  2008-05-19  49  

:::::: The code at line 43 was first introduced by commit
:::::: 3f39f38ea91dc2603dcb7dc8a16ee3dbe10bd34b soc: fsl: qe: replace qe_io{read,write}* wrappers by generic io{read,write}*

:::::: TO: Christophe Leroy <[email protected]>
:::::: CC: Li Yang <[email protected]>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki