[intel-linux-intel-lts:4.19/android_r 15919/21549] drivers/clk/clk.c:624:24: warning: variable 'ignore' set but not used
by kernel test robot
Hi Saravana,
FYI, the error/warning still remains.
tree: https://github.com/intel/linux-intel-lts.git 4.19/android_r
head: 24f0fbfa4ad1b601f92d91cfcb7f01ad4d0f6acc
commit: 3179a1a38d96f565a2229b9244285c6abf62b10a [15919/21549] ANDROID: GKI: clk: Add support for voltage voting
config: microblaze-randconfig-r011-20210113 (attached as .config)
compiler: microblaze-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel/linux-intel-lts/commit/3179a1a38d96f565a2229b924...
git remote add intel-linux-intel-lts https://github.com/intel/linux-intel-lts.git
git fetch --no-tags intel-linux-intel-lts 4.19/android_r
git checkout 3179a1a38d96f565a2229b9244285c6abf62b10a
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=microblaze
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/clk/clk.c: In function 'clk_update_vdd':
>> drivers/clk/clk.c:624:24: warning: variable 'ignore' set but not used [-Wunused-but-set-variable]
624 | int level, rc = 0, i, ignore;
| ^~~~~~
drivers/clk/clk.c: At top level:
>> drivers/clk/clk.c:3145:5: warning: no previous prototype for 'clk_set_flags' [-Wmissing-prototypes]
3145 | int clk_set_flags(struct clk *clk, unsigned long flags)
| ^~~~~~~~~~~~~
>> drivers/clk/clk.c:3157:6: warning: no previous prototype for 'clk_debug_print_hw' [-Wmissing-prototypes]
3157 | void clk_debug_print_hw(struct clk_core *clk, struct seq_file *f)
| ^~~~~~~~~~~~~~~~~~
drivers/clk/clk.c:4257: warning: Function parameter or member 'dev' not described in 'devm_clk_unregister'
drivers/clk/clk.c:4455: warning: Function parameter or member 'get_hw' not described in 'of_clk_provider'
vim +/ignore +624 drivers/clk/clk.c
618
619 /*
620 * Update voltage level given the current votes.
621 */
622 static int clk_update_vdd(struct clk_vdd_class *vdd_class)
623 {
> 624 int level, rc = 0, i, ignore;
625 struct regulator **r = vdd_class->regulator;
626 int *uv = vdd_class->vdd_uv;
627 int n_reg = vdd_class->num_regulators;
628 int cur_lvl = vdd_class->cur_level;
629 int max_lvl = vdd_class->num_levels - 1;
630 int cur_base = cur_lvl * n_reg;
631 int new_base;
632
633 /* aggregate votes */
634 for (level = max_lvl; level > 0; level--)
635 if (vdd_class->level_votes[level])
636 break;
637
638 if (level == cur_lvl)
639 return 0;
640
641 max_lvl = max_lvl * n_reg;
642 new_base = level * n_reg;
643
644 for (i = 0; i < vdd_class->num_regulators; i++) {
645 pr_debug("Set Voltage level Min %d, Max %d\n", uv[new_base + i],
646 uv[max_lvl + i]);
647 rc = regulator_set_voltage(r[i], uv[new_base + i], INT_MAX);
648 if (rc)
649 goto set_voltage_fail;
650
651 if (cur_lvl == 0 || cur_lvl == vdd_class->num_levels)
652 rc = regulator_enable(r[i]);
653 else if (level == 0)
654 rc = regulator_disable(r[i]);
655 if (rc)
656 goto enable_disable_fail;
657 }
658
659 if (vdd_class->set_vdd && !vdd_class->num_regulators)
660 rc = vdd_class->set_vdd(vdd_class, level);
661
662 if (!rc)
663 vdd_class->cur_level = level;
664
665 return rc;
666
667 enable_disable_fail:
668 regulator_set_voltage(r[i], uv[cur_base + i], INT_MAX);
669
670 set_voltage_fail:
671 for (i--; i >= 0; i--) {
672 regulator_set_voltage(r[i], uv[cur_base + i], INT_MAX);
673 if (cur_lvl == 0 || cur_lvl == vdd_class->num_levels)
674 regulator_disable(r[i]);
675 else if (level == 0)
676 ignore = regulator_enable(r[i]);
677 }
678
679 return rc;
680 }
681
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 8 months
arch/sh/kernel/cpu/sh2a/clock-sh7203.c:29:32: sparse: sparse: incorrect type in argument 1 (different base types)
by kernel test robot
Hi Luc,
First bad commit (maybe != root cause):
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 65f0d2414b7079556fbbcc070b3d1c9f9587606d
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date: 5 months ago
config: sh-randconfig-s032-20210114 (attached as .config)
compiler: sh4-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-208-g46a52ca4-dirty
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
# 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=sh
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
"sparse warnings: (new ones prefixed by >>)"
>> arch/sh/kernel/cpu/sh2a/clock-sh7203.c:29:32: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/kernel/cpu/sh2a/clock-sh7203.c:29:32: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh2a/clock-sh7203.c:29:32: sparse: got unsigned int
arch/sh/kernel/cpu/sh2a/clock-sh7203.c:38:20: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/kernel/cpu/sh2a/clock-sh7203.c:38:20: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh2a/clock-sh7203.c:38:20: sparse: got unsigned int
arch/sh/kernel/cpu/sh2a/clock-sh7203.c:48:20: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/kernel/cpu/sh2a/clock-sh7203.c:48:20: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh2a/clock-sh7203.c:48:20: sparse: got unsigned int
--
>> arch/sh/kernel/cpu/sh2a/setup-sh7203.c:348:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/kernel/cpu/sh2a/setup-sh7203.c:348:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh2a/setup-sh7203.c:348:9: sparse: got unsigned int
>> arch/sh/kernel/cpu/sh2a/setup-sh7203.c:348:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/kernel/cpu/sh2a/setup-sh7203.c:348:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh2a/setup-sh7203.c:348:9: sparse: got unsigned int
arch/sh/kernel/cpu/sh2a/setup-sh7203.c:351:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/kernel/cpu/sh2a/setup-sh7203.c:351:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh2a/setup-sh7203.c:351:9: sparse: got unsigned int
arch/sh/kernel/cpu/sh2a/setup-sh7203.c:351:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/kernel/cpu/sh2a/setup-sh7203.c:351:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh2a/setup-sh7203.c:351:9: sparse: got unsigned int
--
>> arch/sh/boards/mach-rsk/devices-rsk7203.c:131:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/boards/mach-rsk/devices-rsk7203.c:131:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/boards/mach-rsk/devices-rsk7203.c:131:9: sparse: got unsigned int
--
drivers/hid/hidraw.c:389:37: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user * @@
drivers/hid/hidraw.c:389:37: sparse: expected int const *__gu_addr
drivers/hid/hidraw.c:389:37: sparse: got int [noderef] __user *
>> drivers/hid/hidraw.c:389:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
drivers/hid/hidraw.c:389:37: sparse: expected void const volatile [noderef] __user *ptr
drivers/hid/hidraw.c:389:37: sparse: got int const *__gu_addr
--
drivers/mtd/ubi/cdev.c:467:23: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected signed int const *__gu_addr @@ got signed int [noderef] [usertype] __user * @@
drivers/mtd/ubi/cdev.c:467:23: sparse: expected signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:467:23: sparse: got signed int [noderef] [usertype] __user *
>> drivers/mtd/ubi/cdev.c:467:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int const *__gu_addr @@
drivers/mtd/ubi/cdev.c:467:23: sparse: expected void const volatile [noderef] __user *ptr
drivers/mtd/ubi/cdev.c:467:23: sparse: got signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:512:23: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected signed int const *__gu_addr @@ got signed int [noderef] [usertype] __user * @@
drivers/mtd/ubi/cdev.c:512:23: sparse: expected signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:512:23: sparse: got signed int [noderef] [usertype] __user *
drivers/mtd/ubi/cdev.c:512:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int const *__gu_addr @@
drivers/mtd/ubi/cdev.c:512:23: sparse: expected void const volatile [noderef] __user *ptr
drivers/mtd/ubi/cdev.c:512:23: sparse: got signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:526:23: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected signed int const *__gu_addr @@ got signed int [noderef] [usertype] __user * @@
drivers/mtd/ubi/cdev.c:526:23: sparse: expected signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:526:23: sparse: got signed int [noderef] [usertype] __user *
drivers/mtd/ubi/cdev.c:526:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int const *__gu_addr @@
drivers/mtd/ubi/cdev.c:526:23: sparse: expected void const volatile [noderef] __user *ptr
drivers/mtd/ubi/cdev.c:526:23: sparse: got signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:882:23: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected signed int const *__gu_addr @@ got signed int [noderef] [usertype] __user * @@
drivers/mtd/ubi/cdev.c:882:23: sparse: expected signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:882:23: sparse: got signed int [noderef] [usertype] __user *
drivers/mtd/ubi/cdev.c:882:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int const *__gu_addr @@
drivers/mtd/ubi/cdev.c:882:23: sparse: expected void const volatile [noderef] __user *ptr
drivers/mtd/ubi/cdev.c:882:23: sparse: got signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:969:23: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected signed int const *__gu_addr @@ got signed int [noderef] [usertype] __user * @@
drivers/mtd/ubi/cdev.c:969:23: sparse: expected signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:969:23: sparse: got signed int [noderef] [usertype] __user *
drivers/mtd/ubi/cdev.c:969:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int const *__gu_addr @@
drivers/mtd/ubi/cdev.c:969:23: sparse: expected void const volatile [noderef] __user *ptr
drivers/mtd/ubi/cdev.c:969:23: sparse: got signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:984:23: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected signed int const *__gu_addr @@ got signed int [noderef] [usertype] __user * @@
drivers/mtd/ubi/cdev.c:984:23: sparse: expected signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:984:23: sparse: got signed int [noderef] [usertype] __user *
drivers/mtd/ubi/cdev.c:984:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int const *__gu_addr @@
drivers/mtd/ubi/cdev.c:984:23: sparse: expected void const volatile [noderef] __user *ptr
drivers/mtd/ubi/cdev.c:984:23: sparse: got signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:1061:23: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected signed int const *__gu_addr @@ got signed int [noderef] [usertype] __user * @@
drivers/mtd/ubi/cdev.c:1061:23: sparse: expected signed int const *__gu_addr
drivers/mtd/ubi/cdev.c:1061:23: sparse: got signed int [noderef] [usertype] __user *
drivers/mtd/ubi/cdev.c:1061:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int const *__gu_addr @@
drivers/mtd/ubi/cdev.c:1061:23: sparse: expected void const volatile [noderef] __user *ptr
drivers/mtd/ubi/cdev.c:1061:23: sparse: got signed int const *__gu_addr
--
kernel/bpf/cgroup.c:1439:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
kernel/bpf/cgroup.c:1439:21: sparse: expected int const *__gu_addr
kernel/bpf/cgroup.c:1439:21: sparse: got int [noderef] __user *optlen
>> kernel/bpf/cgroup.c:1439:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
kernel/bpf/cgroup.c:1439:21: sparse: expected void const volatile [noderef] __user *ptr
kernel/bpf/cgroup.c:1439:21: sparse: got int const *__gu_addr
--
net/socket.c:1126:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user * @@
net/socket.c:1126:29: sparse: expected int const *__gu_addr
net/socket.c:1126:29: sparse: got int [noderef] __user *
>> net/socket.c:1126:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/socket.c:1126:29: sparse: expected void const volatile [noderef] __user *ptr
net/socket.c:1126:29: sparse: got int const *__gu_addr
net/socket.c:227:15: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *ulen @@
net/socket.c:227:15: sparse: expected int const *__gu_addr
net/socket.c:227:15: sparse: got int [noderef] __user *ulen
net/socket.c:227:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/socket.c:227:15: sparse: expected void const volatile [noderef] __user *ptr
net/socket.c:227:15: sparse: got int const *__gu_addr
net/socket.c:2166:30: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/socket.c:2166:30: sparse: expected int const *__gu_addr
net/socket.c:2166:30: sparse: got int [noderef] __user *optlen
net/socket.c:2166:30: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/socket.c:2166:30: sparse: expected void const volatile [noderef] __user *ptr
net/socket.c:2166:30: sparse: got int const *__gu_addr
--
net/core/sock.c:1313:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/core/sock.c:1313:13: sparse: expected int const *__gu_addr
net/core/sock.c:1313:13: sparse: got int [noderef] __user *optlen
>> net/core/sock.c:1313:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/core/sock.c:1313:13: sparse: expected void const volatile [noderef] __user *ptr
net/core/sock.c:1313:13: sparse: got int const *__gu_addr
net/core/sock.c:1997:9: sparse: sparse: context imbalance in 'sk_clone_lock' - wrong count at exit
net/core/sock.c:2001:6: sparse: sparse: context imbalance in 'sk_free_unlock_clone' - unexpected unlock
net/core/sock.c:3093:6: sparse: sparse: context imbalance in 'lock_sock_fast' - different lock contexts for basic block
net/core/sock.c:3565:13: sparse: sparse: context imbalance in 'proto_seq_start' - wrong count at exit
net/core/sock.c:3577:13: sparse: sparse: context imbalance in 'proto_seq_stop' - wrong count at exit
--
net/llc/af_llc.c:1147:14: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/llc/af_llc.c:1147:14: sparse: expected int const *__gu_addr
net/llc/af_llc.c:1147:14: sparse: got int [noderef] __user *optlen
>> net/llc/af_llc.c:1147:14: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/llc/af_llc.c:1147:14: sparse: expected void const volatile [noderef] __user *ptr
net/llc/af_llc.c:1147:14: sparse: got int const *__gu_addr
--
net/netlink/af_netlink.c:1734:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/netlink/af_netlink.c:1734:13: sparse: expected int const *__gu_addr
net/netlink/af_netlink.c:1734:13: sparse: got int [noderef] __user *optlen
>> net/netlink/af_netlink.c:1734:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/netlink/af_netlink.c:1734:13: sparse: expected void const volatile [noderef] __user *ptr
net/netlink/af_netlink.c:1734:13: sparse: got int const *__gu_addr
net/netlink/af_netlink.c:2535:13: sparse: sparse: context imbalance in 'netlink_walk_start' - wrong count at exit
net/netlink/af_netlink.c:2541:13: sparse: sparse: context imbalance in 'netlink_walk_stop' - unexpected unlock
net/netlink/af_netlink.c:2591:9: sparse: sparse: context imbalance in 'netlink_seq_start' - wrong count at exit
--
net/ethtool/ioctl.c:81:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const *__gu_addr @@ got unsigned int [noderef] [usertype] __user *[assigned] sizeaddr @@
net/ethtool/ioctl.c:81:13: sparse: expected unsigned int const *__gu_addr
net/ethtool/ioctl.c:81:13: sparse: got unsigned int [noderef] [usertype] __user *[assigned] sizeaddr
>> net/ethtool/ioctl.c:81:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int const *__gu_addr @@
net/ethtool/ioctl.c:81:13: sparse: expected void const volatile [noderef] __user *ptr
net/ethtool/ioctl.c:81:13: sparse: got unsigned int const *__gu_addr
--
net/x25/af_x25.c:470:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/x25/af_x25.c:470:13: sparse: expected int const *__gu_addr
net/x25/af_x25.c:470:13: sparse: got int [noderef] __user *optlen
>> net/x25/af_x25.c:470:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/x25/af_x25.c:470:13: sparse: expected void const volatile [noderef] __user *ptr
net/x25/af_x25.c:470:13: sparse: got int const *__gu_addr
--
net/netrom/af_netrom.c:359:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/netrom/af_netrom.c:359:13: sparse: expected int const *__gu_addr
net/netrom/af_netrom.c:359:13: sparse: got int [noderef] __user *optlen
>> net/netrom/af_netrom.c:359:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/netrom/af_netrom.c:359:13: sparse: expected void const volatile [noderef] __user *ptr
net/netrom/af_netrom.c:359:13: sparse: got int const *__gu_addr
--
net/rose/af_rose.c:438:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/rose/af_rose.c:438:13: sparse: expected int const *__gu_addr
net/rose/af_rose.c:438:13: sparse: got int [noderef] __user *optlen
>> net/rose/af_rose.c:438:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/rose/af_rose.c:438:13: sparse: expected void const volatile [noderef] __user *ptr
net/rose/af_rose.c:438:13: sparse: got int const *__gu_addr
--
net/ax25/af_ax25.c:695:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/ax25/af_ax25.c:695:13: sparse: expected int const *__gu_addr
net/ax25/af_ax25.c:695:13: sparse: got int [noderef] __user *optlen
>> net/ax25/af_ax25.c:695:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/ax25/af_ax25.c:695:13: sparse: expected void const volatile [noderef] __user *ptr
net/ax25/af_ax25.c:695:13: sparse: got int const *__gu_addr
net/ax25/af_ax25.c:1742:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected long const *__gu_addr @@ got long [noderef] __user * @@
net/ax25/af_ax25.c:1742:21: sparse: expected long const *__gu_addr
net/ax25/af_ax25.c:1742:21: sparse: got long [noderef] __user *
>> net/ax25/af_ax25.c:1742:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got long const *__gu_addr @@
net/ax25/af_ax25.c:1742:21: sparse: expected void const volatile [noderef] __user *ptr
net/ax25/af_ax25.c:1742:21: sparse: got long const *__gu_addr
--
net/can/raw.c:659:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/can/raw.c:659:13: sparse: expected int const *__gu_addr
net/can/raw.c:659:13: sparse: got int [noderef] __user *optlen
>> net/can/raw.c:659:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/can/raw.c:659:13: sparse: expected void const volatile [noderef] __user *ptr
net/can/raw.c:659:13: sparse: got int const *__gu_addr
--
net/can/j1939/socket.c:748:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/can/j1939/socket.c:748:13: sparse: expected int const *__gu_addr
net/can/j1939/socket.c:748:13: sparse: got int [noderef] __user *optlen
>> net/can/j1939/socket.c:748:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/can/j1939/socket.c:748:13: sparse: expected void const volatile [noderef] __user *ptr
net/can/j1939/socket.c:748:13: sparse: got int const *__gu_addr
--
net/bluetooth/hci_sock.c:1941:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/bluetooth/hci_sock.c:1941:13: sparse: expected int const *__gu_addr
net/bluetooth/hci_sock.c:1941:13: sparse: got int [noderef] __user *optlen
>> net/bluetooth/hci_sock.c:1941:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/bluetooth/hci_sock.c:1941:13: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/hci_sock.c:1941:13: sparse: got int const *__gu_addr
--
net/bluetooth/hci_core.c:2099:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short const *__gu_addr @@ got unsigned short [noderef] [usertype] __user * @@
net/bluetooth/hci_core.c:2099:13: sparse: expected unsigned short const *__gu_addr
net/bluetooth/hci_core.c:2099:13: sparse: got unsigned short [noderef] [usertype] __user *
>> net/bluetooth/hci_core.c:2099:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned short const *__gu_addr @@
net/bluetooth/hci_core.c:2099:13: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/hci_core.c:2099:13: sparse: got unsigned short const *__gu_addr
--
net/bluetooth/l2cap_sock.c:428:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/bluetooth/l2cap_sock.c:428:13: sparse: expected int const *__gu_addr
net/bluetooth/l2cap_sock.c:428:13: sparse: got int [noderef] __user *optlen
>> net/bluetooth/l2cap_sock.c:428:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/bluetooth/l2cap_sock.c:428:13: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:428:13: sparse: got int const *__gu_addr
net/bluetooth/l2cap_sock.c:553:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/bluetooth/l2cap_sock.c:553:13: sparse: expected int const *__gu_addr
net/bluetooth/l2cap_sock.c:553:13: sparse: got int [noderef] __user *optlen
net/bluetooth/l2cap_sock.c:553:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/bluetooth/l2cap_sock.c:553:13: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:553:13: sparse: got int const *__gu_addr
--
net/atm/svc.c:509:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/atm/svc.c:509:13: sparse: expected int const *__gu_addr
net/atm/svc.c:509:13: sparse: got int [noderef] __user *optlen
>> net/atm/svc.c:509:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/atm/svc.c:509:13: sparse: expected void const volatile [noderef] __user *ptr
net/atm/svc.c:509:13: sparse: got int const *__gu_addr
--
net/atm/ioctl.c:125:25: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short const *__gu_addr @@ got unsigned short [noderef] [usertype] __user * @@
net/atm/ioctl.c:125:25: sparse: expected unsigned short const *__gu_addr
net/atm/ioctl.c:125:25: sparse: got unsigned short [noderef] [usertype] __user *
>> net/atm/ioctl.c:125:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned short const *__gu_addr @@
net/atm/ioctl.c:125:25: sparse: expected void const volatile [noderef] __user *ptr
net/atm/ioctl.c:125:25: sparse: got unsigned short const *__gu_addr
net/atm/ioctl.c:180:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void [noderef] __user *const *__gu_addr @@ got void [noderef] __user *[noderef] __user * @@
net/atm/ioctl.c:180:29: sparse: expected void [noderef] __user *const *__gu_addr
net/atm/ioctl.c:180:29: sparse: got void [noderef] __user *[noderef] __user *
>> net/atm/ioctl.c:180:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got void [noderef] __user *const *__gu_addr @@
net/atm/ioctl.c:180:29: sparse: expected void const volatile [noderef] __user *ptr
net/atm/ioctl.c:180:29: sparse: got void [noderef] __user *const *__gu_addr
net/atm/ioctl.c:203:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected void [noderef] __user *const *__gu_addr @@ got void [noderef] __user *[noderef] __user * @@
net/atm/ioctl.c:203:29: sparse: expected void [noderef] __user *const *__gu_addr
net/atm/ioctl.c:203:29: sparse: got void [noderef] __user *[noderef] __user *
net/atm/ioctl.c:203:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got void [noderef] __user *const *__gu_addr @@
net/atm/ioctl.c:203:29: sparse: expected void const volatile [noderef] __user *ptr
net/atm/ioctl.c:203:29: sparse: got void [noderef] __user *const *__gu_addr
net/atm/ioctl.c:205:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user * @@
net/atm/ioctl.c:205:29: sparse: expected int const *__gu_addr
net/atm/ioctl.c:205:29: sparse: got int [noderef] __user *
>> net/atm/ioctl.c:205:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/atm/ioctl.c:205:29: sparse: expected void const volatile [noderef] __user *ptr
net/atm/ioctl.c:205:29: sparse: got int const *__gu_addr
--
net/decnet/af_decnet.c:1540:12: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/decnet/af_decnet.c:1540:12: sparse: expected int const *__gu_addr
net/decnet/af_decnet.c:1540:12: sparse: got int [noderef] __user *optlen
>> net/decnet/af_decnet.c:1540:12: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/decnet/af_decnet.c:1540:12: sparse: expected void const volatile [noderef] __user *ptr
net/decnet/af_decnet.c:1540:12: sparse: got int const *__gu_addr
net/decnet/af_decnet.c:250:22: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int hash @@ got restricted __le16 [usertype] sdn_objnamel @@
net/decnet/af_decnet.c:250:22: sparse: expected unsigned int hash
net/decnet/af_decnet.c:250:22: sparse: got restricted __le16 [usertype] sdn_objnamel
net/decnet/af_decnet.c: note: in included file:
include/net/dn.h:192:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be16 [usertype] sport @@ got restricted __le16 [usertype] addrloc @@
include/net/dn.h:192:24: sparse: expected restricted __be16 [usertype] sport
include/net/dn.h:192:24: sparse: got restricted __le16 [usertype] addrloc
include/net/dn.h:193:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be16 [usertype] dport @@ got restricted __le16 [usertype] addrrem @@
include/net/dn.h:193:24: sparse: expected restricted __be16 [usertype] dport
include/net/dn.h:193:24: sparse: got restricted __le16 [usertype] addrrem
net/decnet/af_decnet.c:2167:9: sparse: sparse: context imbalance in 'dn_socket_get_idx' - wrong count at exit
net/decnet/af_decnet.c:2187:9: sparse: sparse: context imbalance in 'dn_socket_seq_next' - unexpected unlock
net/decnet/af_decnet.c:2196:17: sparse: sparse: context imbalance in 'dn_socket_seq_stop' - unexpected unlock
--
net/phonet/datagram.c:47:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const *__gu_addr @@ got unsigned int [noderef] [usertype] __user * @@
net/phonet/datagram.c:47:29: sparse: expected unsigned int const *__gu_addr
net/phonet/datagram.c:47:29: sparse: got unsigned int [noderef] [usertype] __user *
>> net/phonet/datagram.c:47:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int const *__gu_addr @@
net/phonet/datagram.c:47:29: sparse: expected void const volatile [noderef] __user *ptr
net/phonet/datagram.c:47:29: sparse: got unsigned int const *__gu_addr
--
net/phonet/socket.c:367:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned short const *__gu_addr @@ got unsigned short [noderef] [usertype] __user * @@
net/phonet/socket.c:367:21: sparse: expected unsigned short const *__gu_addr
net/phonet/socket.c:367:21: sparse: got unsigned short [noderef] [usertype] __user *
>> net/phonet/socket.c:367:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned short const *__gu_addr @@
net/phonet/socket.c:367:21: sparse: expected void const volatile [noderef] __user *ptr
net/phonet/socket.c:367:21: sparse: got unsigned short const *__gu_addr
net/phonet/socket.c:623:14: sparse: sparse: incompatible types in comparison expression (different address spaces):
net/phonet/socket.c:623:14: sparse: struct sock [noderef] __rcu *
net/phonet/socket.c:623:14: sparse: struct sock *
net/phonet/socket.c:646:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
net/phonet/socket.c:646:17: sparse: struct sock [noderef] __rcu *
net/phonet/socket.c:646:17: sparse: struct sock *
net/phonet/socket.c:662:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
net/phonet/socket.c:662:17: sparse: struct sock [noderef] __rcu *
net/phonet/socket.c:662:17: sparse: struct sock *
net/phonet/socket.c:681:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
net/phonet/socket.c:681:25: sparse: struct sock [noderef] __rcu *
net/phonet/socket.c:681:25: sparse: struct sock *
net/phonet/socket.c:730:21: sparse: sparse: context imbalance in 'pn_res_seq_start' - wrong count at exit
net/phonet/socket.c:745:13: sparse: sparse: context imbalance in 'pn_res_seq_stop' - wrong count at exit
--
net/phonet/pep.c:1047:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/phonet/pep.c:1047:13: sparse: expected int const *__gu_addr
net/phonet/pep.c:1047:13: sparse: got int [noderef] __user *optlen
>> net/phonet/pep.c:1047:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/phonet/pep.c:1047:13: sparse: expected void const volatile [noderef] __user *ptr
net/phonet/pep.c:1047:13: sparse: got int const *__gu_addr
--
net/vmw_vsock/af_vsock.c:1612:15: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user *optlen @@
net/vmw_vsock/af_vsock.c:1612:15: sparse: expected int const *__gu_addr
net/vmw_vsock/af_vsock.c:1612:15: sparse: got int [noderef] __user *optlen
>> net/vmw_vsock/af_vsock.c:1612:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
net/vmw_vsock/af_vsock.c:1612:15: sparse: expected void const volatile [noderef] __user *ptr
net/vmw_vsock/af_vsock.c:1612:15: sparse: got int const *__gu_addr
vim +29 arch/sh/kernel/cpu/sh2a/clock-sh7203.c
6d01f51086cf6c47 Paul Mundt 2007-11-26 26
6d01f51086cf6c47 Paul Mundt 2007-11-26 27 static void master_clk_init(struct clk *clk)
6d01f51086cf6c47 Paul Mundt 2007-11-26 28 {
16b259203c513ed2 Paul Mundt 2010-11-01 @29 clk->rate *= pll1rate[(__raw_readw(FREQCR) >> 8) & 0x0003] * pll2_mult;
6d01f51086cf6c47 Paul Mundt 2007-11-26 30 }
6d01f51086cf6c47 Paul Mundt 2007-11-26 31
:::::: The code at line 29 was first introduced by commit
:::::: 16b259203c513ed28bd31cc9a981e0d3ad517943 sh: migrate SH_CLK_MD to mode pin API.
:::::: TO: Paul Mundt <lethal(a)linux-sh.org>
:::::: CC: Paul Mundt <lethal(a)linux-sh.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 8 months
[freescale-fslc:5.4-2.3.x-imx 8473/16543] drivers/usb/chipidea/ci.h:476:47: error: incomplete definition of type 'struct ci_hdrc_platform_data'
by kernel test robot
tree: https://github.com/Freescale/linux-fslc 5.4-2.3.x-imx
head: a8a2b9ee4bec0b29d031324160b7f11af42a563a
commit: d74f8108dce77b0fb2496cfe92461de9766e060e [8473/16543] MLK-23677-4 usb: chipidea: add tracepoint support for udc
config: x86_64-randconfig-a004-20210114 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 6077d55381a6aa3e947ef7abdc36a7515c598c8a)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://github.com/Freescale/linux-fslc/commit/d74f8108dce77b0fb2496cfe92...
git remote add freescale-fslc https://github.com/Freescale/linux-fslc
git fetch --no-tags freescale-fslc 5.4-2.3.x-imx
git checkout d74f8108dce77b0fb2496cfe92461de9766e060e
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from drivers/usb/chipidea/trace.c:11:
In file included from drivers/usb/chipidea/trace.h:18:
>> drivers/usb/chipidea/ci.h:476:47: error: incomplete definition of type 'struct ci_hdrc_platform_data'
struct usb_otg_caps *otg_caps = &ci->platdata->ci_otg_caps;
~~~~~~~~~~~~^
drivers/usb/chipidea/ci.h:251:9: note: forward declaration of 'struct ci_hdrc_platform_data'
struct ci_hdrc_platform_data *platdata;
^
1 error generated.
--
In file included from drivers/usb/chipidea/trace.c:11:
In file included from drivers/usb/chipidea/trace.h:18:
>> drivers/usb/chipidea/ci.h:476:47: error: incomplete definition of type 'struct ci_hdrc_platform_data'
struct usb_otg_caps *otg_caps = &ci->platdata->ci_otg_caps;
~~~~~~~~~~~~^
drivers/usb/chipidea/ci.h:251:9: note: forward declaration of 'struct ci_hdrc_platform_data'
struct ci_hdrc_platform_data *platdata;
^
In file included from drivers/usb/chipidea/trace.c:11:
In file included from drivers/usb/chipidea/trace.h:91:
include/trace/define_trace.h:95:10: fatal error: './trace.h' file not found
#include TRACE_INCLUDE(TRACE_INCLUDE_FILE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/trace/define_trace.h:90:32: note: expanded from macro 'TRACE_INCLUDE'
# define TRACE_INCLUDE(system) __TRACE_INCLUDE(system)
^~~~~~~~~~~~~~~~~~~~~~~
include/trace/define_trace.h:87:34: note: expanded from macro '__TRACE_INCLUDE'
# define __TRACE_INCLUDE(system) __stringify(TRACE_INCLUDE_PATH/system.h)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/stringify.h:10:27: note: expanded from macro '__stringify'
#define __stringify(x...) __stringify_1(x)
^~~~~~~~~~~~~~~~
include/linux/stringify.h:9:29: note: expanded from macro '__stringify_1'
#define __stringify_1(x...) #x
^~
<scratch space>:49:1: note: expanded from here
"./trace.h"
^~~~~~~~~~~
2 errors generated.
vim +476 drivers/usb/chipidea/ci.h
e443b333629f82ca Alexander Shishkin 2012-05-11 466
57677be5ef838743 Li Jun 2014-04-23 467 /**
57677be5ef838743 Li Jun 2014-04-23 468 * ci_otg_is_fsm_mode: runtime check if otg controller
57677be5ef838743 Li Jun 2014-04-23 469 * is in otg fsm mode.
19353881b4afc9e2 Peter Chen 2014-09-22 470 *
19353881b4afc9e2 Peter Chen 2014-09-22 471 * @ci: chipidea device
57677be5ef838743 Li Jun 2014-04-23 472 */
57677be5ef838743 Li Jun 2014-04-23 473 static inline bool ci_otg_is_fsm_mode(struct ci_hdrc *ci)
57677be5ef838743 Li Jun 2014-04-23 474 {
57677be5ef838743 Li Jun 2014-04-23 475 #ifdef CONFIG_USB_OTG_FSM
b0930d4cafb487a6 Li Jun 2015-07-09 @476 struct usb_otg_caps *otg_caps = &ci->platdata->ci_otg_caps;
b0930d4cafb487a6 Li Jun 2015-07-09 477
57677be5ef838743 Li Jun 2014-04-23 478 return ci->is_otg && ci->roles[CI_ROLE_HOST] &&
b0930d4cafb487a6 Li Jun 2015-07-09 479 ci->roles[CI_ROLE_GADGET] && (otg_caps->srp_support ||
b0930d4cafb487a6 Li Jun 2015-07-09 480 otg_caps->hnp_support || otg_caps->adp_support);
57677be5ef838743 Li Jun 2014-04-23 481 #else
57677be5ef838743 Li Jun 2014-04-23 482 return false;
57677be5ef838743 Li Jun 2014-04-23 483 #endif
57677be5ef838743 Li Jun 2014-04-23 484 }
57677be5ef838743 Li Jun 2014-04-23 485
:::::: The code at line 476 was first introduced by commit
:::::: b0930d4cafb487a663ac6780a0369d1a0f461bc2 usb: chipidea: update ci_otg_is_fsm_mode conditions
:::::: TO: Li Jun <jun.li(a)freescale.com>
:::::: CC: Felipe Balbi <balbi(a)ti.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 8 months
[freescale-fslc:5.4-2.3.x-imx 8473/16543] drivers/usb/chipidea/./trace.h:39:1: sparse: sparse: incorrect type in assignment (different base types)
by kernel test robot
tree: https://github.com/Freescale/linux-fslc 5.4-2.3.x-imx
head: a8a2b9ee4bec0b29d031324160b7f11af42a563a
commit: d74f8108dce77b0fb2496cfe92461de9766e060e [8473/16543] MLK-23677-4 usb: chipidea: add tracepoint support for udc
config: x86_64-randconfig-s022-20210114 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-208-g46a52ca4-dirty
# https://github.com/Freescale/linux-fslc/commit/d74f8108dce77b0fb2496cfe92...
git remote add freescale-fslc https://github.com/Freescale/linux-fslc
git fetch --no-tags freescale-fslc 5.4-2.3.x-imx
git checkout d74f8108dce77b0fb2496cfe92461de9766e060e
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
"sparse warnings: (new ones prefixed by >>)"
drivers/usb/chipidea/trace.c: note: in included file (through include/trace/trace_events.h, include/trace/define_trace.h, drivers/usb/chipidea/trace.h):
>> drivers/usb/chipidea/./trace.h:39:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] next @@ got restricted __le32 [usertype] next @@
drivers/usb/chipidea/./trace.h:39:1: sparse: expected unsigned int [usertype] next
drivers/usb/chipidea/./trace.h:39:1: sparse: got restricted __le32 [usertype] next
>> drivers/usb/chipidea/./trace.h:39:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] token @@ got restricted __le32 [usertype] token @@
drivers/usb/chipidea/./trace.h:39:1: sparse: expected unsigned int [usertype] token
drivers/usb/chipidea/./trace.h:39:1: sparse: got restricted __le32 [usertype] token
drivers/usb/chipidea/trace.c: note: in included file (through include/trace/perf.h, include/trace/define_trace.h, drivers/usb/chipidea/trace.h):
>> drivers/usb/chipidea/./trace.h:39:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] next @@ got restricted __le32 [usertype] next @@
drivers/usb/chipidea/./trace.h:39:1: sparse: expected unsigned int [usertype] next
drivers/usb/chipidea/./trace.h:39:1: sparse: got restricted __le32 [usertype] next
>> drivers/usb/chipidea/./trace.h:39:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] token @@ got restricted __le32 [usertype] token @@
drivers/usb/chipidea/./trace.h:39:1: sparse: expected unsigned int [usertype] token
drivers/usb/chipidea/./trace.h:39:1: sparse: got restricted __le32 [usertype] token
vim +39 drivers/usb/chipidea/./trace.h
38
> 39 DECLARE_EVENT_CLASS(ci_log_trb,
40 TP_PROTO(struct ci_hw_ep *hwep, struct ci_hw_req *hwreq, struct td_node *td),
41 TP_ARGS(hwep, hwreq, td),
42 TP_STRUCT__entry(
43 __string(name, hwep->name)
44 __field(struct td_node *, td)
45 __field(struct usb_request *, req)
46 __field(dma_addr_t, dma)
47 __field(s32, td_remaining_size)
48 __field(u32, next)
49 __field(u32, token)
50 __field(u32, type)
51 ),
52 TP_fast_assign(
53 __assign_str(name, hwep->name);
54 __entry->req = &hwreq->req;
55 __entry->td = td;
56 __entry->dma = td->dma;
57 __entry->td_remaining_size = td->td_remaining_size;
58 __entry->next = td->ptr->next;
59 __entry->token = td->ptr->token;
60 __entry->type = usb_endpoint_type(hwep->ep.desc);
61 ),
62 TP_printk("%s: req: %p, td %p, td_dma_address: 0x%llx, remaining_size: %d,"
63 "next: 0x%x, total bytes: %d, status: 0x%lx",
64 __get_str(name), __entry->req, __entry->td, __entry->dma,
65 __entry->td_remaining_size, __entry->next,
66 (int)((__entry->token & TD_TOTAL_BYTES) >> __ffs(TD_TOTAL_BYTES)),
67 __entry->token & TD_STATUS
68 )
69 );
70
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 8 months
[freescale-fslc:5.4-2.3.x-imx 14893/16543] drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1094:19: error: implicit declaration of function 'pci_iomap'; did you mean
by kernel test robot
Hi Fugang,
First bad commit (maybe != root cause):
tree: https://github.com/Freescale/linux-fslc 5.4-2.3.x-imx
head: a8a2b9ee4bec0b29d031324160b7f11af42a563a
commit: f186a4e65f54a28973c743f8c007b18c1ce95be6 [14893/16543] MLK-24962 net: wireless: nxp: mxm_wifiex: upgrade to mxm5x16203 release
config: sh-allmodconfig (attached as .config)
compiler: sh4-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/Freescale/linux-fslc/commit/f186a4e65f54a28973c743f8c0...
git remote add freescale-fslc https://github.com/Freescale/linux-fslc
git fetch --no-tags freescale-fslc 5.4-2.3.x-imx
git checkout f186a4e65f54a28973c743f8c007b18c1ce95be6
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=sh
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All error/warnings (new ones prefixed by >>):
In file included from drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:31:
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.h:133:20: error: array type has incomplete element type 'struct msix_entry'
133 | struct msix_entry msix_entries[PCIE_NUM_MSIX_VECTORS];
| ^~~~~~~~~~~~
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:394:5: warning: no previous prototype for 'woal_pcie_probe' [-Wmissing-prototypes]
394 | int woal_pcie_probe(struct pci_dev *pdev, const struct pci_device_id *id)
| ^~~~~~~~~~~~~~~
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c: In function 'woal_pcie_probe':
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:441:6: error: implicit declaration of function 'pci_is_enabled'; did you mean 'pci_acs_enabled'? [-Werror=implicit-function-declaration]
441 | if (pci_is_enabled(pdev))
| ^~~~~~~~~~~~~~
| pci_acs_enabled
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c: At top level:
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:896:13: warning: no previous prototype for 'woal_pcie_write_data_sync' [-Wmissing-prototypes]
896 | mlan_status woal_pcie_write_data_sync(moal_handle *handle, mlan_buffer *pmbuf,
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:912:13: warning: no previous prototype for 'woal_pcie_read_data_sync' [-Wmissing-prototypes]
912 | mlan_status woal_pcie_read_data_sync(moal_handle *handle, mlan_buffer *pmbuf,
| ^~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c: In function 'woal_pcie_init':
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1089:8: error: implicit declaration of function 'pci_request_region'; did you mean 'pci_request_regions'? [-Werror=implicit-function-declaration]
1089 | ret = pci_request_region(pdev, 0, DRV_NAME);
| ^~~~~~~~~~~~~~~~~~
| pci_request_regions
>> drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1094:19: error: implicit declaration of function 'pci_iomap'; did you mean 'pcim_iomap'? [-Werror=implicit-function-declaration]
1094 | card->pci_mmap = pci_iomap(pdev, 0, 0);
| ^~~~~~~~~
| pcim_iomap
>> drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1094:17: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
1094 | card->pci_mmap = pci_iomap(pdev, 0, 0);
| ^
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1104:18: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
1104 | card->pci_mmap1 = pci_iomap(pdev, 2, 0);
| ^
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1118:2: error: implicit declaration of function 'pci_release_region'; did you mean 'pci_release_regions'? [-Werror=implicit-function-declaration]
1118 | pci_release_region(pdev, 2);
| ^~~~~~~~~~~~~~~~~~
| pci_release_regions
>> drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1120:2: error: implicit declaration of function 'pci_iounmap'; did you mean 'pcim_iounmap'? [-Werror=implicit-function-declaration]
1120 | pci_iounmap(pdev, card->pci_mmap);
| ^~~~~~~~~~~
| pcim_iounmap
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c: In function 'woal_pcie_register_dev':
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1174:9: error: implicit declaration of function 'pci_enable_msix_exact' [-Werror=implicit-function-declaration]
1174 | ret = pci_enable_msix_exact(pdev, card->msix_entries, nvec);
| ^~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1197:6: error: implicit declaration of function 'pci_disable_msix'; did you mean 'pci_disable_sriov'? [-Werror=implicit-function-declaration]
1197 | pci_disable_msix(pdev);
| ^~~~~~~~~~~~~~~~
| pci_disable_sriov
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1209:9: error: implicit declaration of function 'pci_enable_msi'; did you mean 'pci_enable_ats'? [-Werror=implicit-function-declaration]
1209 | ret = pci_enable_msi(pdev);
| ^~~~~~~~~~~~~~
| pci_enable_ats
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1216:5: error: implicit declaration of function 'pci_disable_msi'; did you mean 'pci_disable_ats'? [-Werror=implicit-function-declaration]
1216 | pci_disable_msi(pdev);
| ^~~~~~~~~~~~~~~
| pci_disable_ats
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c: At top level:
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1418:5: warning: no previous prototype for 'woal_pcie_dump_reg_info' [-Wmissing-prototypes]
1418 | int woal_pcie_dump_reg_info(moal_handle *phandle, t_u8 *buffer)
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1752:13: warning: no previous prototype for 'woal_read_reg_eight_bit' [-Wmissing-prototypes]
1752 | mlan_status woal_read_reg_eight_bit(moal_handle *handle, t_u32 reg, t_u8 *data)
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:1767:13: warning: no previous prototype for 'woal_pcie_rdwr_firmware' [-Wmissing-prototypes]
1767 | rdwr_status woal_pcie_rdwr_firmware(moal_handle *phandle, t_u8 doneflag)
| ^~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:2013:6: warning: no previous prototype for 'woal_pcie_dump_fw_info_v2' [-Wmissing-prototypes]
2013 | void woal_pcie_dump_fw_info_v2(moal_handle *phandle)
| ^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:2192:6: warning: no previous prototype for 'woal_pcie_dump_fw_info' [-Wmissing-prototypes]
2192 | void woal_pcie_dump_fw_info(moal_handle *phandle)
| ^~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_main.h:130,
from drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.h:62,
from drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c:31:
drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_priv.h:282:34: warning: 'woal_private_args' defined but not used [-Wunused-const-variable=]
282 | static const struct iw_priv_args woal_private_args[] = {
| ^~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +1094 drivers/net/wireless/nxp/mxm_wifiex/wlan_src/mlinux/moal_pcie.c
688b67b2c7220b01 Fugang Duan 2020-04-19 901
688b67b2c7220b01 Fugang Duan 2020-04-19 902 /**
688b67b2c7220b01 Fugang Duan 2020-04-19 903 * @brief This function reads multiple bytes from card memory
688b67b2c7220b01 Fugang Duan 2020-04-19 904 *
688b67b2c7220b01 Fugang Duan 2020-04-19 905 * @param handle A Pointer to the moal_handle structure
688b67b2c7220b01 Fugang Duan 2020-04-19 906 * @param pmbuf Pointer to mlan_buffer structure
688b67b2c7220b01 Fugang Duan 2020-04-19 907 * @param port Port
688b67b2c7220b01 Fugang Duan 2020-04-19 908 * @param timeout Time out value
688b67b2c7220b01 Fugang Duan 2020-04-19 909 *
688b67b2c7220b01 Fugang Duan 2020-04-19 910 * @return MLAN_STATUS_SUCCESS or MLAN_STATUS_FAILURE
688b67b2c7220b01 Fugang Duan 2020-04-19 911 */
6b4a83a75fc1dccc Fugang Duan 2020-05-28 @912 mlan_status woal_pcie_read_data_sync(moal_handle *handle, mlan_buffer *pmbuf,
6b4a83a75fc1dccc Fugang Duan 2020-05-28 913 t_u32 port, t_u32 timeout)
688b67b2c7220b01 Fugang Duan 2020-04-19 914 {
688b67b2c7220b01 Fugang Duan 2020-04-19 915 return MLAN_STATUS_SUCCESS;
688b67b2c7220b01 Fugang Duan 2020-04-19 916 }
688b67b2c7220b01 Fugang Duan 2020-04-19 917
688b67b2c7220b01 Fugang Duan 2020-04-19 918 /**
688b67b2c7220b01 Fugang Duan 2020-04-19 919 * @brief This function handles the interrupt.
688b67b2c7220b01 Fugang Duan 2020-04-19 920 *
688b67b2c7220b01 Fugang Duan 2020-04-19 921 * @param irq The irq no. of PCIE device
688b67b2c7220b01 Fugang Duan 2020-04-19 922 * @param dev_id A pointer to the pci_dev structure
688b67b2c7220b01 Fugang Duan 2020-04-19 923 *
688b67b2c7220b01 Fugang Duan 2020-04-19 924 * @return IRQ_HANDLED
688b67b2c7220b01 Fugang Duan 2020-04-19 925 */
6b4a83a75fc1dccc Fugang Duan 2020-05-28 926 static irqreturn_t woal_pcie_interrupt(int irq, void *dev_id)
688b67b2c7220b01 Fugang Duan 2020-04-19 927 {
688b67b2c7220b01 Fugang Duan 2020-04-19 928 struct pci_dev *pdev;
688b67b2c7220b01 Fugang Duan 2020-04-19 929 pcie_service_card *card;
688b67b2c7220b01 Fugang Duan 2020-04-19 930 moal_handle *handle;
688b67b2c7220b01 Fugang Duan 2020-04-19 931 mlan_status ret = MLAN_STATUS_SUCCESS;
688b67b2c7220b01 Fugang Duan 2020-04-19 932
688b67b2c7220b01 Fugang Duan 2020-04-19 933 pdev = (struct pci_dev *)dev_id;
688b67b2c7220b01 Fugang Duan 2020-04-19 934 if (!pdev) {
688b67b2c7220b01 Fugang Duan 2020-04-19 935 PRINTM(MFATAL, "%s: pdev is NULL\n", (t_u8 *)pdev);
688b67b2c7220b01 Fugang Duan 2020-04-19 936 goto exit;
688b67b2c7220b01 Fugang Duan 2020-04-19 937 }
688b67b2c7220b01 Fugang Duan 2020-04-19 938
688b67b2c7220b01 Fugang Duan 2020-04-19 939 card = (pcie_service_card *)pci_get_drvdata(pdev);
688b67b2c7220b01 Fugang Duan 2020-04-19 940 if (!card || !card->handle) {
688b67b2c7220b01 Fugang Duan 2020-04-19 941 PRINTM(MFATAL, "%s: card=%p handle=%p\n", __func__, card,
688b67b2c7220b01 Fugang Duan 2020-04-19 942 card ? card->handle : NULL);
688b67b2c7220b01 Fugang Duan 2020-04-19 943 goto exit;
688b67b2c7220b01 Fugang Duan 2020-04-19 944 }
688b67b2c7220b01 Fugang Duan 2020-04-19 945 handle = card->handle;
688b67b2c7220b01 Fugang Duan 2020-04-19 946 if (handle->surprise_removed == MTRUE) {
688b67b2c7220b01 Fugang Duan 2020-04-19 947 ret = MLAN_STATUS_FAILURE;
688b67b2c7220b01 Fugang Duan 2020-04-19 948 goto exit;
688b67b2c7220b01 Fugang Duan 2020-04-19 949 }
688b67b2c7220b01 Fugang Duan 2020-04-19 950 PRINTM(MINFO, "*** IN PCIE IRQ ***\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 951 handle->main_state = MOAL_RECV_INT;
688b67b2c7220b01 Fugang Duan 2020-04-19 952 PRINTM(MINTR, "*\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 953
688b67b2c7220b01 Fugang Duan 2020-04-19 954 ret = mlan_interrupt(0xffff, handle->pmlan_adapter);
688b67b2c7220b01 Fugang Duan 2020-04-19 955 queue_work(handle->workqueue, &handle->main_work);
688b67b2c7220b01 Fugang Duan 2020-04-19 956
688b67b2c7220b01 Fugang Duan 2020-04-19 957 exit:
688b67b2c7220b01 Fugang Duan 2020-04-19 958 if (ret == MLAN_STATUS_SUCCESS)
688b67b2c7220b01 Fugang Duan 2020-04-19 959 return IRQ_HANDLED;
688b67b2c7220b01 Fugang Duan 2020-04-19 960 else
688b67b2c7220b01 Fugang Duan 2020-04-19 961 return IRQ_NONE;
688b67b2c7220b01 Fugang Duan 2020-04-19 962 }
688b67b2c7220b01 Fugang Duan 2020-04-19 963
688b67b2c7220b01 Fugang Duan 2020-04-19 964 /**
688b67b2c7220b01 Fugang Duan 2020-04-19 965 * @brief This function handles the MSI-X interrupt.
688b67b2c7220b01 Fugang Duan 2020-04-19 966 *
688b67b2c7220b01 Fugang Duan 2020-04-19 967 * @param irq The irq no. of PCIE device
688b67b2c7220b01 Fugang Duan 2020-04-19 968 * @param dev_id A pointer to the msix_context structure
688b67b2c7220b01 Fugang Duan 2020-04-19 969 *
688b67b2c7220b01 Fugang Duan 2020-04-19 970 * @return IRQ_HANDLED
688b67b2c7220b01 Fugang Duan 2020-04-19 971 */
6b4a83a75fc1dccc Fugang Duan 2020-05-28 972 static irqreturn_t woal_pcie_msix_interrupt(int irq, void *dev_id)
688b67b2c7220b01 Fugang Duan 2020-04-19 973 {
688b67b2c7220b01 Fugang Duan 2020-04-19 974 struct pci_dev *pdev;
688b67b2c7220b01 Fugang Duan 2020-04-19 975 pcie_service_card *card;
688b67b2c7220b01 Fugang Duan 2020-04-19 976 moal_handle *handle;
688b67b2c7220b01 Fugang Duan 2020-04-19 977 msix_context *ctx = (msix_context *)dev_id;
688b67b2c7220b01 Fugang Duan 2020-04-19 978 mlan_status ret = MLAN_STATUS_SUCCESS;
688b67b2c7220b01 Fugang Duan 2020-04-19 979
688b67b2c7220b01 Fugang Duan 2020-04-19 980 if (!ctx) {
688b67b2c7220b01 Fugang Duan 2020-04-19 981 PRINTM(MFATAL, "%s: ctx=%p is NULL\n", __func__, ctx);
688b67b2c7220b01 Fugang Duan 2020-04-19 982 goto exit;
688b67b2c7220b01 Fugang Duan 2020-04-19 983 }
688b67b2c7220b01 Fugang Duan 2020-04-19 984
688b67b2c7220b01 Fugang Duan 2020-04-19 985 pdev = ctx->dev;
688b67b2c7220b01 Fugang Duan 2020-04-19 986
688b67b2c7220b01 Fugang Duan 2020-04-19 987 if (!pdev) {
688b67b2c7220b01 Fugang Duan 2020-04-19 988 PRINTM(MFATAL, "%s: pdev is NULL\n", (t_u8 *)pdev);
688b67b2c7220b01 Fugang Duan 2020-04-19 989 goto exit;
688b67b2c7220b01 Fugang Duan 2020-04-19 990 }
688b67b2c7220b01 Fugang Duan 2020-04-19 991
688b67b2c7220b01 Fugang Duan 2020-04-19 992 card = (pcie_service_card *)pci_get_drvdata(pdev);
688b67b2c7220b01 Fugang Duan 2020-04-19 993 if (!card || !card->handle) {
688b67b2c7220b01 Fugang Duan 2020-04-19 994 PRINTM(MFATAL, "%s: card=%p handle=%p\n", __func__, card,
688b67b2c7220b01 Fugang Duan 2020-04-19 995 card ? card->handle : NULL);
688b67b2c7220b01 Fugang Duan 2020-04-19 996 goto exit;
688b67b2c7220b01 Fugang Duan 2020-04-19 997 }
688b67b2c7220b01 Fugang Duan 2020-04-19 998 handle = card->handle;
688b67b2c7220b01 Fugang Duan 2020-04-19 999 if (handle->surprise_removed == MTRUE) {
688b67b2c7220b01 Fugang Duan 2020-04-19 1000 ret = MLAN_STATUS_FAILURE;
688b67b2c7220b01 Fugang Duan 2020-04-19 1001 goto exit;
688b67b2c7220b01 Fugang Duan 2020-04-19 1002 }
688b67b2c7220b01 Fugang Duan 2020-04-19 1003 PRINTM(MINFO, "*** IN PCIE IRQ ***\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1004 handle->main_state = MOAL_RECV_INT;
688b67b2c7220b01 Fugang Duan 2020-04-19 1005 PRINTM(MINTR, "*\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1006 ret = mlan_interrupt(ctx->msg_id, handle->pmlan_adapter);
688b67b2c7220b01 Fugang Duan 2020-04-19 1007 queue_work(handle->workqueue, &handle->main_work);
688b67b2c7220b01 Fugang Duan 2020-04-19 1008
688b67b2c7220b01 Fugang Duan 2020-04-19 1009 exit:
688b67b2c7220b01 Fugang Duan 2020-04-19 1010 if (ret == MLAN_STATUS_SUCCESS)
688b67b2c7220b01 Fugang Duan 2020-04-19 1011 return IRQ_HANDLED;
688b67b2c7220b01 Fugang Duan 2020-04-19 1012 else
688b67b2c7220b01 Fugang Duan 2020-04-19 1013 return IRQ_NONE;
688b67b2c7220b01 Fugang Duan 2020-04-19 1014 }
688b67b2c7220b01 Fugang Duan 2020-04-19 1015 /**
688b67b2c7220b01 Fugang Duan 2020-04-19 1016 * @brief This function pre-initializes the PCI-E host
688b67b2c7220b01 Fugang Duan 2020-04-19 1017 * memory space, etc.
688b67b2c7220b01 Fugang Duan 2020-04-19 1018 *
688b67b2c7220b01 Fugang Duan 2020-04-19 1019 * @param handle A pointer to moal_handle structure
688b67b2c7220b01 Fugang Duan 2020-04-19 1020 *
688b67b2c7220b01 Fugang Duan 2020-04-19 1021 * @return MLAN_STATUS_SUCCESS or MLAN_STATUS_FAILURE
688b67b2c7220b01 Fugang Duan 2020-04-19 1022 */
6b4a83a75fc1dccc Fugang Duan 2020-05-28 1023 static mlan_status woal_pcie_preinit(struct pci_dev *pdev)
688b67b2c7220b01 Fugang Duan 2020-04-19 1024 {
688b67b2c7220b01 Fugang Duan 2020-04-19 1025 int ret;
688b67b2c7220b01 Fugang Duan 2020-04-19 1026
688b67b2c7220b01 Fugang Duan 2020-04-19 1027 ret = pci_enable_device(pdev);
688b67b2c7220b01 Fugang Duan 2020-04-19 1028 if (ret)
688b67b2c7220b01 Fugang Duan 2020-04-19 1029 goto err_enable_dev;
688b67b2c7220b01 Fugang Duan 2020-04-19 1030
688b67b2c7220b01 Fugang Duan 2020-04-19 1031 pci_set_master(pdev);
688b67b2c7220b01 Fugang Duan 2020-04-19 1032
688b67b2c7220b01 Fugang Duan 2020-04-19 1033 PRINTM(MINFO, "Try set_consistent_dma_mask(32)\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1034 ret = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
688b67b2c7220b01 Fugang Duan 2020-04-19 1035 if (ret) {
688b67b2c7220b01 Fugang Duan 2020-04-19 1036 PRINTM(MERROR, "set_dma_mask(32) failed\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1037 goto err_set_dma_mask;
688b67b2c7220b01 Fugang Duan 2020-04-19 1038 }
688b67b2c7220b01 Fugang Duan 2020-04-19 1039
688b67b2c7220b01 Fugang Duan 2020-04-19 1040 ret = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
688b67b2c7220b01 Fugang Duan 2020-04-19 1041 if (ret) {
688b67b2c7220b01 Fugang Duan 2020-04-19 1042 PRINTM(MERROR, "set_consistent_dma_mask(64) failed\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1043 goto err_set_dma_mask;
688b67b2c7220b01 Fugang Duan 2020-04-19 1044 }
688b67b2c7220b01 Fugang Duan 2020-04-19 1045 return MLAN_STATUS_SUCCESS;
688b67b2c7220b01 Fugang Duan 2020-04-19 1046
688b67b2c7220b01 Fugang Duan 2020-04-19 1047 err_set_dma_mask:
688b67b2c7220b01 Fugang Duan 2020-04-19 1048 pci_disable_device(pdev);
688b67b2c7220b01 Fugang Duan 2020-04-19 1049 err_enable_dev:
688b67b2c7220b01 Fugang Duan 2020-04-19 1050 return MLAN_STATUS_FAILURE;
688b67b2c7220b01 Fugang Duan 2020-04-19 1051 }
688b67b2c7220b01 Fugang Duan 2020-04-19 1052
688b67b2c7220b01 Fugang Duan 2020-04-19 1053 /**
688b67b2c7220b01 Fugang Duan 2020-04-19 1054 * @brief This function initializes the PCI-E host
688b67b2c7220b01 Fugang Duan 2020-04-19 1055 * memory space, etc.
688b67b2c7220b01 Fugang Duan 2020-04-19 1056 *
688b67b2c7220b01 Fugang Duan 2020-04-19 1057 * @param card A pointer to pcie_service_card structure
688b67b2c7220b01 Fugang Duan 2020-04-19 1058 *
688b67b2c7220b01 Fugang Duan 2020-04-19 1059 * @return MLAN_STATUS_SUCCESS or MLAN_STATUS_FAILURE
688b67b2c7220b01 Fugang Duan 2020-04-19 1060 */
6b4a83a75fc1dccc Fugang Duan 2020-05-28 1061 mlan_status woal_pcie_init(pcie_service_card *card)
688b67b2c7220b01 Fugang Duan 2020-04-19 1062 {
688b67b2c7220b01 Fugang Duan 2020-04-19 1063 struct pci_dev *pdev = NULL;
688b67b2c7220b01 Fugang Duan 2020-04-19 1064 int ret;
688b67b2c7220b01 Fugang Duan 2020-04-19 1065
688b67b2c7220b01 Fugang Duan 2020-04-19 1066 pdev = card->dev;
688b67b2c7220b01 Fugang Duan 2020-04-19 1067 pci_set_drvdata(pdev, card);
688b67b2c7220b01 Fugang Duan 2020-04-19 1068 #if 0
688b67b2c7220b01 Fugang Duan 2020-04-19 1069 ret = pci_enable_device(pdev);
688b67b2c7220b01 Fugang Duan 2020-04-19 1070 if (ret)
688b67b2c7220b01 Fugang Duan 2020-04-19 1071 goto err_enable_dev;
688b67b2c7220b01 Fugang Duan 2020-04-19 1072
688b67b2c7220b01 Fugang Duan 2020-04-19 1073 pci_set_master(pdev);
688b67b2c7220b01 Fugang Duan 2020-04-19 1074
688b67b2c7220b01 Fugang Duan 2020-04-19 1075 PRINTM(MINFO, "Try set_consistent_dma_mask(32)\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1076 ret = pci_set_dma_mask(pdev, DMA_BIT_MASK(32));
688b67b2c7220b01 Fugang Duan 2020-04-19 1077 if (ret) {
688b67b2c7220b01 Fugang Duan 2020-04-19 1078 PRINTM(MERROR, "set_dma_mask(32) failed\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1079 goto err_set_dma_mask;
688b67b2c7220b01 Fugang Duan 2020-04-19 1080 }
688b67b2c7220b01 Fugang Duan 2020-04-19 1081
688b67b2c7220b01 Fugang Duan 2020-04-19 1082 ret = pci_set_consistent_dma_mask(pdev, DMA_BIT_MASK(32));
688b67b2c7220b01 Fugang Duan 2020-04-19 1083 if (ret) {
688b67b2c7220b01 Fugang Duan 2020-04-19 1084 PRINTM(MERROR, "set_consistent_dma_mask(64) failed\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1085 goto err_set_dma_mask;
688b67b2c7220b01 Fugang Duan 2020-04-19 1086 }
688b67b2c7220b01 Fugang Duan 2020-04-19 1087 #endif
688b67b2c7220b01 Fugang Duan 2020-04-19 1088
688b67b2c7220b01 Fugang Duan 2020-04-19 1089 ret = pci_request_region(pdev, 0, DRV_NAME);
688b67b2c7220b01 Fugang Duan 2020-04-19 1090 if (ret) {
688b67b2c7220b01 Fugang Duan 2020-04-19 1091 PRINTM(MERROR, "req_reg(0) error\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1092 goto err_req_region0;
688b67b2c7220b01 Fugang Duan 2020-04-19 1093 }
688b67b2c7220b01 Fugang Duan 2020-04-19 @1094 card->pci_mmap = pci_iomap(pdev, 0, 0);
688b67b2c7220b01 Fugang Duan 2020-04-19 1095 if (!card->pci_mmap) {
688b67b2c7220b01 Fugang Duan 2020-04-19 1096 PRINTM(MERROR, "iomap(0) error\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1097 goto err_iomap0;
688b67b2c7220b01 Fugang Duan 2020-04-19 1098 }
688b67b2c7220b01 Fugang Duan 2020-04-19 1099 ret = pci_request_region(pdev, 2, DRV_NAME);
688b67b2c7220b01 Fugang Duan 2020-04-19 1100 if (ret) {
688b67b2c7220b01 Fugang Duan 2020-04-19 1101 PRINTM(MERROR, "req_reg(2) error\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1102 goto err_req_region2;
688b67b2c7220b01 Fugang Duan 2020-04-19 1103 }
688b67b2c7220b01 Fugang Duan 2020-04-19 @1104 card->pci_mmap1 = pci_iomap(pdev, 2, 0);
688b67b2c7220b01 Fugang Duan 2020-04-19 1105 if (!card->pci_mmap1) {
688b67b2c7220b01 Fugang Duan 2020-04-19 1106 PRINTM(MERROR, "iomap(2) error\n");
688b67b2c7220b01 Fugang Duan 2020-04-19 1107 goto err_iomap2;
688b67b2c7220b01 Fugang Duan 2020-04-19 1108 }
688b67b2c7220b01 Fugang Duan 2020-04-19 1109
6b4a83a75fc1dccc Fugang Duan 2020-05-28 1110 PRINTM(MINFO,
6b4a83a75fc1dccc Fugang Duan 2020-05-28 1111 "PCI memory map Virt0: %p PCI memory map Virt2: "
6b4a83a75fc1dccc Fugang Duan 2020-05-28 1112 "%p\n",
6b4a83a75fc1dccc Fugang Duan 2020-05-28 1113 card->pci_mmap, card->pci_mmap1);
688b67b2c7220b01 Fugang Duan 2020-04-19 1114
688b67b2c7220b01 Fugang Duan 2020-04-19 1115 return MLAN_STATUS_SUCCESS;
688b67b2c7220b01 Fugang Duan 2020-04-19 1116
688b67b2c7220b01 Fugang Duan 2020-04-19 1117 err_iomap2:
688b67b2c7220b01 Fugang Duan 2020-04-19 1118 pci_release_region(pdev, 2);
688b67b2c7220b01 Fugang Duan 2020-04-19 1119 err_req_region2:
688b67b2c7220b01 Fugang Duan 2020-04-19 @1120 pci_iounmap(pdev, card->pci_mmap);
688b67b2c7220b01 Fugang Duan 2020-04-19 1121 err_iomap0:
688b67b2c7220b01 Fugang Duan 2020-04-19 1122 pci_release_region(pdev, 0);
688b67b2c7220b01 Fugang Duan 2020-04-19 1123 err_req_region0:
688b67b2c7220b01 Fugang Duan 2020-04-19 1124 #if 0
688b67b2c7220b01 Fugang Duan 2020-04-19 1125 err_set_dma_mask:
688b67b2c7220b01 Fugang Duan 2020-04-19 1126 #endif
688b67b2c7220b01 Fugang Duan 2020-04-19 1127
:::::: The code at line 1094 was first introduced by commit
:::::: 688b67b2c7220b01521ffe560da7eee33042c7bd MLK-23806-01 net: wireless: nxp: mxm_wifiex: add initial MxM wifi driver
:::::: TO: Fugang Duan <fugang.duan(a)nxp.com>
:::::: CC: Fugang Duan <fugang.duan(a)nxp.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 8 months
[android-common:android12-5.10 3217/3240] kernel/smp.c:957:7: error: use of undeclared identifier 's2idle_state'
by kernel test robot
tree: https://android.googlesource.com/kernel/common android12-5.10
head: 43edfc892e926ffa364f591dea27729ff4a60f3d
commit: 5ada76d0563798c02c4217d61d85cfacc1279a7a [3217/3240] ANDROID: sched/pause: prevent wake up paused cpus
config: arm64-randconfig-r036-20210114 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 6077d55381a6aa3e947ef7abdc36a7515c598c8a)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install arm64 cross compiling tool for clang build
# apt-get install binutils-aarch64-linux-gnu
git remote add android-common https://android.googlesource.com/kernel/common
git fetch --no-tags android-common android12-5.10
git checkout 5ada76d0563798c02c4217d61d85cfacc1279a7a
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
kernel/smp.c:444:6: warning: no previous prototype for function 'flush_smp_call_function_from_idle' [-Wmissing-prototypes]
void flush_smp_call_function_from_idle(void)
^
kernel/smp.c:444:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void flush_smp_call_function_from_idle(void)
^
static
>> kernel/smp.c:957:7: error: use of undeclared identifier 's2idle_state'
if (s2idle_state == S2IDLE_STATE_ENTER || cpu_active(cpu))
^
>> kernel/smp.c:957:23: error: use of undeclared identifier 'S2IDLE_STATE_ENTER'
if (s2idle_state == S2IDLE_STATE_ENTER || cpu_active(cpu))
^
1 warning and 2 errors generated.
vim +/s2idle_state +957 kernel/smp.c
941
942 /**
943 * wake_up_all_idle_cpus - break all cpus out of idle
944 * wake_up_all_idle_cpus try to break all cpus which is in idle state even
945 * including idle polling cpus, for non-idle cpus, we will do nothing
946 * for them.
947 */
948 void wake_up_all_idle_cpus(void)
949 {
950 int cpu;
951
952 preempt_disable();
953 for_each_online_cpu(cpu) {
954 if (cpu == smp_processor_id())
955 continue;
956
> 957 if (s2idle_state == S2IDLE_STATE_ENTER || cpu_active(cpu))
958 wake_up_if_idle(cpu);
959 }
960 preempt_enable();
961 }
962 EXPORT_SYMBOL_GPL(wake_up_all_idle_cpus);
963
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 8 months
[freescale-fslc:5.4-2.3.x-imx 12917/16543] drivers/gpu/drm/panel/panel-wks-101wx001.c:216:25: error: 'platform_of_match' undeclared here (not in a function)
by kernel test robot
tree: https://github.com/Freescale/linux-fslc 5.4-2.3.x-imx
head: a8a2b9ee4bec0b29d031324160b7f11af42a563a
commit: e15e046b8fceb6ae7c94d0ad78ef00a7432efb7b [12917/16543] MLK-24334-1: drm/panel: Add support for WKS-101WX001-WCT parallel display
config: m68k-allmodconfig (attached as .config)
compiler: m68k-linux-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/Freescale/linux-fslc/commit/e15e046b8fceb6ae7c94d0ad78...
git remote add freescale-fslc https://github.com/Freescale/linux-fslc
git fetch --no-tags freescale-fslc 5.4-2.3.x-imx
git checkout e15e046b8fceb6ae7c94d0ad78ef00a7432efb7b
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=m68k
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from arch/m68k/include/asm/io_mm.h:25,
from arch/m68k/include/asm/io.h:8,
from include/linux/fb.h:17,
from include/drm/drm_crtc.h:31,
from drivers/gpu/drm/panel/panel-wks-101wx001.c:18:
arch/m68k/include/asm/raw_io.h: In function 'raw_rom_outsb':
arch/m68k/include/asm/raw_io.h:83:7: warning: variable '__w' set but not used [-Wunused-but-set-variable]
83 | ({u8 __w, __v = (b); u32 _addr = ((u32) (addr)); \
| ^~~
arch/m68k/include/asm/raw_io.h:430:3: note: in expansion of macro 'rom_out_8'
430 | rom_out_8(port, *buf++);
| ^~~~~~~~~
arch/m68k/include/asm/raw_io.h: In function 'raw_rom_outsw':
arch/m68k/include/asm/raw_io.h:86:8: warning: variable '__w' set but not used [-Wunused-but-set-variable]
86 | ({u16 __w, __v = (w); u32 _addr = ((u32) (addr)); \
| ^~~
arch/m68k/include/asm/raw_io.h:448:3: note: in expansion of macro 'rom_out_be16'
448 | rom_out_be16(port, *buf++);
| ^~~~~~~~~~~~
arch/m68k/include/asm/raw_io.h: In function 'raw_rom_outsw_swapw':
arch/m68k/include/asm/raw_io.h:90:8: warning: variable '__w' set but not used [-Wunused-but-set-variable]
90 | ({u16 __w, __v = (w); u32 _addr = ((u32) (addr)); \
| ^~~
arch/m68k/include/asm/raw_io.h:466:3: note: in expansion of macro 'rom_out_le16'
466 | rom_out_le16(port, *buf++);
| ^~~~~~~~~~~~
In file included from drivers/gpu/drm/panel/panel-wks-101wx001.c:10:
drivers/gpu/drm/panel/panel-wks-101wx001.c: At top level:
>> drivers/gpu/drm/panel/panel-wks-101wx001.c:216:25: error: 'platform_of_match' undeclared here (not in a function)
216 | MODULE_DEVICE_TABLE(of, platform_of_match);
| ^~~~~~~~~~~~~~~~~
include/linux/module.h:227:15: note: in definition of macro 'MODULE_DEVICE_TABLE'
227 | extern typeof(name) __mod_##type##__##name##_device_table \
| ^~~~
>> include/linux/module.h:227:21: error: '__mod_of__platform_of_match_device_table' aliased to undefined symbol 'platform_of_match'
227 | extern typeof(name) __mod_##type##__##name##_device_table \
| ^~~~~~
drivers/gpu/drm/panel/panel-wks-101wx001.c:216:1: note: in expansion of macro 'MODULE_DEVICE_TABLE'
216 | MODULE_DEVICE_TABLE(of, platform_of_match);
| ^~~~~~~~~~~~~~~~~~~
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for NEED_MULTIPLE_NODES
Depends on DISCONTIGMEM || NUMA
Selected by
- SINGLE_MEMORY_CHUNK && MMU
vim +/platform_of_match +216 drivers/gpu/drm/panel/panel-wks-101wx001.c
211
212 static const struct of_device_id wks_of_match[] = {
213 { .compatible = "wks,101wx001", },
214 { /* sentinel */ }
215 };
> 216 MODULE_DEVICE_TABLE(of, platform_of_match);
217
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 8 months
[power-supply:for-next 14/18] drivers/power/supply/ltc4162-l-charger.c:912:34: warning: unused variable 'ltc4162l_of_match'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply.git for-next
head: b059b48500dab78cb6c7be006280dbc001c0a46b
commit: cd900f181ad6b548a8feded5dd224f789f09b1c6 [14/18] power/supply: Add ltc4162-l-charger
config: s390-randconfig-r036-20210114 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 6077d55381a6aa3e947ef7abdc36a7515c598c8a)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install s390 cross compiling tool for clang build
# apt-get install binutils-s390x-linux-gnu
# https://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply.gi...
git remote add power-supply https://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply.git
git fetch --no-tags power-supply for-next
git checkout cd900f181ad6b548a8feded5dd224f789f09b1c6
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=s390
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
include/uapi/linux/swab.h:19:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0x000000ffUL) << 24) | \
^
In file included from drivers/power/supply/ltc4162-l-charger.c:13:
In file included from include/linux/regmap.h:20:
In file included from include/linux/iopoll.h:14:
In file included from include/linux/io.h:13:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:20:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0x0000ff00UL) << 8) | \
^
In file included from drivers/power/supply/ltc4162-l-charger.c:13:
In file included from include/linux/regmap.h:20:
In file included from include/linux/iopoll.h:14:
In file included from include/linux/io.h:13:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:21:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0x00ff0000UL) >> 8) | \
^
In file included from drivers/power/supply/ltc4162-l-charger.c:13:
In file included from include/linux/regmap.h:20:
In file included from include/linux/iopoll.h:14:
In file included from include/linux/io.h:13:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:119:21: note: expanded from macro '__swab32'
___constant_swab32(x) : \
^
include/uapi/linux/swab.h:22:12: note: expanded from macro '___constant_swab32'
(((__u32)(x) & (__u32)0xff000000UL) >> 24)))
^
In file included from drivers/power/supply/ltc4162-l-charger.c:13:
In file included from include/linux/regmap.h:20:
In file included from include/linux/iopoll.h:14:
In file included from include/linux/io.h:13:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:490:61: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
val = __le32_to_cpu((__le32 __force)__raw_readl(PCI_IOBASE + addr));
~~~~~~~~~~ ^
include/uapi/linux/byteorder/big_endian.h:34:59: note: expanded from macro '__le32_to_cpu'
#define __le32_to_cpu(x) __swab32((__force __u32)(__le32)(x))
^
include/uapi/linux/swab.h:120:12: note: expanded from macro '__swab32'
__fswab32(x))
^
In file included from drivers/power/supply/ltc4162-l-charger.c:13:
In file included from include/linux/regmap.h:20:
In file included from include/linux/iopoll.h:14:
In file included from include/linux/io.h:13:
In file included from arch/s390/include/asm/io.h:80:
include/asm-generic/io.h:501:33: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writeb(value, PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:511:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writew((u16 __force)cpu_to_le16(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:521:59: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
__raw_writel((u32 __force)cpu_to_le32(value), PCI_IOBASE + addr);
~~~~~~~~~~ ^
include/asm-generic/io.h:609:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:617:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:625:20: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
readsl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:634:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesb(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:643:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesw(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
include/asm-generic/io.h:652:21: warning: performing pointer arithmetic on a null pointer has undefined behavior [-Wnull-pointer-arithmetic]
writesl(PCI_IOBASE + addr, buffer, count);
~~~~~~~~~~ ^
>> drivers/power/supply/ltc4162-l-charger.c:912:34: warning: unused variable 'ltc4162l_of_match' [-Wunused-const-variable]
static const struct of_device_id ltc4162l_of_match[] = {
^
21 warnings generated.
vim +/ltc4162l_of_match +912 drivers/power/supply/ltc4162-l-charger.c
911
> 912 static const struct of_device_id ltc4162l_of_match[] = {
913 { .compatible = "lltc,ltc4162-l", },
914 { },
915 };
916 MODULE_DEVICE_TABLE(of, ltc4162l_of_match);
917
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 8 months