From: Angelo Dureghello <adureghello@baylibre.com>
Add gain calibration support by a per-channel resistor value.
Signed-off-by: Angelo Dureghello <adureghello@baylibre.com>
---
Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml
index 29f12d650442b8ff2eb455306ce59a0e87867ddd..df30545fb52c89a814257443183303775a06a7f2 100644
--- a/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml
+++ b/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml
@@ -204,6 +204,15 @@ patternProperties:
considered a bipolar differential channel. Otherwise it is bipolar
single-ended.
+ adi,rfilter-ohms:
+ description:
+ For ADCs that supports gain calibration, this property must be set to
+ the value of the external RFilter resistor. Proper gain error
+ correction is applied based on this value.
+ default: 0
+ minimum: 0
+ maximum: 65536
+
required:
- reg
- bipolar
@@ -271,6 +280,10 @@ allOf:
then:
properties:
adi,sw-mode: false
+ patternProperties:
+ "^channel@[0-9a-f]+$":
+ properties:
+ adi,rfilter-ohms: false
else:
properties:
pwms:
@@ -398,6 +411,7 @@ examples:
reg = <8>;
diff-channels = <8 8>;
bipolar;
+ adi,rfilter-ohms = <2048>;
};
};
--
2.49.0
On 4/29/25 8:06 AM, Angelo Dureghello wrote: > From: Angelo Dureghello <adureghello@baylibre.com> > > Add gain calibration support by a per-channel resistor value. > > Signed-off-by: Angelo Dureghello <adureghello@baylibre.com> > --- > Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml > index 29f12d650442b8ff2eb455306ce59a0e87867ddd..df30545fb52c89a814257443183303775a06a7f2 100644 > --- a/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml > +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml > @@ -204,6 +204,15 @@ patternProperties: > considered a bipolar differential channel. Otherwise it is bipolar > single-ended. > > + adi,rfilter-ohms: > + description: > + For ADCs that supports gain calibration, this property must be set to > + the value of the external RFilter resistor. Proper gain error > + correction is applied based on this value. > + default: 0 > + minimum: 0 > + maximum: 65536 > + > required: > - reg > - bipolar > @@ -271,6 +280,10 @@ allOf: > then: > properties: > adi,sw-mode: false > + patternProperties: > + "^channel@[0-9a-f]+$": > + properties: > + adi,rfilter-ohms: false I think this is in the wrong place. It would allow this property on ad7616, but ad7616 does not have this feature. > else: > properties: > pwms: > @@ -398,6 +411,7 @@ examples: > reg = <8>; > diff-channels = <8 8>; > bipolar; > + adi,rfilter-ohms = <2048>; > }; > > }; >
On 29.04.2025 10:26, David Lechner wrote:
> On 4/29/25 8:06 AM, Angelo Dureghello wrote:
> > From: Angelo Dureghello <adureghello@baylibre.com>
> >
> > Add gain calibration support by a per-channel resistor value.
> >
> > Signed-off-by: Angelo Dureghello <adureghello@baylibre.com>
> > ---
> > Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml | 14 ++++++++++++++
> > 1 file changed, 14 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml b/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml
> > index 29f12d650442b8ff2eb455306ce59a0e87867ddd..df30545fb52c89a814257443183303775a06a7f2 100644
> > --- a/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml
> > +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad7606.yaml
> > @@ -204,6 +204,15 @@ patternProperties:
> > considered a bipolar differential channel. Otherwise it is bipolar
> > single-ended.
> >
> > + adi,rfilter-ohms:
> > + description:
> > + For ADCs that supports gain calibration, this property must be set to
> > + the value of the external RFilter resistor. Proper gain error
> > + correction is applied based on this value.
> > + default: 0
> > + minimum: 0
> > + maximum: 65536
> > +
> > required:
> > - reg
> > - bipolar
> > @@ -271,6 +280,10 @@ allOf:
> > then:
> > properties:
> > adi,sw-mode: false
> > + patternProperties:
> > + "^channel@[0-9a-f]+$":
> > + properties:
> > + adi,rfilter-ohms: false
>
> I think this is in the wrong place. It would allow this property on ad7616, but
> ad7616 does not have this feature.
>
Looks like it cannot work on ad7616 due to
- if:
not:
properties:
compatible:
enum:
- adi,ad7606c-16
- adi,ad7606c-18
then:
patternProperties:
"^channel@[1-8]$": false
But maybe an additional patch should be added to add also adi,ad7606b
to the above enum.
Regards,
angelo
>
> > else:
> > properties:
> > pwms:
> > @@ -398,6 +411,7 @@ examples:
> > reg = <8>;
> > diff-channels = <8 8>;
> > bipolar;
> > + adi,rfilter-ohms = <2048>;
> > };
> >
> > };
> >
>
On Tue, Apr 29, 2025 at 03:06:48PM +0200, Angelo Dureghello wrote: > From: Angelo Dureghello <adureghello@baylibre.com> > > Add gain calibration support by a per-channel resistor value. > > Signed-off-by: Angelo Dureghello <adureghello@baylibre.com> Acked-by: Conor Dooley <conor.dooley@microchip.com>
© 2016 - 2026 Red Hat, Inc.