Re: [PATCH v5] ucsi_ccg: Refine the UCSI Interrupt handling

From: kernel test robot
Date: Wed Jan 17 2024 - 19:22:36 EST


Hi Haotien,

kernel test robot noticed the following build warnings:

[auto build test WARNING on usb/usb-testing]
[also build test WARNING on usb/usb-next usb/usb-linus linus/master v6.7 next-20240117]
[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#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Haotien-Hsu/ucsi_ccg-Refine-the-UCSI-Interrupt-handling/20240116-140628
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb.git usb-testing
patch link: https://lore.kernel.org/r/20240116060323.844959-1-haotienh%40nvidia.com
patch subject: [PATCH v5] ucsi_ccg: Refine the UCSI Interrupt handling
config: loongarch-randconfig-r131-20240117 (https://download.01.org/0day-ci/archive/20240118/202401180801.WsI6B2pq-lkp@xxxxxxxxx/config)
compiler: loongarch64-linux-gcc (GCC) 13.2.0
reproduce: (https://download.01.org/0day-ci/archive/20240118/202401180801.WsI6B2pq-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202401180801.WsI6B2pq-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
>> drivers/usb/typec/ucsi/ucsi_ccg.c:341:19: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le32 [usertype] cci @@ got unsigned int [usertype] cci @@
drivers/usb/typec/ucsi/ucsi_ccg.c:341:19: sparse: expected restricted __le32 [usertype] cci
drivers/usb/typec/ucsi/ucsi_ccg.c:341:19: sparse: got unsigned int [usertype] cci

vim +341 drivers/usb/typec/ucsi/ucsi_ccg.c

320
321 static int ccg_op_region_update(struct ucsi_ccg *uc, u32 cci)
322 {
323 u16 reg = CCGX_RAB_UCSI_DATA_BLOCK(UCSI_MESSAGE_IN);
324 struct op_region *data = &uc->op_data;
325 unsigned char *buf;
326 size_t size = sizeof(data->message_in);
327
328 buf = kzalloc(size, GFP_ATOMIC);
329 if (!buf)
330 return -ENOMEM;
331 if (UCSI_CCI_LENGTH(cci)) {
332 int ret = ccg_read(uc, reg, (void *)buf, size);
333
334 if (ret) {
335 kfree(buf);
336 return ret;
337 }
338 }
339
340 spin_lock(&uc->op_lock);
> 341 data->cci = cci;
342 if (UCSI_CCI_LENGTH(cci))
343 memcpy(&data->message_in, buf, size);
344 spin_unlock(&uc->op_lock);
345 kfree(buf);
346 return 0;
347 }
348

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki