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

2018-11-12 Thread Popa, Stefan Serban
On Du, 2018-11-11 at 12:19 +, Jonathan Cameron wrote:
> 
> On Fri, 9 Nov 2018 17:43:00 +0200
> Stefan Popa  wrote:
> 
> > 
> > 
> > Add support for Analog Devices AD7124 4-channels and 8-channels ADC.
> > 
> > Signed-off-by: Stefan Popa 
> 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 000..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 = <500>;
> > +   interrupts = <25 2>;
> > +   interrupt-parent = <>;
> > +   refin1-supply = <_vref>;
> > +   clocks = <_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 {
> > + 

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

2018-11-12 Thread Popa, Stefan Serban
On Du, 2018-11-11 at 12:19 +, Jonathan Cameron wrote:
> 
> On Fri, 9 Nov 2018 17:43:00 +0200
> Stefan Popa  wrote:
> 
> > 
> > 
> > Add support for Analog Devices AD7124 4-channels and 8-channels ADC.
> > 
> > Signed-off-by: Stefan Popa 
> 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 000..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 = <500>;
> > +   interrupts = <25 2>;
> > +   interrupt-parent = <>;
> > +   refin1-supply = <_vref>;
> > +   clocks = <_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 {
> > + 

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

2018-11-11 Thread Jonathan Cameron
On Fri, 9 Nov 2018 17:43:00 +0200
Stefan Popa  wrote:

> Add support for Analog Devices AD7124 4-channels and 8-channels ADC.
> 
> Signed-off-by: Stefan Popa 

Your example still includes the other things that I think you have now dropped.
gain and odr.

> ---
> 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 000..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?

> +
> +   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 = <500>;
> + interrupts = <25 2>;
> + interrupt-parent = <>;
> + refin1-supply = <_vref>;
> + clocks = <_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-...@vger.kernel.org
>  W:   

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

2018-11-11 Thread Jonathan Cameron
On Fri, 9 Nov 2018 17:43:00 +0200
Stefan Popa  wrote:

> Add support for Analog Devices AD7124 4-channels and 8-channels ADC.
> 
> Signed-off-by: Stefan Popa 

Your example still includes the other things that I think you have now dropped.
gain and odr.

> ---
> 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 000..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?

> +
> +   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 = <500>;
> + interrupts = <25 2>;
> + interrupt-parent = <>;
> + refin1-supply = <_vref>;
> + clocks = <_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-...@vger.kernel.org
>  W:   

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

2018-11-09 Thread Stefan Popa
Add support for Analog Devices AD7124 4-channels and 8-channels ADC.

Signed-off-by: Stefan Popa 
---
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 000..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
+
+ 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 = <500>;
+   interrupts = <25 2>;
+   interrupt-parent = <>;
+   refin1-supply = <_vref>;
+   clocks = <_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>;
+   };
+
+   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-...@vger.kernel.org
 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 
-- 
2.7.4



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

2018-11-09 Thread Stefan Popa
Add support for Analog Devices AD7124 4-channels and 8-channels ADC.

Signed-off-by: Stefan Popa 
---
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 000..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
+
+ 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 = <500>;
+   interrupts = <25 2>;
+   interrupt-parent = <>;
+   refin1-supply = <_vref>;
+   clocks = <_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>;
+   };
+
+   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-...@vger.kernel.org
 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 
-- 
2.7.4