On Tue, 4 Feb 2025 09:43:17 +0100 Angelo Dureghello <adureghello@xxxxxxxxxxxx> wrote: > Hi Jonathan, > > On 04.02.2025 07:23, kernel test robot wrote: > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio.git testing > > head: 315198c0a370da031f5c3d504b99f771a0c545ab > > commit: 493122c53af1915b4b5b5f47a8c446973ebff052 [23/47] iio: dac: adi-axi-dac: add bus mode setup > > config: m68k-randconfig-r071-20250204 (https://download.01.org/0day-ci/archive/20250204/202502040758.DJqHqhLO-lkp@xxxxxxxxx/config) > > compiler: m68k-linux-gcc (GCC) 14.2.0 > > > > 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/202502040758.DJqHqhLO-lkp@xxxxxxxxx/ > > > > smatch warnings: > > drivers/iio/dac/adi-axi-dac.c:731 axi_dac_bus_set_io_mode() warn: always true condition '(mode >= 0) => (0-u32max >= 0)' > > > > vim +731 drivers/iio/dac/adi-axi-dac.c > > > > 724 > > 725 static int axi_dac_bus_set_io_mode(struct iio_backend *back, > > 726 enum ad3552r_io_mode mode) > > 727 { > > 728 struct axi_dac_state *st = iio_backend_get_priv(back); > > 729 int ival, ret; > > 730 > > > 731 if (!(mode >= AD3552R_IO_MODE_SPI && mode <= AD3552R_IO_MODE_QSPI)) > > 732 > > not clear to me the reason of this warning, maybe because mode is an enum ? > Should i take any action ? Currently there are only a few modes in there and that range covers them all I think. So warning is correct, but we perhaps want this check there as hardening against future addition of more modes. Maybe an explicit switch with all modes listed and a default will have same effect and be better defense anyway against future changes? Jonathan > > return -EINVAL; > > 733 > > 734 guard(mutex)(&st->lock); > > 735 > > 736 ret = regmap_update_bits(st->regmap, AXI_DAC_CUSTOM_CTRL_REG, > > 737 AXI_DAC_CUSTOM_CTRL_MULTI_IO_MODE, > > 738 FIELD_PREP(AXI_DAC_CUSTOM_CTRL_MULTI_IO_MODE, mode)); > > 739 if (ret) > > 740 return ret; > > 741 > > 742 return regmap_read_poll_timeout(st->regmap, AXI_DAC_UI_STATUS_REG, ival, > > 743 FIELD_GET(AXI_DAC_UI_STATUS_IF_BUSY, ival) == 0, 10, > > 744 100 * KILO); > > 745 } > > 746 > > > > -- > > 0-DAY CI Kernel Test Service > > https://github.com/intel/lkp-tests/wiki > > Thanks, > regards, > angelo