[xlnx:master 59/60] drivers/clk/clk-xlnx-clock-wizard-v.c:119:43: sparse: sparse: cast removes address space '<asn:2>' of expression
kernel test robot
lkp at intel.com
Tue Feb 9 02:24:05 EST 2021
Hi Vishal,
First bad commit (maybe != root cause):
tree: https://github.com/Xilinx/linux-xlnx master
head: 043f8a226a752a1dd11f7ff64cee6dbe7334d394
commit: c0b33b8ccd38096c815f2dd39746044d0aa079d3 [59/60] staging: xlnxsync: Fix the uapi header license
config: h8300-randconfig-s031-20210209 (attached as .config)
compiler: h8300-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-215-g0fb77bb6-dirty
# https://github.com/Xilinx/linux-xlnx/commit/c0b33b8ccd38096c815f2dd39746044d0aa079d3
git remote add xlnx https://github.com/Xilinx/linux-xlnx
git fetch --no-tags xlnx master
git checkout c0b33b8ccd38096c815f2dd39746044d0aa079d3
# 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=h8300
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp at intel.com>
"sparse warnings: (new ones prefixed by >>)"
>> drivers/clk/clk-xlnx-clock-wizard-v.c:119:43: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c:149:43: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] b @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] b
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:44:11: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] b @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] b
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:44:11: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:225:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] b @@ got restricted __le32 [usertype] @@
include/asm-generic/io.h:225:22: sparse: expected unsigned int [usertype] b
include/asm-generic/io.h:225:22: sparse: got restricted __le32 [usertype]
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:44:11: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
include/asm-generic/io.h:179:15: sparse: sparse: cast to restricted __le32
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through include/linux/io.h):
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
arch/h8300/include/asm/io.h:26:18: sparse: sparse: cast removes address space '<asn:2>' of expression
drivers/clk/clk-xlnx-clock-wizard-v.c: note: in included file (through arch/h8300/include/asm/io.h, include/linux/io.h):
vim +119 drivers/clk/clk-xlnx-clock-wizard-v.c
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 113
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 114 static unsigned long clk_wzrd_recalc_rate(struct clk_hw *hw,
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 115 unsigned long parent_rate)
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 116 {
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 117 struct clk_wzrd_divider *divider = to_clk_wzrd_divider(hw);
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 118 void __iomem *div_addr =
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 @119 (void __iomem *)((u64)divider->base + divider->offset);
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 120 unsigned int vall, valh;
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 121 u32 div;
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 122 u32 p5en, edge, prediv2;
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 123 u32 all;
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 124
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 125 edge = !!(readl(div_addr) & BIT(8));
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 126 p5en = !!(readl(div_addr) & BIT(13));
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 127 prediv2 = !!(readl(div_addr) & BIT(11));
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 128 vall = readl(div_addr + 4) & 0xff;
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 129 valh = readl(div_addr + 4) >> 8;
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 130 all = valh + vall + edge;
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 131 if (!all)
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 132 all = 1;
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 133 div = (prediv2 + 1) * (all + (prediv2 * p5en) / 2);
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 134 return DIV_ROUND_UP_ULL((u64)parent_rate, div);
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 135 }
a7f1c7dfe2600b Shubhrajyoti Datta 2020-03-31 136
:::::: The code at line 119 was first introduced by commit
:::::: a7f1c7dfe2600b52aaec17d35e0a4c75d4102930 clocking-wizard: Add versal clocking wizard support
:::::: TO: Shubhrajyoti Datta <shubhrajyoti.datta at xilinx.com>
:::::: CC: Michal Simek <michal.simek at xilinx.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 19790 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20210209/b764703b/attachment-0001.gz>
More information about the linux-arm-kernel
mailing list