Re: [PATCH 1/2] iio: temperature: mlx90635 MLX90635 IR Temperature sensor

From: kernel test robot
Date: Fri Nov 24 2023 - 09:40:13 EST


Hi Crt,

kernel test robot noticed the following build warnings:

[auto build test WARNING on jic23-iio/togreg]
[also build test WARNING on linus/master v6.7-rc2 next-20231124]
[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/Crt-Mori/iio-temperature-mlx90635-MLX90635-IR-Temperature-sensor/20231122-202635
base: https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git togreg
patch link: https://lore.kernel.org/r/aa36393700ff783274894186366a152bb27e58ff.1700648165.git.cmo%40melexis.com
patch subject: [PATCH 1/2] iio: temperature: mlx90635 MLX90635 IR Temperature sensor
config: x86_64-randconfig-122-20231123 (https://download.01.org/0day-ci/archive/20231124/202311241512.ZG52ib9O-lkp@xxxxxxxxx/config)
compiler: clang version 16.0.4 (https://github.com/llvm/llvm-project.git ae42196bc493ffe877a7e3dff8be32035dea4d07)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231124/202311241512.ZG52ib9O-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/202311241512.ZG52ib9O-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

>> drivers/iio/temperature/mlx90635.c:380:12: warning: logical not is only applied to the left hand side of this comparison [-Wlogical-not-parentheses]
!(reg_status & MLX90635_STAT_END_CONV) == 0,
^ ~~
include/linux/regmap.h:124:58: note: expanded from macro 'regmap_read_poll_timeout'
__tmp = read_poll_timeout(regmap_read, __ret, __ret || (cond), \
^~~~
include/linux/iopoll.h:47:7: note: expanded from macro 'read_poll_timeout'
if (cond) \
^~~~
drivers/iio/temperature/mlx90635.c:380:12: note: add parentheses after the '!' to evaluate the comparison first
drivers/iio/temperature/mlx90635.c:380:12: note: add parentheses around left hand side expression to silence this warning
>> drivers/iio/temperature/mlx90635.c:380:12: warning: logical not is only applied to the left hand side of this comparison [-Wlogical-not-parentheses]
!(reg_status & MLX90635_STAT_END_CONV) == 0,
^ ~~
include/linux/regmap.h:124:58: note: expanded from macro 'regmap_read_poll_timeout'
__tmp = read_poll_timeout(regmap_read, __ret, __ret || (cond), \
^~~~
include/linux/iopoll.h:58:3: note: expanded from macro 'read_poll_timeout'
(cond) ? 0 : -ETIMEDOUT; \
^~~~
drivers/iio/temperature/mlx90635.c:380:12: note: add parentheses after the '!' to evaluate the comparison first
drivers/iio/temperature/mlx90635.c:380:12: note: add parentheses around left hand side expression to silence this warning
2 warnings generated.


vim +380 drivers/iio/temperature/mlx90635.c

356
357 static int mlx90635_perform_measurement_burst(struct mlx90635_data *data)
358 {
359 unsigned int reg_status;
360 int refresh_time;
361 int ret;
362
363 ret = regmap_write_bits(data->regmap, MLX90635_REG_STATUS,
364 MLX90635_STAT_END_CONV, MLX90635_STAT_END_CONV);
365 if (ret < 0)
366 return ret;
367
368 ret = mlx90635_calculate_dataset_ready_time(data, &refresh_time);
369 if (ret < 0)
370 return ret;
371
372 ret = regmap_write_bits(data->regmap, MLX90635_REG_CTRL2,
373 MLX90635_CTRL2_SOB(1), MLX90635_CTRL2_SOB(1));
374 if (ret < 0)
375 return ret;
376
377 msleep(refresh_time); /* Wait minimum time for dataset to be ready */
378
379 ret = regmap_read_poll_timeout(data->regmap, MLX90635_REG_STATUS, reg_status,
> 380 !(reg_status & MLX90635_STAT_END_CONV) == 0,
381 MLX90635_TIMING_POLLING, MLX90635_READ_RETRIES * 10000);
382 if (ret < 0) {
383 dev_err(&data->client->dev, "data not ready");
384 return -ETIMEDOUT;
385 }
386
387 return ret;
388 }
389

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