Re: [PATCH v4 4/4] dt-bindings: iio: adc: Add docs for ad7124

From: Popa, Stefan Serban
Date: Mon Nov 12 2018 - 04:31:04 EST


On Du, 2018-11-11 at 12:19 +0000, Jonathan Cameron wrote:
>
> On Fri, 9 Nov 2018 17:43:00 +0200
> Stefan Popa <stefan.popa@xxxxxxxxxx> wrote:
>
> >
> >
> > Add support for Analog Devices AD7124 4-channels and 8-channels ADC.
> >
> > Signed-off-by: Stefan Popa <stefan.popa@xxxxxxxxxx>
> Your example still includes the other things that I think you have now
> dropped.
> gain and odr.
>
You are right! I am sorry about this.
>
> >
> >
> > ---
> > Changes in v2:
> > - Nothing changed.
> > Changes in v3:
> > - Removed the "adi,channels" property.
> > - Used the "reg" property to get the channel number and "adi,diff-
> > channels"
> > ÂÂfor the differential pins. The "adi,channel-number" property was
> > removed.
> > - adi,bipolar is of boolean type.
> > Changes in v4:
> > - Used the bipolar and diff-channels properties defined in the new
> > adc.txt doc.
> >
> > Â.../devicetree/bindings/iio/adc/adi,ad7124.txtÂÂÂÂÂ| 81
> > ++++++++++++++++++++++
> > ÂMAINTAINERSÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ|ÂÂ1 +
> > Â2 files changed, 82 insertions(+)
> > Âcreate mode 100644
> > Documentation/devicetree/bindings/iio/adc/adi,ad7124.txt
> >
> > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7124.txt
> > b/Documentation/devicetree/bindings/iio/adc/adi,ad7124.txt
> > new file mode 100644
> > index 0000000..fa0c43b
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad7124.txt
> > @@ -0,0 +1,81 @@
> > +Analog Devices AD7124 ADC device driver
> > +
> > +Required properties for the AD7124:
> > + - compatible: Must be one of "adi,ad7124-4" or "adi,ad7124-8"
> > + - reg: SPI chip select number for the device
> > + - spi-max-frequency: Max SPI frequency to use
> > + see: Documentation/devicetree/bindings/spi/spi-bus.txt
> > + - clocks: phandle to the master clock (mclk)
> > + see: Documentation/devicetree/bindings/clock/clock-
> > bindings.txt
> > + - clock-names: Must be "mclk".
> > + - interrupts: IRQ line for the ADC
> > + see: Documentation/devicetree/bindings/interrupt-
> > controller/interrupts.txt
> Given the driver doesn't currently use it, should perhaps be optional?
>
The interrupt is actually required by ad_sigma_delta.
>
> >
> >
> > +
> > + ÂÂRequired properties:
> > + * #address-cells: Must be 1.
> > + * #size-cells: Must be 0.
> > +
> > + ÂÂSubnode(s) represent the external channels which are
> > connected to the ADC.
> > + ÂÂEach subnode represents one channel and has the following
> > properties:
> > + Required properties:
> > + * reg: The channel number. It can have up to 4
> > channels on ad7124-4
> > + ÂÂand 8 channels on ad7124-8, numbered from 0
> > to 15.
> > + * diff-channels: see:
> > Documentation/devicetree/bindings/iio/adc/adc.txt
> > +
> > + Optional properties:
> > + * bipolar: see:
> > Documentation/devicetree/bindings/iio/adc/adc.txt
> > + * adi,reference-select: Select the reference
> > source to use when
> > + ÂÂconverting on the the specific channel.
> > Valid values are:
> > + ÂÂ0: REFIN1(+)/REFIN1(â).
> > + ÂÂ1: REFIN2(+)/REFIN2(â).
> > + ÂÂ3: AVDD
> > + ÂÂIf this field is left empty, internal
> > reference is selected.
> > +
> > +Optional properties:
> > + - refin1-supply: refin1 supply can be used as reference for
> > conversion.
> > + - refin2-supply: refin2 supply can be used as reference for
> > conversion.
> > + - avdd-supply: avdd supply can be used as reference for
> > conversion.
> > +
> > +Example:
> > + adc@0 {
> > + compatible = "adi,ad7124-4";
> > + reg = <0>;
> > + spi-max-frequency = <5000000>;
> > + interrupts = <25 2>;
> > + interrupt-parent = <&gpio>;
> > + refin1-supply = <&adc_vref>;
> > + clocks = <&ad7124_mclk>;
> > + clock-names = "mclk";
> > +
> > + #address-cells = <1>;
> > + #size-cells = <0>;
> > +
> > + channel@0 {
> > + reg = <0>;
> > + adi,diff-channels = <0 1>;
> > + adi,reference-select = <0>;
> > + adi,gain = <2>;
> > + adi,odr-hz = <10>;
> I think you have dropped these two..
>
> >
> >
> > + };
> > +
> > + channel@1 {
> > + reg = <1>;
> > + adi,bipolar;
> > + adi,diff-channels = <2 3>;
> > + adi,reference-select = <0>;
> > + adi,gain = <4>;
> > + adi,odr-hz = <50>;
> > + };
> > +
> > + channel@2 {
> > + reg = <2>;
> > + adi,diff-channels = <4 5>;
> > + adi,gain = <128>;
> > + adi,odr-hz = <19200>;
> > + };
> > +
> > + channel@3 {
> > + reg = <3>;
> > + adi,diff-channels = <6 7>;
> > + };
> > + };
> > diff --git a/MAINTAINERS b/MAINTAINERS
> > index 3a1bfcb..f2fa508 100644
> > --- a/MAINTAINERS
> > +++ b/MAINTAINERS
> > @@ -845,6 +845,7 @@ L: linux-iio@xxxxxxxxxxxxxxx
> > ÂW: http://ez.analog.com/community/linux-device-drivers
> > ÂS: Supported
> > ÂF: drivers/iio/adc/ad7124.c
> > +F: Documentation/devicetree/bindings/iio/adc/adi,ad7124.txt
> > Â
> > ÂANALOG DEVICES INC AD9389B DRIVER
> > ÂM: Hans Verkuil <hans.verkuil@xxxxxxxxx>