* [linux-next:master 5730/16300] drivers/dma/fsl_raid.c:116:17: sparse: sparse: incorrect type in argument 1 (different base types)
@ 2026-08-19 22:22 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-08-19 22:22 UTC (permalink / raw)
To: Rosen Penev; +Cc: oe-kbuild-all, Vinod Koul, Frank Li
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 6a746cd265aed59107ebdaa9ce039bb832922969
commit: 68b7fbc235290937e4e2daa097896b6b94618f15 [5730/16300] dma: fsl_raid: keep MMIO bases as void __iomem and cast at access
config: powerpc64-randconfig-r131-20260820 (https://download.01.org/0day-ci/archive/20260820/202608200637.ro1CqMxi-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260820/202608200637.ro1CqMxi-lkp@intel.com/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 <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202608200637.ro1CqMxi-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> drivers/dma/fsl_raid.c:116: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/dma/fsl_raid.c:116:17: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr
drivers/dma/fsl_raid.c:116:17: sparse: got restricted __be32 [noderef] __iomem *
>> drivers/dma/fsl_raid.c:130:34: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:130:34: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr
drivers/dma/fsl_raid.c:130:34: sparse: got restricted __be32 [noderef] __iomem *
drivers/dma/fsl_raid.c:170: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/dma/fsl_raid.c:170:17: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr
drivers/dma/fsl_raid.c:170:17: sparse: got restricted __be32 [noderef] __iomem *
drivers/dma/fsl_raid.c:195:34: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:195:34: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr
drivers/dma/fsl_raid.c:195:34: sparse: got restricted __be32 [noderef] __iomem *
drivers/dma/fsl_raid.c:209:36: 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/dma/fsl_raid.c:209:36: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr
drivers/dma/fsl_raid.c:209:36: sparse: got restricted __be32 [noderef] __iomem *
drivers/dma/fsl_raid.c:219:42: 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/dma/fsl_raid.c:219:42: sparse: expected unsigned int const volatile [noderef] [usertype] __iomem *addr
drivers/dma/fsl_raid.c:219:42: sparse: got restricted __be32 [noderef] __iomem *
drivers/dma/fsl_raid.c:225:26: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:225:26: sparse: expected unsigned int volatile [noderef] [usertype] __iomem *addr
drivers/dma/fsl_raid.c:225:26: sparse: got restricted __be32 [noderef] __iomem *
drivers/dma/fsl_raid.c:338:18: sparse: sparse: incompatible types for operation (<=):
drivers/dma/fsl_raid.c:338:18: sparse: struct fsl_re_desc *[assigned] desc
drivers/dma/fsl_raid.c:338:18: sparse: int
drivers/dma/fsl_raid.c:462:18: sparse: sparse: incompatible types for operation (<=):
drivers/dma/fsl_raid.c:462:18: sparse: struct fsl_re_desc *[assigned] desc
drivers/dma/fsl_raid.c:462:18: sparse: int
drivers/dma/fsl_raid.c:546:18: sparse: sparse: incompatible types for operation (<=):
drivers/dma/fsl_raid.c:546:18: sparse: struct fsl_re_desc *[assigned] desc
drivers/dma/fsl_raid.c:546:18: sparse: int
drivers/dma/fsl_raid.c:711:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:713:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:715:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:717:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:719:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:721:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:725:31: 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/dma/fsl_raid.c:728:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:734:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
drivers/dma/fsl_raid.c:773: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/dma/fsl_raid.c:776: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/dma/fsl_raid.c:778:9: 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/dma/fsl_raid.c:778:9: 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/dma/fsl_raid.c:778:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int const volatile [noderef] [usertype] __iomem *addr @@ got restricted __be32 [noderef] __iomem * @@
vim +116 drivers/dma/fsl_raid.c
ad80da658bbcaaa Xuelin Shi 2015-03-03 104
ad80da658bbcaaa Xuelin Shi 2015-03-03 105 /* Copy descriptor from per chan software queue into hardware job ring */
ad80da658bbcaaa Xuelin Shi 2015-03-03 106 static void fsl_re_issue_pending(struct dma_chan *chan)
ad80da658bbcaaa Xuelin Shi 2015-03-03 107 {
ad80da658bbcaaa Xuelin Shi 2015-03-03 108 struct fsl_re_chan *re_chan;
ad80da658bbcaaa Xuelin Shi 2015-03-03 109 int avail;
ad80da658bbcaaa Xuelin Shi 2015-03-03 110 struct fsl_re_desc *desc, *_desc;
ad80da658bbcaaa Xuelin Shi 2015-03-03 111 unsigned long flags;
ad80da658bbcaaa Xuelin Shi 2015-03-03 112
ad80da658bbcaaa Xuelin Shi 2015-03-03 113 re_chan = container_of(chan, struct fsl_re_chan, chan);
ad80da658bbcaaa Xuelin Shi 2015-03-03 114
ad80da658bbcaaa Xuelin Shi 2015-03-03 115 spin_lock_irqsave(&re_chan->desc_lock, flags);
ad80da658bbcaaa Xuelin Shi 2015-03-03 @116 avail = FSL_RE_SLOT_AVAIL(
ad80da658bbcaaa Xuelin Shi 2015-03-03 117 in_be32(&re_chan->jrregs->inbring_slot_avail));
ad80da658bbcaaa Xuelin Shi 2015-03-03 118
ad80da658bbcaaa Xuelin Shi 2015-03-03 119 list_for_each_entry_safe(desc, _desc, &re_chan->submit_q, node) {
ad80da658bbcaaa Xuelin Shi 2015-03-03 120 if (!avail)
ad80da658bbcaaa Xuelin Shi 2015-03-03 121 break;
ad80da658bbcaaa Xuelin Shi 2015-03-03 122
ad80da658bbcaaa Xuelin Shi 2015-03-03 123 list_move_tail(&desc->node, &re_chan->active_q);
ad80da658bbcaaa Xuelin Shi 2015-03-03 124
ad80da658bbcaaa Xuelin Shi 2015-03-03 125 memcpy(&re_chan->inb_ring_virt_addr[re_chan->inb_count],
ad80da658bbcaaa Xuelin Shi 2015-03-03 126 &desc->hwdesc, sizeof(struct fsl_re_hw_desc));
ad80da658bbcaaa Xuelin Shi 2015-03-03 127
ad80da658bbcaaa Xuelin Shi 2015-03-03 128 re_chan->inb_count = (re_chan->inb_count + 1) &
ad80da658bbcaaa Xuelin Shi 2015-03-03 129 FSL_RE_RING_SIZE_MASK;
ad80da658bbcaaa Xuelin Shi 2015-03-03 @130 out_be32(&re_chan->jrregs->inbring_add_job, FSL_RE_ADD_JOB(1));
ad80da658bbcaaa Xuelin Shi 2015-03-03 131 avail--;
ad80da658bbcaaa Xuelin Shi 2015-03-03 132 }
ad80da658bbcaaa Xuelin Shi 2015-03-03 133 spin_unlock_irqrestore(&re_chan->desc_lock, flags);
ad80da658bbcaaa Xuelin Shi 2015-03-03 134 }
ad80da658bbcaaa Xuelin Shi 2015-03-03 135
:::::: The code at line 116 was first introduced by commit
:::::: ad80da658bbcaaac1d3617ea6cb0f4d5e16da422 dmaengine: Driver support for FSL RaidEngine device.
:::::: TO: Xuelin Shi <xuelin.shi@freescale.com>
:::::: CC: Vinod Koul <vinod.koul@intel.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-19 22:23 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-19 22:22 [linux-next:master 5730/16300] drivers/dma/fsl_raid.c:116:17: sparse: sparse: incorrect type in argument 1 (different base types) kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.