lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Sun, 7 Jan 2024 09:28:34 +0800
From: kernel test robot <lkp@...el.com>
To: Aidan MacDonald <aidanmacdonald.0x0@...il.com>
Cc: oe-kbuild-all@...ts.linux.dev, linux-kernel@...r.kernel.org,
	Jonathan Cameron <Jonathan.Cameron@...wei.com>,
	Chen-Yu Tsai <wens@...e.org>,
	Andy Shevchenko <andy.shevchenko@...il.com>
Subject: drivers/iio/adc/axp20x_adc.c:572:26: sparse: sparse: dubious: x & !y

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   52b1853b080a082ec3749c3a9577f6c71b1d4a90
commit: 8957e5344353e9cd3f6b1e3004942e35449fa0e8 iio: adc: axp20x_adc: Minor code cleanups
date:   10 months ago
config: x86_64-randconfig-121-20240106 (https://download.01.org/0day-ci/archive/20240107/202401070901.68H00NFa-lkp@intel.com/config)
compiler: ClangBuiltLinux clang version 17.0.6 (https://github.com/llvm/llvm-project 6009708b4367171ccdbf4b5905cb6a803753fe18)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240107/202401070901.68H00NFa-lkp@intel.com/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@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202401070901.68H00NFa-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
>> drivers/iio/adc/axp20x_adc.c:572:26: sparse: sparse: dubious: x & !y
   drivers/iio/adc/axp20x_adc.c:577:26: sparse: sparse: dubious: x & !y

vim +572 drivers/iio/adc/axp20x_adc.c

   551	
   552	static int axp20x_write_raw(struct iio_dev *indio_dev,
   553				    struct iio_chan_spec const *chan, int val, int val2,
   554				    long mask)
   555	{
   556		struct axp20x_adc_iio *info = iio_priv(indio_dev);
   557		unsigned int regmask, regval;
   558	
   559		/*
   560		 * The AXP20X PMIC allows the user to choose between 0V and 0.7V offsets
   561		 * for (independently) GPIO0 and GPIO1 when in ADC mode.
   562		 */
   563		if (mask != IIO_CHAN_INFO_OFFSET)
   564			return -EINVAL;
   565	
   566		if (val != 0 && val != 700000)
   567			return -EINVAL;
   568	
   569		switch (chan->channel) {
   570		case AXP20X_GPIO0_V:
   571			regmask = AXP20X_GPIO10_IN_RANGE_GPIO0;
 > 572			regval = FIELD_PREP(AXP20X_GPIO10_IN_RANGE_GPIO0, !!val);
   573			break;
   574	
   575		case AXP20X_GPIO1_V:
   576			regmask = AXP20X_GPIO10_IN_RANGE_GPIO1;
   577			regval = FIELD_PREP(AXP20X_GPIO10_IN_RANGE_GPIO1, !!val);
   578			break;
   579	
   580		default:
   581			return -EINVAL;
   582		}
   583	
   584		return regmap_update_bits(info->regmap, AXP20X_GPIO10_IN_RANGE, regmask, regval);
   585	}
   586	

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