From: Gwendal Grignou Date: Thu, 4 Nov 2021 08:24:05 +0000 (-0700) Subject: iio: stk8312: Use scan_type when processing raw data X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=571f8d006f39d8159d80f65eeb15603e649f6611;p=uclinux-h8%2Flinux.git iio: stk8312: Use scan_type when processing raw data Use channel definition as root of trust and replace constant when reading elements directly using the raw sysfs attributes. Signed-off-by: Gwendal Grignou Link: https://lore.kernel.org/r/20211104082413.3681212-6-gwendal@chromium.org Signed-off-by: Jonathan Cameron --- diff --git a/drivers/iio/accel/stk8312.c b/drivers/iio/accel/stk8312.c index 43c621d0f11e..de0cdf8c1f94 100644 --- a/drivers/iio/accel/stk8312.c +++ b/drivers/iio/accel/stk8312.c @@ -355,7 +355,7 @@ static int stk8312_read_raw(struct iio_dev *indio_dev, mutex_unlock(&data->lock); return ret; } - *val = sign_extend32(ret, 7); + *val = sign_extend32(ret, chan->scan_type.realbits - 1); ret = stk8312_set_mode(data, data->mode & (~STK8312_MODE_ACTIVE)); mutex_unlock(&data->lock);