tree:
https://github.com/morimoto/linux fw-cleanup-2020-06-22-v1
head: da14a739a693d4ffaa9cf86098ba87926dd11f41
commit: 3e9248463fc0a4520944b3b3a1bee6cad8ad4a11 [82/146] sh: clkfwk: remove r8/r16/r32
config: sh-randconfig-s032-20200622 (attached as .config)
compiler: sh4-linux-gcc (GCC) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-rc2-13-gc59158c8-dirty
git checkout 3e9248463fc0a4520944b3b3a1bee6cad8ad4a11
# save the attached .config to linux build tree
make W=1 C=1 ARCH=sh CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
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/sh/clk/cpg.c:49:30: sparse: sparse: incorrect type in
assignment (incompatible argument 1 (different modifiers)) @@ expected unsigned int (
*read )( ... ) @@ got unsigned int ( * )( ... ) @@
> drivers/sh/clk/cpg.c:49:30: sparse: expected unsigned int ( *read )( ... )
> drivers/sh/clk/cpg.c:49:30: sparse: got unsigned int ( * )( ... )
drivers/sh/clk/cpg.c:51:30: sparse: sparse: incorrect type in assignment (incompatible
argument 1 (different modifiers)) @@ expected unsigned int ( *read )( ... ) @@ got
unsigned int ( * )( ... ) @@
drivers/sh/clk/cpg.c:51:30: sparse: expected unsigned int ( *read )( ... )
drivers/sh/clk/cpg.c:51:30: sparse: got unsigned int ( * )( ... )
drivers/sh/clk/cpg.c:53:30: sparse: sparse: incorrect type in assignment (incompatible
argument 1 (different modifiers)) @@ expected unsigned int ( *read )( ... ) @@ got
unsigned int ( * )( ... ) @@
drivers/sh/clk/cpg.c:53:30: sparse: expected unsigned int ( *read )( ... )
drivers/sh/clk/cpg.c:53:30: sparse: got unsigned int ( * )( ... )
drivers/sh/clk/cpg.c:469:43: sparse: sparse: Using plain integer as NULL pointer
vim +49 drivers/sh/clk/cpg.c
38
39 static int sh_clk_mstp_enable(struct clk *clk)
40 {
41 sh_clk_write(sh_clk_read(clk) & ~(1 << clk->enable_bit), clk);
42 if (clk->status_reg) {
43 unsigned int (*read)(const void __iomem *addr);
44 int i;
45 void __iomem *mapped_status = (phys_addr_t)clk->status_reg -
46 (phys_addr_t)clk->enable_reg + clk->mapped_reg;
47
48 if (clk->flags & CLK_ENABLE_REG_8BIT)
49 read = ioread8;
50 else if (clk->flags &
CLK_ENABLE_REG_16BIT)
51 read = ioread16;
52 else
53 read = ioread32;
54
55 for (i = 1000;
56 (read(mapped_status) & (1 << clk->enable_bit)) && i;
57 i--)
58 cpu_relax();
59 if (!i) {
60 pr_err("cpg: failed to enable %p[%d]\n",
61 clk->enable_reg, clk->enable_bit);
62 return -ETIMEDOUT;
63 }
64 }
65 return 0;
66 }
67
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org