All of lore.kernel.org
 help / color / mirror / Atom feed
* [jic23-iio:testing 268/269] drivers/iio/proximity/aw96103.c:475 aw96103_reg_version_comp() warn: iterator 'i' not incremented
@ 2024-09-03 17:30 kernel test robot
  0 siblings, 0 replies; 3+ messages in thread
From: kernel test robot @ 2024-09-03 17:30 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp, Dan Carpenter

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: shuaijie wang <wangshuaijie@awinic.com>
CC: Jonathan Cameron <Jonathan.Cameron@huawei.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git testing
head:   fa533227a89a1d8509a1ad4e93a35d683a77aa23
commit: a369e1d1a10790f63b4b858dc74b53730146754f [268/269] iio: proximity: aw96103: Add support for aw96103/aw96105 proximity sensor
:::::: branch date: 23 hours ago
:::::: commit date: 3 days ago
config: riscv-randconfig-r072-20240901 (https://download.01.org/0day-ci/archive/20240904/202409040114.Rpkwt3gm-lkp@intel.com/config)
compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 6f682c26b04f0b349c4c473756cb8625b4f37c6d)

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@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202409040114.Rpkwt3gm-lkp@intel.com/

smatch warnings:
drivers/iio/proximity/aw96103.c:475 aw96103_reg_version_comp() warn: iterator 'i' not incremented

vim +/i +475 drivers/iio/proximity/aw96103.c

