diff mbox series

iio: palmas: shut up warning about calibration mismatch (due to noise)

Message ID 1cee45bfc3fa2ab59dcc17242fb52468035360a1.1646743982.git.hns@goldelico.com (mailing list archive)
State New, archived
Headers show
Series iio: palmas: shut up warning about calibration mismatch (due to noise) | expand

Commit Message

H. Nikolaus Schaller March 8, 2022, 12:53 p.m. UTC
Although technically checking for ADC values below 0 is correct,
because they are outside of the calibration values, there is usually
noise which spuriously fills the console log with error messages if
calculated input voltage gets close to 0V.

Ignore small negative calculated values, but clamp them to 0.

Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
---
 drivers/iio/adc/palmas_gpadc.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Jonathan Cameron March 20, 2022, 3:52 p.m. UTC | #1
On Tue,  8 Mar 2022 13:53:03 +0100
"H. Nikolaus Schaller" <hns@goldelico.com> wrote:

> Although technically checking for ADC values below 0 is correct,
> because they are outside of the calibration values, there is usually
> noise which spuriously fills the console log with error messages if
> calculated input voltage gets close to 0V.
> 
> Ignore small negative calculated values, but clamp them to 0.
> 
> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
Hi.

Should we treat this as a fix or a cleanup?

I don't mind either way.

Jonathan


> ---
>  drivers/iio/adc/palmas_gpadc.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/adc/palmas_gpadc.c b/drivers/iio/adc/palmas_gpadc.c
> index f9c8385c72d3..bcfa6a7f6cb2 100644
> --- a/drivers/iio/adc/palmas_gpadc.c
> +++ b/drivers/iio/adc/palmas_gpadc.c
> @@ -376,7 +376,8 @@ static int palmas_gpadc_get_calibrated_code(struct palmas_gpadc *adc,
>  					adc->adc_info[adc_chan].gain_error;
>  
>  	if (val < 0) {
> -		dev_err(adc->dev, "Mismatch with calibration\n");
> +		if (val < -10)
> +			dev_err(adc->dev, "Mismatch with calibration var = %d\n", val);
>  		return 0;
>  	}
>
H. Nikolaus Schaller March 20, 2022, 4:28 p.m. UTC | #2
Hi Jonathan,

> Am 20.03.2022 um 16:52 schrieb Jonathan Cameron <jic23@kernel.org>:
> 
> On Tue,  8 Mar 2022 13:53:03 +0100
> "H. Nikolaus Schaller" <hns@goldelico.com> wrote:
> 
>> Although technically checking for ADC values below 0 is correct,
>> because they are outside of the calibration values, there is usually
>> noise which spuriously fills the console log with error messages if
>> calculated input voltage gets close to 0V.
>> 
>> Ignore small negative calculated values, but clamp them to 0.
>> 
>> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>
> Hi.
> 
> Should we treat this as a fix or a cleanup?
> 
> I don't mind either way.

I don't mind either since we have it for long time in our distribution kernel.

BR and thanks,
Nikolaus

> 
> Jonathan
> 
> 
>> ---
>> drivers/iio/adc/palmas_gpadc.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>> 
>> diff --git a/drivers/iio/adc/palmas_gpadc.c b/drivers/iio/adc/palmas_gpadc.c
>> index f9c8385c72d3..bcfa6a7f6cb2 100644
>> --- a/drivers/iio/adc/palmas_gpadc.c
>> +++ b/drivers/iio/adc/palmas_gpadc.c
>> @@ -376,7 +376,8 @@ static int palmas_gpadc_get_calibrated_code(struct palmas_gpadc *adc,
>> 					adc->adc_info[adc_chan].gain_error;
>> 
>> 	if (val < 0) {
>> -		dev_err(adc->dev, "Mismatch with calibration\n");
>> +		if (val < -10)
>> +			dev_err(adc->dev, "Mismatch with calibration var = %d\n", val);
>> 		return 0;
>> 	}
>> 
>
Jonathan Cameron March 27, 2022, 4:13 p.m. UTC | #3
On Sun, 20 Mar 2022 17:28:21 +0100
"H. Nikolaus Schaller" <hns@goldelico.com> wrote:

> Hi Jonathan,
> 
> > Am 20.03.2022 um 16:52 schrieb Jonathan Cameron <jic23@kernel.org>:
> > 
> > On Tue,  8 Mar 2022 13:53:03 +0100
> > "H. Nikolaus Schaller" <hns@goldelico.com> wrote:
> >   
> >> Although technically checking for ADC values below 0 is correct,
> >> because they are outside of the calibration values, there is usually
> >> noise which spuriously fills the console log with error messages if
> >> calculated input voltage gets close to 0V.
> >> 
> >> Ignore small negative calculated values, but clamp them to 0.
> >> 
> >> Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com>  
> > Hi.
> > 
> > Should we treat this as a fix or a cleanup?
> > 
> > I don't mind either way.  
> 
> I don't mind either since we have it for long time in our distribution kernel.
> 
> BR and thanks,
> Nikolaus

Treated as cleanup so applied to the togreg branch of iio.git, but for now
only pushed out as testing because I'll be rebasing on rc1 next week.

Thanks,

Jonathan

> 
> > 
> > Jonathan
> > 
> >   
> >> ---
> >> drivers/iio/adc/palmas_gpadc.c | 3 ++-
> >> 1 file changed, 2 insertions(+), 1 deletion(-)
> >> 
> >> diff --git a/drivers/iio/adc/palmas_gpadc.c b/drivers/iio/adc/palmas_gpadc.c
> >> index f9c8385c72d3..bcfa6a7f6cb2 100644
> >> --- a/drivers/iio/adc/palmas_gpadc.c
> >> +++ b/drivers/iio/adc/palmas_gpadc.c
> >> @@ -376,7 +376,8 @@ static int palmas_gpadc_get_calibrated_code(struct palmas_gpadc *adc,
> >> 					adc->adc_info[adc_chan].gain_error;
> >> 
> >> 	if (val < 0) {
> >> -		dev_err(adc->dev, "Mismatch with calibration\n");
> >> +		if (val < -10)
> >> +			dev_err(adc->dev, "Mismatch with calibration var = %d\n", val);
> >> 		return 0;
> >> 	}
> >>   
> >   
>
diff mbox series

Patch

diff --git a/drivers/iio/adc/palmas_gpadc.c b/drivers/iio/adc/palmas_gpadc.c
index f9c8385c72d3..bcfa6a7f6cb2 100644
--- a/drivers/iio/adc/palmas_gpadc.c
+++ b/drivers/iio/adc/palmas_gpadc.c
@@ -376,7 +376,8 @@  static int palmas_gpadc_get_calibrated_code(struct palmas_gpadc *adc,
 					adc->adc_info[adc_chan].gain_error;
 
 	if (val < 0) {
-		dev_err(adc->dev, "Mismatch with calibration\n");
+		if (val < -10)
+			dev_err(adc->dev, "Mismatch with calibration var = %d\n", val);
 		return 0;
 	}