From: kernel test robot <lkp@intel.com> To: Lizhi Hou <lizhi.hou@xilinx.com>, linux-kernel@vger.kernel.org Cc: kbuild-all@lists.01.org, Lizhi Hou <lizhi.hou@xilinx.com>, linux-fpga@vger.kernel.org, maxz@xilinx.com, sonal.santan@xilinx.com, yliu@xilinx.com, michal.simek@xilinx.com, stefanos@xilinx.com, devicetree@vger.kernel.org, trix@redhat.com Subject: Re: [PATCH V5 XRT Alveo 20/20] fpga: xrt: Kconfig and Makefile updates for XRT drivers Date: Wed, 28 Apr 2021 11:12:00 +0800 [thread overview] Message-ID: <202104281021.cmJBYG3S-lkp@intel.com> (raw) In-Reply-To: <20210427205431.23896-21-lizhi.hou@xilinx.com> [-- Attachment #1: Type: text/plain, Size: 19664 bytes --] Hi Lizhi, I love your patch! Perhaps something to improve: [auto build test WARNING on linux/master] [also build test WARNING on linus/master v5.12 next-20210427] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Lizhi-Hou/XRT-Alveo-driver-overview/20210428-050424 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 1fe5501ba1abf2b7e78295df73675423bd6899a0 config: x86_64-randconfig-s032-20210428 (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.3-341-g8af24329-dirty # https://github.com/0day-ci/linux/commit/079fb263b22e0d961ac204b3928bdff5d8ebf3d5 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Lizhi-Hou/XRT-Alveo-driver-overview/20210428-050424 git checkout 079fb263b22e0d961ac204b3928bdff5d8ebf3d5 # save the attached .config to linux build tree make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> sparse warnings: (new ones prefixed by >>) >> drivers/fpga/xrt/lib/xclbin.c:314:22: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] freq @@ got restricted __be16 [usertype] @@ drivers/fpga/xrt/lib/xclbin.c:314:22: sparse: expected unsigned short [usertype] freq drivers/fpga/xrt/lib/xclbin.c:314:22: sparse: got restricted __be16 [usertype] -- >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 -- >> drivers/fpga/xrt/lib/xleaf/icap.c:58:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:58:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:58:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:60:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:60:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:60:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:62:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:62:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:62:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:64:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:64:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:64:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:66:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:66:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:66:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:68:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:68:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:68:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:70:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:70:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:70:9: sparse: got restricted __be32 [usertype] >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 -- >> drivers/fpga/xrt/lib/xleaf/clock.c:506:31: sparse: sparse: cast to restricted __be16 >> drivers/fpga/xrt/lib/xleaf/clock.c:506:31: sparse: sparse: cast to restricted __be16 >> drivers/fpga/xrt/lib/xleaf/clock.c:506:31: sparse: sparse: cast to restricted __be16 >> drivers/fpga/xrt/lib/xleaf/clock.c:506:31: sparse: sparse: cast to restricted __be16 -- >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 -- >> drivers/fpga/xrt/metadata/metadata.c:311:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] val @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/metadata/metadata.c:311:21: sparse: expected unsigned int [usertype] val drivers/fpga/xrt/metadata/metadata.c:311:21: sparse: got restricted __be32 [usertype] >> drivers/fpga/xrt/metadata/metadata.c:319:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long @@ got restricted __be64 [usertype] @@ drivers/fpga/xrt/metadata/metadata.c:319:29: sparse: expected unsigned long long drivers/fpga/xrt/metadata/metadata.c:319:29: sparse: got restricted __be64 [usertype] drivers/fpga/xrt/metadata/metadata.c:320:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long @@ got restricted __be64 [usertype] @@ drivers/fpga/xrt/metadata/metadata.c:320:29: sparse: expected unsigned long long drivers/fpga/xrt/metadata/metadata.c:320:29: sparse: got restricted __be64 [usertype] -- >> drivers/fpga/xrt/mgnt/xmgnt-main-region.c:71:30: sparse: sparse: symbol 'xmgnt_bridge_ops' was not declared. Should it be static? -- >> drivers/fpga/xrt/mgnt/root.c:211:18: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] vsec_bar @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/mgnt/root.c:211:18: sparse: expected unsigned int [usertype] vsec_bar drivers/fpga/xrt/mgnt/root.c:211:18: sparse: got restricted __be32 [usertype] >> drivers/fpga/xrt/mgnt/root.c:219:18: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long [usertype] vsec_off @@ got restricted __be64 [usertype] @@ drivers/fpga/xrt/mgnt/root.c:219:18: sparse: expected unsigned long long [usertype] vsec_off drivers/fpga/xrt/mgnt/root.c:219:18: sparse: got restricted __be64 [usertype] -- >> drivers/fpga/xrt/mgnt/xmgnt-main.c:570:56: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct axlf *[addressable] xclbin @@ drivers/fpga/xrt/mgnt/xmgnt-main.c:570:56: sparse: expected void const [noderef] __user *from drivers/fpga/xrt/mgnt/xmgnt-main.c:570:56: sparse: got struct axlf *[addressable] xclbin drivers/fpga/xrt/mgnt/xmgnt-main.c:585:48: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct axlf *[addressable] xclbin @@ drivers/fpga/xrt/mgnt/xmgnt-main.c:585:48: sparse: expected void const [noderef] __user *from drivers/fpga/xrt/mgnt/xmgnt-main.c:585:48: sparse: got struct axlf *[addressable] xclbin Please review and possibly fold the followup patch. vim +314 drivers/fpga/xrt/lib/xclbin.c d174deaba7ea5f Lizhi Hou 2021-04-27 243 d174deaba7ea5f Lizhi Hou 2021-04-27 244 struct xrt_clock_desc { d174deaba7ea5f Lizhi Hou 2021-04-27 245 char *clock_ep_name; d174deaba7ea5f Lizhi Hou 2021-04-27 246 u32 clock_xclbin_type; d174deaba7ea5f Lizhi Hou 2021-04-27 247 char *clkfreq_ep_name; d174deaba7ea5f Lizhi Hou 2021-04-27 @248 } clock_desc[] = { d174deaba7ea5f Lizhi Hou 2021-04-27 249 { d174deaba7ea5f Lizhi Hou 2021-04-27 250 .clock_ep_name = XRT_MD_NODE_CLK_KERNEL1, d174deaba7ea5f Lizhi Hou 2021-04-27 251 .clock_xclbin_type = CT_DATA, d174deaba7ea5f Lizhi Hou 2021-04-27 252 .clkfreq_ep_name = XRT_MD_NODE_CLKFREQ_K1, d174deaba7ea5f Lizhi Hou 2021-04-27 253 }, d174deaba7ea5f Lizhi Hou 2021-04-27 254 { d174deaba7ea5f Lizhi Hou 2021-04-27 255 .clock_ep_name = XRT_MD_NODE_CLK_KERNEL2, d174deaba7ea5f Lizhi Hou 2021-04-27 256 .clock_xclbin_type = CT_KERNEL, d174deaba7ea5f Lizhi Hou 2021-04-27 257 .clkfreq_ep_name = XRT_MD_NODE_CLKFREQ_K2, d174deaba7ea5f Lizhi Hou 2021-04-27 258 }, d174deaba7ea5f Lizhi Hou 2021-04-27 259 { d174deaba7ea5f Lizhi Hou 2021-04-27 260 .clock_ep_name = XRT_MD_NODE_CLK_KERNEL3, d174deaba7ea5f Lizhi Hou 2021-04-27 261 .clock_xclbin_type = CT_SYSTEM, d174deaba7ea5f Lizhi Hou 2021-04-27 262 .clkfreq_ep_name = XRT_MD_NODE_CLKFREQ_HBM, d174deaba7ea5f Lizhi Hou 2021-04-27 263 }, d174deaba7ea5f Lizhi Hou 2021-04-27 264 }; d174deaba7ea5f Lizhi Hou 2021-04-27 265 d174deaba7ea5f Lizhi Hou 2021-04-27 266 const char *xrt_clock_type2epname(enum XCLBIN_CLOCK_TYPE type) d174deaba7ea5f Lizhi Hou 2021-04-27 267 { d174deaba7ea5f Lizhi Hou 2021-04-27 268 int i; d174deaba7ea5f Lizhi Hou 2021-04-27 269 d174deaba7ea5f Lizhi Hou 2021-04-27 270 for (i = 0; i < ARRAY_SIZE(clock_desc); i++) { d174deaba7ea5f Lizhi Hou 2021-04-27 271 if (clock_desc[i].clock_xclbin_type == type) d174deaba7ea5f Lizhi Hou 2021-04-27 272 return clock_desc[i].clock_ep_name; d174deaba7ea5f Lizhi Hou 2021-04-27 273 } d174deaba7ea5f Lizhi Hou 2021-04-27 274 return NULL; d174deaba7ea5f Lizhi Hou 2021-04-27 275 } d174deaba7ea5f Lizhi Hou 2021-04-27 276 EXPORT_SYMBOL_GPL(xrt_clock_type2epname); d174deaba7ea5f Lizhi Hou 2021-04-27 277 d174deaba7ea5f Lizhi Hou 2021-04-27 278 static const char *clock_type2clkfreq_name(enum XCLBIN_CLOCK_TYPE type) d174deaba7ea5f Lizhi Hou 2021-04-27 279 { d174deaba7ea5f Lizhi Hou 2021-04-27 280 int i; d174deaba7ea5f Lizhi Hou 2021-04-27 281 d174deaba7ea5f Lizhi Hou 2021-04-27 282 for (i = 0; i < ARRAY_SIZE(clock_desc); i++) { d174deaba7ea5f Lizhi Hou 2021-04-27 283 if (clock_desc[i].clock_xclbin_type == type) d174deaba7ea5f Lizhi Hou 2021-04-27 284 return clock_desc[i].clkfreq_ep_name; d174deaba7ea5f Lizhi Hou 2021-04-27 285 } d174deaba7ea5f Lizhi Hou 2021-04-27 286 return NULL; d174deaba7ea5f Lizhi Hou 2021-04-27 287 } d174deaba7ea5f Lizhi Hou 2021-04-27 288 d174deaba7ea5f Lizhi Hou 2021-04-27 289 static int xrt_xclbin_add_clock_metadata(struct device *dev, d174deaba7ea5f Lizhi Hou 2021-04-27 290 const struct axlf *xclbin, d174deaba7ea5f Lizhi Hou 2021-04-27 291 char *dtb) d174deaba7ea5f Lizhi Hou 2021-04-27 292 { d174deaba7ea5f Lizhi Hou 2021-04-27 293 struct clock_freq_topology *clock_topo; d174deaba7ea5f Lizhi Hou 2021-04-27 294 u16 freq; d174deaba7ea5f Lizhi Hou 2021-04-27 295 int rc; d174deaba7ea5f Lizhi Hou 2021-04-27 296 int i; d174deaba7ea5f Lizhi Hou 2021-04-27 297 d174deaba7ea5f Lizhi Hou 2021-04-27 298 /* if clock section does not exist, add nothing and return success */ d174deaba7ea5f Lizhi Hou 2021-04-27 299 rc = xrt_xclbin_get_section(dev, xclbin, CLOCK_FREQ_TOPOLOGY, d174deaba7ea5f Lizhi Hou 2021-04-27 300 (void **)&clock_topo, NULL); d174deaba7ea5f Lizhi Hou 2021-04-27 301 if (rc == -ENOENT) d174deaba7ea5f Lizhi Hou 2021-04-27 302 return 0; d174deaba7ea5f Lizhi Hou 2021-04-27 303 else if (rc) d174deaba7ea5f Lizhi Hou 2021-04-27 304 return rc; d174deaba7ea5f Lizhi Hou 2021-04-27 305 d174deaba7ea5f Lizhi Hou 2021-04-27 306 for (i = 0; i < clock_topo->count; i++) { d174deaba7ea5f Lizhi Hou 2021-04-27 307 u8 type = clock_topo->clock_freq[i].type; d174deaba7ea5f Lizhi Hou 2021-04-27 308 const char *ep_name = xrt_clock_type2epname(type); d174deaba7ea5f Lizhi Hou 2021-04-27 309 const char *counter_name = clock_type2clkfreq_name(type); d174deaba7ea5f Lizhi Hou 2021-04-27 310 d174deaba7ea5f Lizhi Hou 2021-04-27 311 if (!ep_name || !counter_name) d174deaba7ea5f Lizhi Hou 2021-04-27 312 continue; d174deaba7ea5f Lizhi Hou 2021-04-27 313 d174deaba7ea5f Lizhi Hou 2021-04-27 @314 freq = cpu_to_be16(clock_topo->clock_freq[i].freq_MHZ); d174deaba7ea5f Lizhi Hou 2021-04-27 315 rc = xrt_md_set_prop(dev, dtb, ep_name, NULL, XRT_MD_PROP_CLK_FREQ, d174deaba7ea5f Lizhi Hou 2021-04-27 316 &freq, sizeof(freq)); d174deaba7ea5f Lizhi Hou 2021-04-27 317 if (rc) d174deaba7ea5f Lizhi Hou 2021-04-27 318 break; d174deaba7ea5f Lizhi Hou 2021-04-27 319 d174deaba7ea5f Lizhi Hou 2021-04-27 320 rc = xrt_md_set_prop(dev, dtb, ep_name, NULL, XRT_MD_PROP_CLK_CNT, d174deaba7ea5f Lizhi Hou 2021-04-27 321 counter_name, strlen(counter_name) + 1); d174deaba7ea5f Lizhi Hou 2021-04-27 322 if (rc) d174deaba7ea5f Lizhi Hou 2021-04-27 323 break; d174deaba7ea5f Lizhi Hou 2021-04-27 324 } d174deaba7ea5f Lizhi Hou 2021-04-27 325 d174deaba7ea5f Lizhi Hou 2021-04-27 326 vfree(clock_topo); d174deaba7ea5f Lizhi Hou 2021-04-27 327 d174deaba7ea5f Lizhi Hou 2021-04-27 328 return rc; d174deaba7ea5f Lizhi Hou 2021-04-27 329 } d174deaba7ea5f Lizhi Hou 2021-04-27 330 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org [-- Attachment #2: .config.gz --] [-- Type: application/gzip, Size: 38255 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com> To: kbuild-all@lists.01.org Subject: Re: [PATCH V5 XRT Alveo 20/20] fpga: xrt: Kconfig and Makefile updates for XRT drivers Date: Wed, 28 Apr 2021 11:12:00 +0800 [thread overview] Message-ID: <202104281021.cmJBYG3S-lkp@intel.com> (raw) In-Reply-To: <20210427205431.23896-21-lizhi.hou@xilinx.com> [-- Attachment #1: Type: text/plain, Size: 19924 bytes --] Hi Lizhi, I love your patch! Perhaps something to improve: [auto build test WARNING on linux/master] [also build test WARNING on linus/master v5.12 next-20210427] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Lizhi-Hou/XRT-Alveo-driver-overview/20210428-050424 base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 1fe5501ba1abf2b7e78295df73675423bd6899a0 config: x86_64-randconfig-s032-20210428 (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.3-341-g8af24329-dirty # https://github.com/0day-ci/linux/commit/079fb263b22e0d961ac204b3928bdff5d8ebf3d5 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Lizhi-Hou/XRT-Alveo-driver-overview/20210428-050424 git checkout 079fb263b22e0d961ac204b3928bdff5d8ebf3d5 # save the attached .config to linux build tree make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=x86_64 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com> sparse warnings: (new ones prefixed by >>) >> drivers/fpga/xrt/lib/xclbin.c:314:22: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] freq @@ got restricted __be16 [usertype] @@ drivers/fpga/xrt/lib/xclbin.c:314:22: sparse: expected unsigned short [usertype] freq drivers/fpga/xrt/lib/xclbin.c:314:22: sparse: got restricted __be16 [usertype] -- >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/xleaf/vsec.c:270:9: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:273:40: sparse: sparse: cast to restricted __be32 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/xleaf/vsec.c:279:29: sparse: sparse: cast to restricted __be64 -- >> drivers/fpga/xrt/lib/xleaf/icap.c:58:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:58:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:58:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:60:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:60:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:60:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:62:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:62:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:62:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:64:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:64:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:64:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:66:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:66:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:66:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:68:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:68:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:68:9: sparse: got restricted __be32 [usertype] drivers/fpga/xrt/lib/xleaf/icap.c:70:9: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/lib/xleaf/icap.c:70:9: sparse: expected unsigned int drivers/fpga/xrt/lib/xleaf/icap.c:70:9: sparse: got restricted __be32 [usertype] >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/xleaf/icap.c:113:25: sparse: sparse: cast to restricted __be32 -- >> drivers/fpga/xrt/lib/xleaf/clock.c:506:31: sparse: sparse: cast to restricted __be16 >> drivers/fpga/xrt/lib/xleaf/clock.c:506:31: sparse: sparse: cast to restricted __be16 >> drivers/fpga/xrt/lib/xleaf/clock.c:506:31: sparse: sparse: cast to restricted __be16 >> drivers/fpga/xrt/lib/xleaf/clock.c:506:31: sparse: sparse: cast to restricted __be16 -- >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:195:33: sparse: sparse: cast to restricted __be32 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 >> drivers/fpga/xrt/lib/subdev.c:197:57: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:198:55: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 drivers/fpga/xrt/lib/subdev.c:199:25: sparse: sparse: cast to restricted __be64 -- >> drivers/fpga/xrt/metadata/metadata.c:311:21: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] val @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/metadata/metadata.c:311:21: sparse: expected unsigned int [usertype] val drivers/fpga/xrt/metadata/metadata.c:311:21: sparse: got restricted __be32 [usertype] >> drivers/fpga/xrt/metadata/metadata.c:319:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long @@ got restricted __be64 [usertype] @@ drivers/fpga/xrt/metadata/metadata.c:319:29: sparse: expected unsigned long long drivers/fpga/xrt/metadata/metadata.c:319:29: sparse: got restricted __be64 [usertype] drivers/fpga/xrt/metadata/metadata.c:320:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long @@ got restricted __be64 [usertype] @@ drivers/fpga/xrt/metadata/metadata.c:320:29: sparse: expected unsigned long long drivers/fpga/xrt/metadata/metadata.c:320:29: sparse: got restricted __be64 [usertype] -- >> drivers/fpga/xrt/mgnt/xmgnt-main-region.c:71:30: sparse: sparse: symbol 'xmgnt_bridge_ops' was not declared. Should it be static? -- >> drivers/fpga/xrt/mgnt/root.c:211:18: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] vsec_bar @@ got restricted __be32 [usertype] @@ drivers/fpga/xrt/mgnt/root.c:211:18: sparse: expected unsigned int [usertype] vsec_bar drivers/fpga/xrt/mgnt/root.c:211:18: sparse: got restricted __be32 [usertype] >> drivers/fpga/xrt/mgnt/root.c:219:18: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long [usertype] vsec_off @@ got restricted __be64 [usertype] @@ drivers/fpga/xrt/mgnt/root.c:219:18: sparse: expected unsigned long long [usertype] vsec_off drivers/fpga/xrt/mgnt/root.c:219:18: sparse: got restricted __be64 [usertype] -- >> drivers/fpga/xrt/mgnt/xmgnt-main.c:570:56: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct axlf *[addressable] xclbin @@ drivers/fpga/xrt/mgnt/xmgnt-main.c:570:56: sparse: expected void const [noderef] __user *from drivers/fpga/xrt/mgnt/xmgnt-main.c:570:56: sparse: got struct axlf *[addressable] xclbin drivers/fpga/xrt/mgnt/xmgnt-main.c:585:48: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct axlf *[addressable] xclbin @@ drivers/fpga/xrt/mgnt/xmgnt-main.c:585:48: sparse: expected void const [noderef] __user *from drivers/fpga/xrt/mgnt/xmgnt-main.c:585:48: sparse: got struct axlf *[addressable] xclbin Please review and possibly fold the followup patch. vim +314 drivers/fpga/xrt/lib/xclbin.c d174deaba7ea5f Lizhi Hou 2021-04-27 243 d174deaba7ea5f Lizhi Hou 2021-04-27 244 struct xrt_clock_desc { d174deaba7ea5f Lizhi Hou 2021-04-27 245 char *clock_ep_name; d174deaba7ea5f Lizhi Hou 2021-04-27 246 u32 clock_xclbin_type; d174deaba7ea5f Lizhi Hou 2021-04-27 247 char *clkfreq_ep_name; d174deaba7ea5f Lizhi Hou 2021-04-27 @248 } clock_desc[] = { d174deaba7ea5f Lizhi Hou 2021-04-27 249 { d174deaba7ea5f Lizhi Hou 2021-04-27 250 .clock_ep_name = XRT_MD_NODE_CLK_KERNEL1, d174deaba7ea5f Lizhi Hou 2021-04-27 251 .clock_xclbin_type = CT_DATA, d174deaba7ea5f Lizhi Hou 2021-04-27 252 .clkfreq_ep_name = XRT_MD_NODE_CLKFREQ_K1, d174deaba7ea5f Lizhi Hou 2021-04-27 253 }, d174deaba7ea5f Lizhi Hou 2021-04-27 254 { d174deaba7ea5f Lizhi Hou 2021-04-27 255 .clock_ep_name = XRT_MD_NODE_CLK_KERNEL2, d174deaba7ea5f Lizhi Hou 2021-04-27 256 .clock_xclbin_type = CT_KERNEL, d174deaba7ea5f Lizhi Hou 2021-04-27 257 .clkfreq_ep_name = XRT_MD_NODE_CLKFREQ_K2, d174deaba7ea5f Lizhi Hou 2021-04-27 258 }, d174deaba7ea5f Lizhi Hou 2021-04-27 259 { d174deaba7ea5f Lizhi Hou 2021-04-27 260 .clock_ep_name = XRT_MD_NODE_CLK_KERNEL3, d174deaba7ea5f Lizhi Hou 2021-04-27 261 .clock_xclbin_type = CT_SYSTEM, d174deaba7ea5f Lizhi Hou 2021-04-27 262 .clkfreq_ep_name = XRT_MD_NODE_CLKFREQ_HBM, d174deaba7ea5f Lizhi Hou 2021-04-27 263 }, d174deaba7ea5f Lizhi Hou 2021-04-27 264 }; d174deaba7ea5f Lizhi Hou 2021-04-27 265 d174deaba7ea5f Lizhi Hou 2021-04-27 266 const char *xrt_clock_type2epname(enum XCLBIN_CLOCK_TYPE type) d174deaba7ea5f Lizhi Hou 2021-04-27 267 { d174deaba7ea5f Lizhi Hou 2021-04-27 268 int i; d174deaba7ea5f Lizhi Hou 2021-04-27 269 d174deaba7ea5f Lizhi Hou 2021-04-27 270 for (i = 0; i < ARRAY_SIZE(clock_desc); i++) { d174deaba7ea5f Lizhi Hou 2021-04-27 271 if (clock_desc[i].clock_xclbin_type == type) d174deaba7ea5f Lizhi Hou 2021-04-27 272 return clock_desc[i].clock_ep_name; d174deaba7ea5f Lizhi Hou 2021-04-27 273 } d174deaba7ea5f Lizhi Hou 2021-04-27 274 return NULL; d174deaba7ea5f Lizhi Hou 2021-04-27 275 } d174deaba7ea5f Lizhi Hou 2021-04-27 276 EXPORT_SYMBOL_GPL(xrt_clock_type2epname); d174deaba7ea5f Lizhi Hou 2021-04-27 277 d174deaba7ea5f Lizhi Hou 2021-04-27 278 static const char *clock_type2clkfreq_name(enum XCLBIN_CLOCK_TYPE type) d174deaba7ea5f Lizhi Hou 2021-04-27 279 { d174deaba7ea5f Lizhi Hou 2021-04-27 280 int i; d174deaba7ea5f Lizhi Hou 2021-04-27 281 d174deaba7ea5f Lizhi Hou 2021-04-27 282 for (i = 0; i < ARRAY_SIZE(clock_desc); i++) { d174deaba7ea5f Lizhi Hou 2021-04-27 283 if (clock_desc[i].clock_xclbin_type == type) d174deaba7ea5f Lizhi Hou 2021-04-27 284 return clock_desc[i].clkfreq_ep_name; d174deaba7ea5f Lizhi Hou 2021-04-27 285 } d174deaba7ea5f Lizhi Hou 2021-04-27 286 return NULL; d174deaba7ea5f Lizhi Hou 2021-04-27 287 } d174deaba7ea5f Lizhi Hou 2021-04-27 288 d174deaba7ea5f Lizhi Hou 2021-04-27 289 static int xrt_xclbin_add_clock_metadata(struct device *dev, d174deaba7ea5f Lizhi Hou 2021-04-27 290 const struct axlf *xclbin, d174deaba7ea5f Lizhi Hou 2021-04-27 291 char *dtb) d174deaba7ea5f Lizhi Hou 2021-04-27 292 { d174deaba7ea5f Lizhi Hou 2021-04-27 293 struct clock_freq_topology *clock_topo; d174deaba7ea5f Lizhi Hou 2021-04-27 294 u16 freq; d174deaba7ea5f Lizhi Hou 2021-04-27 295 int rc; d174deaba7ea5f Lizhi Hou 2021-04-27 296 int i; d174deaba7ea5f Lizhi Hou 2021-04-27 297 d174deaba7ea5f Lizhi Hou 2021-04-27 298 /* if clock section does not exist, add nothing and return success */ d174deaba7ea5f Lizhi Hou 2021-04-27 299 rc = xrt_xclbin_get_section(dev, xclbin, CLOCK_FREQ_TOPOLOGY, d174deaba7ea5f Lizhi Hou 2021-04-27 300 (void **)&clock_topo, NULL); d174deaba7ea5f Lizhi Hou 2021-04-27 301 if (rc == -ENOENT) d174deaba7ea5f Lizhi Hou 2021-04-27 302 return 0; d174deaba7ea5f Lizhi Hou 2021-04-27 303 else if (rc) d174deaba7ea5f Lizhi Hou 2021-04-27 304 return rc; d174deaba7ea5f Lizhi Hou 2021-04-27 305 d174deaba7ea5f Lizhi Hou 2021-04-27 306 for (i = 0; i < clock_topo->count; i++) { d174deaba7ea5f Lizhi Hou 2021-04-27 307 u8 type = clock_topo->clock_freq[i].type; d174deaba7ea5f Lizhi Hou 2021-04-27 308 const char *ep_name = xrt_clock_type2epname(type); d174deaba7ea5f Lizhi Hou 2021-04-27 309 const char *counter_name = clock_type2clkfreq_name(type); d174deaba7ea5f Lizhi Hou 2021-04-27 310 d174deaba7ea5f Lizhi Hou 2021-04-27 311 if (!ep_name || !counter_name) d174deaba7ea5f Lizhi Hou 2021-04-27 312 continue; d174deaba7ea5f Lizhi Hou 2021-04-27 313 d174deaba7ea5f Lizhi Hou 2021-04-27 @314 freq = cpu_to_be16(clock_topo->clock_freq[i].freq_MHZ); d174deaba7ea5f Lizhi Hou 2021-04-27 315 rc = xrt_md_set_prop(dev, dtb, ep_name, NULL, XRT_MD_PROP_CLK_FREQ, d174deaba7ea5f Lizhi Hou 2021-04-27 316 &freq, sizeof(freq)); d174deaba7ea5f Lizhi Hou 2021-04-27 317 if (rc) d174deaba7ea5f Lizhi Hou 2021-04-27 318 break; d174deaba7ea5f Lizhi Hou 2021-04-27 319 d174deaba7ea5f Lizhi Hou 2021-04-27 320 rc = xrt_md_set_prop(dev, dtb, ep_name, NULL, XRT_MD_PROP_CLK_CNT, d174deaba7ea5f Lizhi Hou 2021-04-27 321 counter_name, strlen(counter_name) + 1); d174deaba7ea5f Lizhi Hou 2021-04-27 322 if (rc) d174deaba7ea5f Lizhi Hou 2021-04-27 323 break; d174deaba7ea5f Lizhi Hou 2021-04-27 324 } d174deaba7ea5f Lizhi Hou 2021-04-27 325 d174deaba7ea5f Lizhi Hou 2021-04-27 326 vfree(clock_topo); d174deaba7ea5f Lizhi Hou 2021-04-27 327 d174deaba7ea5f Lizhi Hou 2021-04-27 328 return rc; d174deaba7ea5f Lizhi Hou 2021-04-27 329 } d174deaba7ea5f Lizhi Hou 2021-04-27 330 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org [-- Attachment #2: config.gz --] [-- Type: application/gzip, Size: 38255 bytes --]
next prev parent reply other threads:[~2021-04-28 3:12 UTC|newest] Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-04-27 20:54 [PATCH V5 XRT Alveo 00/20] XRT Alveo driver overview Lizhi Hou 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 01/20] Documentation: fpga: Add a document describing XRT Alveo drivers Lizhi Hou 2021-04-28 19:40 ` Tom Rix 2021-05-03 23:00 ` Moritz Fischer 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 02/20] fpga: xrt: driver metadata helper functions Lizhi Hou 2021-05-01 20:19 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 03/20] fpga: xrt: xclbin file " Lizhi Hou 2021-05-03 13:00 ` Tom Rix 2021-05-03 23:19 ` Moritz Fischer 2021-05-05 17:21 ` Lizhi Hou 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 04/20] fpga: xrt: xrt-lib driver manager Lizhi Hou 2021-05-03 13:06 ` Tom Rix 2021-05-03 21:51 ` Lizhi Hou 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 05/20] fpga: xrt: group driver Lizhi Hou 2021-05-03 13:10 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 06/20] fpga: xrt: char dev node helper functions Lizhi Hou 2021-05-03 13:27 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 07/20] fpga: xrt: root driver infrastructure Lizhi Hou 2021-05-03 13:37 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 08/20] fpga: xrt: " Lizhi Hou 2021-05-03 13:46 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 09/20] fpga: xrt: management physical function driver (root) Lizhi Hou 2021-05-03 13:49 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 10/20] fpga: xrt: main driver for management function device Lizhi Hou 2021-05-04 13:50 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 11/20] fpga: xrt: fpga-mgr and region implementation for xclbin download Lizhi Hou 2021-05-04 13:56 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 12/20] fpga: xrt: VSEC driver Lizhi Hou 2021-05-04 14:00 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 13/20] fpga: xrt: User Clock Subsystem driver Lizhi Hou 2021-05-04 14:03 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 14/20] fpga: xrt: ICAP driver Lizhi Hou 2021-05-04 14:05 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 15/20] fpga: xrt: devctl xrt driver Lizhi Hou 2021-05-04 14:07 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 16/20] fpga: xrt: clock driver Lizhi Hou 2021-05-04 14:08 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 17/20] fpga: xrt: clock frequency counter driver Lizhi Hou 2021-05-04 14:10 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 18/20] fpga: xrt: DDR calibration driver Lizhi Hou 2021-05-04 14:11 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 19/20] fpga: xrt: partition isolation driver Lizhi Hou 2021-05-04 14:13 ` Tom Rix 2021-04-27 20:54 ` [PATCH V5 XRT Alveo 20/20] fpga: xrt: Kconfig and Makefile updates for XRT drivers Lizhi Hou 2021-04-27 23:53 ` kernel test robot 2021-04-27 23:53 ` kernel test robot 2021-04-28 3:12 ` kernel test robot [this message] 2021-04-28 3:12 ` kernel test robot 2021-04-28 3:12 ` [RFC PATCH] fpga: xrt: xmgnt_bridge_ops can be static kernel test robot 2021-04-28 3:12 ` kernel test robot 2021-05-04 14:18 ` [PATCH V5 XRT Alveo 20/20] fpga: xrt: Kconfig and Makefile updates for XRT drivers Tom Rix 2021-04-28 17:36 ` [PATCH V5 XRT Alveo 00/20] XRT Alveo driver overview Tom Rix
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=202104281021.cmJBYG3S-lkp@intel.com \ --to=lkp@intel.com \ --cc=devicetree@vger.kernel.org \ --cc=kbuild-all@lists.01.org \ --cc=linux-fpga@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=lizhi.hou@xilinx.com \ --cc=maxz@xilinx.com \ --cc=michal.simek@xilinx.com \ --cc=sonal.santan@xilinx.com \ --cc=stefanos@xilinx.com \ --cc=trix@redhat.com \ --cc=yliu@xilinx.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.