Use max_array() to get the maximum value from an array instead of a custom local loop. Signed-off-by: Herve Codina <herve.codina@xxxxxxxxxxx> --- drivers/iio/inkern.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/iio/inkern.c b/drivers/iio/inkern.c index ce537b4ca6ca..ae1a41d3a559 100644 --- a/drivers/iio/inkern.c +++ b/drivers/iio/inkern.c @@ -8,6 +8,7 @@ #include <linux/property.h> #include <linux/slab.h> #include <linux/mutex.h> +#include <linux/minmax.h> #include <linux/iio/iio.h> #include <linux/iio/iio-opaque.h> @@ -875,11 +876,7 @@ static int iio_channel_read_max(struct iio_channel *chan, return -EINVAL; switch (*type) { case IIO_VAL_INT: - *val = vals[--length]; - while (length) { - if (vals[--length] > *val) - *val = vals[length]; - } + *val = max_array(vals, length); break; default: /* FIXME: learn about max for other iio values */ -- 2.40.1