a369e1d1a10790f shuaijie wang 2024-08-27  456  
a369e1d1a10790f shuaijie wang 2024-08-27  457  static int aw96103_reg_version_comp(struct aw96103 *aw96103,
a369e1d1a10790f shuaijie wang 2024-08-27  458  				    struct aw_bin *aw_bin)
a369e1d1a10790f shuaijie wang 2024-08-27  459  {
a369e1d1a10790f shuaijie wang 2024-08-27  460  	u32 blfilt1_data, fw_ver;
a369e1d1a10790f shuaijie wang 2024-08-27  461  	unsigned char i;
a369e1d1a10790f shuaijie wang 2024-08-27  462  	int ret;
a369e1d1a10790f shuaijie wang 2024-08-27  463  
a369e1d1a10790f shuaijie wang 2024-08-27  464  	ret = regmap_read(aw96103->regmap, AW96103_REG_FWVER2, &fw_ver);
a369e1d1a10790f shuaijie wang 2024-08-27  465  	if (ret)
a369e1d1a10790f shuaijie wang 2024-08-27  466  		return ret;
a369e1d1a10790f shuaijie wang 2024-08-27  467  	/*
a369e1d1a10790f shuaijie wang 2024-08-27  468  	 * If the chip version is AW96103A and the loaded register
a369e1d1a10790f shuaijie wang 2024-08-27  469  	 * configuration file is for AW96103, special handling of the
a369e1d1a10790f shuaijie wang 2024-08-27  470  	 * AW96103_REG_BLRSTRNG_CH0 register is required.
a369e1d1a10790f shuaijie wang 2024-08-27  471  	 */
a369e1d1a10790f shuaijie wang 2024-08-27  472  	if ((fw_ver != AW96103A) || (aw_bin->chip_type[7] != '\0'))
a369e1d1a10790f shuaijie wang 2024-08-27  473  		return 0;
a369e1d1a10790f shuaijie wang 2024-08-27  474  
a369e1d1a10790f shuaijie wang 2024-08-27 @475  	for (i = 0; i < aw96103->max_channels; i++) {
a369e1d1a10790f shuaijie wang 2024-08-27  476  		ret = regmap_read(aw96103->regmap,
a369e1d1a10790f shuaijie wang 2024-08-27  477  			AW96103_REG_BLFILT_CH0 + (AW96103_BLFILT_CH_STEP * i),
a369e1d1a10790f shuaijie wang 2024-08-27  478  			&blfilt1_data);
a369e1d1a10790f shuaijie wang 2024-08-27  479  		if (ret)
a369e1d1a10790f shuaijie wang 2024-08-27  480  			return ret;
a369e1d1a10790f shuaijie wang 2024-08-27  481  		if (FIELD_GET(AW96103_BLERRTRIG_MASK, blfilt1_data) != 1)
a369e1d1a10790f shuaijie wang 2024-08-27  482  			return 0;
a369e1d1a10790f shuaijie wang 2024-08-27  483  
a369e1d1a10790f shuaijie wang 2024-08-27  484  		return regmap_update_bits(aw96103->regmap,
a369e1d1a10790f shuaijie wang 2024-08-27  485  			AW96103_REG_BLRSTRNG_CH0 + (AW96103_BLFILT_CH_STEP * i),
a369e1d1a10790f shuaijie wang 2024-08-27  486  			AW96103_BLRSTRNG_MASK, 1 << i);
a369e1d1a10790f shuaijie wang 2024-08-27  487  	}
a369e1d1a10790f shuaijie wang 2024-08-27  488  
a369e1d1a10790f shuaijie wang 2024-08-27  489  	return 0;
a369e1d1a10790f shuaijie wang 2024-08-27  490  }
a369e1d1a10790f shuaijie wang 2024-08-27  491  

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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [jic23-iio:testing 268/269] drivers/iio/proximity/aw96103.c:475 aw96103_reg_version_comp() warn: iterator 'i' not incremented
@ 2024-09-03 19:31 Dan Carpenter
  2024-09-04  9:28 ` Jonathan Cameron
  0 siblings, 1 reply; 3+ messages in thread
From: Dan Carpenter @ 2024-09-03 19:31 UTC (permalink / raw)
  To: oe-kbuild, shuaijie wang; +Cc: lkp, oe-kbuild-all, Jonathan Cameron

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git testing
head:   fa533227a89a1d8509a1ad4e93a35d683a77aa23
commit: a369e1d1a10790f63b4b858dc74b53730146754f [268/269] iio: proximity: aw96103: Add support for aw96103/aw96105 proximity sensor
config: riscv-randconfig-r072-20240901 (https://download.01.org/0day-ci/archive/20240904/202409040114.Rpkwt3gm-lkp@intel.com/config)
compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 6f682c26b04f0b349c4c473756cb8625b4f37c6d)

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@intel.com>
| Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
| Closes: https://lore.kernel.org/r/202409040114.Rpkwt3gm-lkp@intel.com/

smatch warnings:
drivers/iio/proximity/aw96103.c:475 aw96103_reg_version_comp() warn: iterator 'i' not incremented

vim +/i +475 drivers/iio/proximity/aw96103.c

a369e1d1a10790f shuaijie wang 2024-08-27  457  static int aw96103_reg_version_comp(struct aw96103 *aw96103,
a369e1d1a10790f shuaijie wang 2024-08-27  458  				    struct aw_bin *aw_bin)
a369e1d1a10790f shuaijie wang 2024-08-27  459  {
a369e1d1a10790f shuaijie wang 2024-08-27  460  	u32 blfilt1_data, fw_ver;
a369e1d1a10790f shuaijie wang 2024-08-27  461  	unsigned char i;
a369e1d1a10790f shuaijie wang 2024-08-27  462  	int ret;
a369e1d1a10790f shuaijie wang 2024-08-27  463  
a369e1d1a10790f shuaijie wang 2024-08-27  464  	ret = regmap_read(aw96103->regmap, AW96103_REG_FWVER2, &fw_ver);
a369e1d1a10790f shuaijie wang 2024-08-27  465  	if (ret)
a369e1d1a10790f shuaijie wang 2024-08-27  466  		return ret;
a369e1d1a10790f shuaijie wang 2024-08-27  467  	/*
a369e1d1a10790f shuaijie wang 2024-08-27  468  	 * If the chip version is AW96103A and the loaded register
a369e1d1a10790f shuaijie wang 2024-08-27  469  	 * configuration file is for AW96103, special handling of the
a369e1d1a10790f shuaijie wang 2024-08-27  470  	 * AW96103_REG_BLRSTRNG_CH0 register is required.
a369e1d1a10790f shuaijie wang 2024-08-27  471  	 */
a369e1d1a10790f shuaijie wang 2024-08-27  472  	if ((fw_ver != AW96103A) || (aw_bin->chip_type[7] != '\0'))
a369e1d1a10790f shuaijie wang 2024-08-27  473  		return 0;
a369e1d1a10790f shuaijie wang 2024-08-27  474  
a369e1d1a10790f shuaijie wang 2024-08-27 @475  	for (i = 0; i < aw96103->max_channels; i++) {

This loop only iterates one time.

a369e1d1a10790f shuaijie wang 2024-08-27  476  		ret = regmap_read(aw96103->regmap,
a369e1d1a10790f shuaijie wang 2024-08-27  477  			AW96103_REG_BLFILT_CH0 + (AW96103_BLFILT_CH_STEP * i),
a369e1d1a10790f shuaijie wang 2024-08-27  478  			&blfilt1_data);
a369e1d1a10790f shuaijie wang 2024-08-27  479  		if (ret)
a369e1d1a10790f shuaijie wang 2024-08-27  480  			return ret;
a369e1d1a10790f shuaijie wang 2024-08-27  481  		if (FIELD_GET(AW96103_BLERRTRIG_MASK, blfilt1_data) != 1)
a369e1d1a10790f shuaijie wang 2024-08-27  482  			return 0;
a369e1d1a10790f shuaijie wang 2024-08-27  483  
a369e1d1a10790f shuaijie wang 2024-08-27  484  		return regmap_update_bits(aw96103->regmap,
a369e1d1a10790f shuaijie wang 2024-08-27  485  			AW96103_REG_BLRSTRNG_CH0 + (AW96103_BLFILT_CH_STEP * i),
a369e1d1a10790f shuaijie wang 2024-08-27  486  			AW96103_BLRSTRNG_MASK, 1 << i);
a369e1d1a10790f shuaijie wang 2024-08-27  487  	}
a369e1d1a10790f shuaijie wang 2024-08-27  488  
a369e1d1a10790f shuaijie wang 2024-08-27  489  	return 0;
a369e1d1a10790f shuaijie wang 2024-08-27  490  }

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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [jic23-iio:testing 268/269] drivers/iio/proximity/aw96103.c:475 aw96103_reg_version_comp() warn: iterator 'i' not incremented
  2024-09-03 19:31 [jic23-iio:testing 268/269] drivers/iio/proximity/aw96103.c:475 aw96103_reg_version_comp() warn: iterator 'i' not incremented Dan Carpenter
@ 2024-09-04  9:28 ` Jonathan Cameron
  0 siblings, 0 replies; 3+ messages in thread
