Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

iio: adc: qcom-pm8xxx-xoadc: Remove useless condition in pm8xxx_xoadc_parse_channel()

The left side of the loop condition never becomes false. hwchan cannot be
NULL, because it points to elements of the hw_channels array that takes
one of 4 predefined values: pm8018_xoadc_channels, pm8038_xoadc_channels,
pm8058_xoadc_channels, pm8921_xoadc_channels.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Reviewed-by: Andi Shyti <andi.shyti@kernel.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Kasumov Ruslan <s02210418@gse.cs.msu.ru>
Link: https://lore.kernel.org/r/20230315135114.22684-1-xhxgldhlpfy@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>

authored by

Kasumov Ruslan and committed by
Jonathan Cameron
30da26ea 225dc61e

+1 -1
+1 -1
drivers/iio/adc/qcom-pm8xxx-xoadc.c
··· 758 758 /* Find the right channel setting */ 759 759 chid = 0; 760 760 hwchan = &hw_channels[0]; 761 - while (hwchan && hwchan->datasheet_name) { 761 + while (hwchan->datasheet_name) { 762 762 if (hwchan->pre_scale_mux == pre_scale_mux && 763 763 hwchan->amux_channel == amux_channel) 764 764 break;