]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
iio: inkern: fix channel read regression
authorJohan Hovold <johan+linaro@kernel.org>
Thu, 30 May 2024 07:44:16 +0000 (09:44 +0200)
committerJonathan Cameron <Jonathan.Cameron@huawei.com>
Mon, 3 Jun 2024 19:29:31 +0000 (20:29 +0100)
A recent "cleanup" broke IIO channel read outs and thereby thermal
mitigation on the Lenovo ThinkPad X13s by returning zero instead of the
expected IIO value type in iio_read_channel_processed_scale():

thermal thermal_zone12: failed to read out thermal zone (-22)

Fixes: 3092bde731ca ("iio: inkern: move to the cleanup.h magic")
Cc: Nuno Sa <nuno.sa@analog.com>
Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20240530074416.13697-1-johan+linaro@kernel.org
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
drivers/iio/inkern.c

index 52d7732618282e4b3f13cc9c4f71a9c514193f11..485e6fc44a04c6a9aec73b67e7e52261796d0053 100644 (file)
@@ -721,7 +721,7 @@ int iio_read_channel_processed_scale(struct iio_channel *chan, int *val,
                        return ret;
                *val *= scale;
 
-               return 0;
+               return ret;
        } else {
                ret = iio_channel_read(chan, val, NULL, IIO_CHAN_INFO_RAW);
                if (ret < 0)