From: Jonathan Cameron @ 2024-09-04  9:28 UTC (permalink / raw)
  To: Dan Carpenter; +Cc: oe-kbuild, shuaijie wang, lkp, oe-kbuild-all

On Tue, 3 Sep 2024 22:31:59 +0300
Dan Carpenter <dan.carpenter@linaro.org> wrote:

> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git testing
> head:   fa533227a89a1d8509a1ad4e93a35d683a77aa23
> commit: a369e1d1a10790f63b4b858dc74b53730146754f [268/269] iio: proximity: aw96103: Add support for aw96103/aw96105 proximity sensor
> config: riscv-randconfig-r072-20240901 (https://download.01.org/0day-ci/archive/20240904/202409040114.Rpkwt3gm-lkp@intel.com/config)
> compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 6f682c26b04f0b349c4c473756cb8625b4f37c6d)
> 
> 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@intel.com>
> | Reported-by: Dan Carpenter <dan.carpenter@linaro.org>
> | Closes: https://lore.kernel.org/r/202409040114.Rpkwt3gm-lkp@intel.com/
> 
> smatch warnings:
> drivers/iio/proximity/aw96103.c:475 aw96103_reg_version_comp() warn: iterator 'i' not incremented

True enough.  Odd code structure.
There shouldn't be an early return in the good path.

I'll fix up or Shuajie, if you want to send a patch that's fine too.

Jonathan


