Re: [PATCH v3 2/2] iio: imu: smi240: imu driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

kernel test robot noticed the following build warnings:

[auto build test WARNING on jic23-iio/togreg]
[also build test WARNING on linus/master v6.11-rc3 next-20240816]
[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/Jianping-Shen-de-bosch-com/dt-bindings-iio-imu-smi240-devicetree-binding/20240815-234739
base:   https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git togreg
patch link:    https://lore.kernel.org/r/20240815152545.7705-3-Jianping.Shen%40de.bosch.com
patch subject: [PATCH v3 2/2] iio: imu: smi240: imu driver
config: x86_64-randconfig-123-20240817 (https://download.01.org/0day-ci/archive/20240817/202408170910.aR1gYef3-lkp@xxxxxxxxx/config)
compiler: clang version 18.1.5 (https://github.com/llvm/llvm-project 617a15a9eac96088ae5e9134248d8236e34b91b1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240817/202408170910.aR1gYef3-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/202408170910.aR1gYef3-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
>> drivers/iio/imu/smi240/smi240_core.c:207:9: sparse: sparse: dereference of noderef expression
>> drivers/iio/imu/smi240/smi240_core.c:207:9: sparse: sparse: dereference of noderef expression
>> drivers/iio/imu/smi240/smi240_core.c:207:9: sparse: sparse: dereference of noderef expression
--
>> drivers/iio/imu/smi240/smi240_spi.c:69:17: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] request @@     got int @@
   drivers/iio/imu/smi240/smi240_spi.c:69:17: sparse:     expected restricted __be32 [usertype] request
   drivers/iio/imu/smi240/smi240_spi.c:69:17: sparse:     got int
>> drivers/iio/imu/smi240/smi240_spi.c:70:17: sparse: sparse: invalid assignment: |=
   drivers/iio/imu/smi240/smi240_spi.c:70:17: sparse:    left side has type restricted __be32
   drivers/iio/imu/smi240/smi240_spi.c:70:17: sparse:    right side has type int
   drivers/iio/imu/smi240/smi240_spi.c:71:17: sparse: sparse: invalid assignment: |=
   drivers/iio/imu/smi240/smi240_spi.c:71:17: sparse:    left side has type restricted __be32
   drivers/iio/imu/smi240/smi240_spi.c:71:17: sparse:    right side has type unsigned long
>> drivers/iio/imu/smi240/smi240_spi.c:72:32: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int [usertype] data @@     got restricted __be32 [usertype] request @@
   drivers/iio/imu/smi240/smi240_spi.c:72:32: sparse:     expected unsigned int [usertype] data
   drivers/iio/imu/smi240/smi240_spi.c:72:32: sparse:     got restricted __be32 [usertype] request
   drivers/iio/imu/smi240/smi240_spi.c:72:17: sparse: sparse: invalid assignment: |=
   drivers/iio/imu/smi240/smi240_spi.c:72:17: sparse:    left side has type restricted __be32
   drivers/iio/imu/smi240/smi240_spi.c:72:17: sparse:    right side has type unsigned char
>> drivers/iio/imu/smi240/smi240_spi.c:73:19: sparse: sparse: cast from restricted __be32
>> drivers/iio/imu/smi240/smi240_spi.c:89:18: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [addressable] [usertype] response @@     got unsigned int [usertype] @@
   drivers/iio/imu/smi240/smi240_spi.c:89:18: sparse:     expected restricted __be32 [addressable] [usertype] response
   drivers/iio/imu/smi240/smi240_spi.c:89:18: sparse:     got unsigned int [usertype]
>> drivers/iio/imu/smi240/smi240_spi.c:91:42: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int [usertype] data @@     got restricted __be32 [addressable] [usertype] response @@
   drivers/iio/imu/smi240/smi240_spi.c:91:42: sparse:     expected unsigned int [usertype] data
   drivers/iio/imu/smi240/smi240_spi.c:91:42: sparse:     got restricted __be32 [addressable] [usertype] response
>> drivers/iio/imu/smi240/smi240_spi.c:94:20: sparse: sparse: cast to restricted __be32
>> drivers/iio/imu/smi240/smi240_spi.c:94:20: sparse: sparse: restricted __be32 degrades to integer
>> drivers/iio/imu/smi240/smi240_spi.c:94:20: sparse: sparse: restricted __be32 degrades to integer
>> drivers/iio/imu/smi240/smi240_spi.c:94:18: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [addressable] [usertype] response @@     got unsigned long @@
   drivers/iio/imu/smi240/smi240_spi.c:94:18: sparse:     expected restricted __be32 [addressable] [usertype] response
   drivers/iio/imu/smi240/smi240_spi.c:94:18: sparse:     got unsigned long
   drivers/iio/imu/smi240/smi240_spi.c:108:17: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __be32 [usertype] request @@     got int @@
   drivers/iio/imu/smi240/smi240_spi.c:108:17: sparse:     expected restricted __be32 [usertype] request
   drivers/iio/imu/smi240/smi240_spi.c:108:17: sparse:     got int
   drivers/iio/imu/smi240/smi240_spi.c:109:17: sparse: sparse: invalid assignment: |=
   drivers/iio/imu/smi240/smi240_spi.c:109:17: sparse:    left side has type restricted __be32
   drivers/iio/imu/smi240/smi240_spi.c:109:17: sparse:    right side has type int
   drivers/iio/imu/smi240/smi240_spi.c:110:17: sparse: sparse: invalid assignment: |=
   drivers/iio/imu/smi240/smi240_spi.c:110:17: sparse:    left side has type restricted __be32
   drivers/iio/imu/smi240/smi240_spi.c:110:17: sparse:    right side has type unsigned long
   drivers/iio/imu/smi240/smi240_spi.c:111:17: sparse: sparse: invalid assignment: |=
   drivers/iio/imu/smi240/smi240_spi.c:111:17: sparse:    left side has type restricted __be32
   drivers/iio/imu/smi240/smi240_spi.c:111:17: sparse:    right side has type unsigned long
   drivers/iio/imu/smi240/smi240_spi.c:112:32: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected unsigned int [usertype] data @@     got restricted __be32 [usertype] request @@
   drivers/iio/imu/smi240/smi240_spi.c:112:32: sparse:     expected unsigned int [usertype] data
   drivers/iio/imu/smi240/smi240_spi.c:112:32: sparse:     got restricted __be32 [usertype] request
   drivers/iio/imu/smi240/smi240_spi.c:112:17: sparse: sparse: invalid assignment: |=
   drivers/iio/imu/smi240/smi240_spi.c:112:17: sparse:    left side has type restricted __be32
   drivers/iio/imu/smi240/smi240_spi.c:112:17: sparse:    right side has type unsigned char
   drivers/iio/imu/smi240/smi240_spi.c:113:19: sparse: sparse: cast from restricted __be32

vim +207 drivers/iio/imu/smi240/smi240_core.c

   197	
   198	static irqreturn_t smi240_trigger_handler(int irq, void *p)
   199	{
   200		struct iio_poll_func *pf = p;
   201		struct iio_dev *indio_dev = pf->indio_dev;
   202		struct smi240_data *data = iio_priv(indio_dev);
   203		int ret, sample, chan, i = 0;
   204	
   205		data->capture = SMI240_CAPTURE_ON;
   206	
 > 207		for_each_set_bit(chan, indio_dev->active_scan_mask,
   208				 indio_dev->masklength) {
   209			ret = regmap_read(data->regmap,
   210					  SMI240_DATA_CAP_FIRST_REG + chan, &sample);
   211			data->capture = SMI240_CAPTURE_OFF;
   212			if (ret)
   213				break;
   214			data->buf[i++] = sample;
   215		}
   216	
   217		if (ret == 0)
   218			iio_push_to_buffers_with_timestamp(indio_dev, data->buf,
   219							   pf->timestamp);
   220	
   221		iio_trigger_notify_done(indio_dev->trig);
   222		return IRQ_HANDLED;
   223	}
   224	

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




[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux