32 lines
1.0 KiB
Diff
32 lines
1.0 KiB
Diff
From a6b5eb09bddbd0c331f41fefa2fd2f71a2cf9455 Mon Sep 17 00:00:00 2001
|
|
From: Vasily Khoruzhick <anarsoul@gmail.com>
|
|
Date: Tue, 24 Apr 2018 22:21:10 -0700
|
|
Subject: [PATCH 036/146] sun4i-gpadc-iio: ignore zero samples to avoid force
|
|
poweroff when reading first sample
|
|
|
|
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
|
|
---
|
|
drivers/iio/adc/sun4i-gpadc-iio.c | 6 ++++++
|
|
1 file changed, 6 insertions(+)
|
|
|
|
diff --git a/drivers/iio/adc/sun4i-gpadc-iio.c b/drivers/iio/adc/sun4i-gpadc-iio.c
|
|
index fdfa01bad325..68256e73a4d2 100644
|
|
--- a/drivers/iio/adc/sun4i-gpadc-iio.c
|
|
+++ b/drivers/iio/adc/sun4i-gpadc-iio.c
|
|
@@ -751,6 +751,12 @@ static int sun4i_gpadc_get_temp(void *data, int *temp)
|
|
if (sun4i_gpadc_temp_read(info->indio_dev, &val, info->sensor_id))
|
|
return -ETIMEDOUT;
|
|
|
|
+ /* Ignore first sample which is always zero. 0 is either too
|
|
+ * cold or too hot, so we can safely ignore it
|
|
+ */
|
|
+ if (val == 0)
|
|
+ return -ETIMEDOUT;
|
|
+
|
|
sun4i_gpadc_temp_scale(info->indio_dev, &scale);
|
|
sun4i_gpadc_temp_offset(info->indio_dev, &offset);
|
|
|
|
--
|
|
2.17.1
|
|
|