> 
> vim +/i +475 drivers/iio/proximity/aw96103.c
> 
> a369e1d1a10790f shuaijie wang 2024-08-27  457  static int aw96103_reg_version_comp(struct aw96103 *aw96103,
> a369e1d1a10790f shuaijie wang 2024-08-27  458  				    struct aw_bin *aw_bin)
> a369e1d1a10790f shuaijie wang 2024-08-27  459  {
> a369e1d1a10790f shuaijie wang 2024-08-27  460  	u32 blfilt1_data, fw_ver;
> a369e1d1a10790f shuaijie wang 2024-08-27  461  	unsigned char i;
> a369e1d1a10790f shuaijie wang 2024-08-27  462  	int ret;
> a369e1d1a10790f shuaijie wang 2024-08-27  463  
> a369e1d1a10790f shuaijie wang 2024-08-27  464  	ret = regmap_read(aw96103->regmap, AW96103_REG_FWVER2, &fw_ver);
> a369e1d1a10790f shuaijie wang 2024-08-27  465  	if (ret)
> a369e1d1a10790f shuaijie wang 2024-08-27  466  		return ret;
> a369e1d1a10790f shuaijie wang 2024-08-27  467  	/*
> a369e1d1a10790f shuaijie wang 2024-08-27  468  	 * If the chip version is AW96103A and the loaded register
> a369e1d1a10790f shuaijie wang 2024-08-27  469  	 * configuration file is for AW96103, special handling of the
> a369e1d1a10790f shuaijie wang 2024-08-27  470  	 * AW96103_REG_BLRSTRNG_CH0 register is required.
> a369e1d1a10790f shuaijie wang 2024-08-27  471  	 */
> a369e1d1a10790f shuaijie wang 2024-08-27  472  	if ((fw_ver != AW96103A) || (aw_bin->chip_type[7] != '\0'))
> a369e1d1a10790f shuaijie wang 2024-08-27  473  		return 0;
> a369e1d1a10790f shuaijie wang 2024-08-27  474  
> a369e1d1a10790f shuaijie wang 2024-08-27 @475  	for (i = 0; i < aw96103->max_channels; i++) {
> 
> This loop only iterates one time.
> 
> a369e1d1a10790f shuaijie wang 2024-08-27  476  		ret = regmap_read(aw96103->regmap,
> a369e1d1a10790f shuaijie wang 2024-08-27  477  			AW96103_REG_BLFILT_CH0 + (AW96103_BLFILT_CH_STEP * i),
> a369e1d1a10790f shuaijie wang 2024-08-27  478  			&blfilt1_data);
> a369e1d1a10790f shuaijie wang 2024-08-27  479  		if (ret)
> a369e1d1a10790f shuaijie wang 2024-08-27  480  			return ret;
> a369e1d1a10790f shuaijie wang 2024-08-27  481  		if (FIELD_GET(AW96103_BLERRTRIG_MASK, blfilt1_data) != 1)
> a369e1d1a10790f shuaijie wang 2024-08-27  482  			return 0;
> a369e1d1a10790f shuaijie wang 2024-08-27  483  
> a369e1d1a10790f shuaijie wang 2024-08-27  484  		return regmap_update_bits(aw96103->regmap,
> a369e1d1a10790f shuaijie wang 2024-08-27  485  			AW96103_REG_BLRSTRNG_CH0 + (AW96103_BLFILT_CH_STEP * i),
> a369e1d1a10790f shuaijie wang 2024-08-27  486  			AW96103_BLRSTRNG_MASK, 1 << i);
> a369e1d1a10790f shuaijie wang 2024-08-27  487  	}
> a369e1d1a10790f shuaijie wang 2024-08-27  488  
> a369e1d1a10790f shuaijie wang 2024-08-27  489  	return 0;
> a369e1d1a10790f shuaijie wang 2024-08-27  490  }
> 


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-09-04  9:28 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-09-03 19:31 [jic23-iio:testing 268/269] drivers/iio/proximity/aw96103.c:475 aw96103_reg_version_comp() warn: iterator 'i' not incremented Dan Carpenter
2024-09-04  9:28 ` Jonathan Cameron
  -- strict thread matches above, loose matches on Subject: below --
2024-09-03 17:30 kernel test robot

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.