LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Renato Lui Geh <renatogeh@gmail.com>
To: "Ardelean, Alexandru" <alexandru.Ardelean@analog.com>
Cc: "renatogeh@gmail.com" <renatogeh@gmail.com>,
	"jic23@kernel.org" <jic23@kernel.org>,
	"kernel-usp@googlegroups.com" <kernel-usp@googlegroups.com>,
	"lars@metafoo.de" <lars@metafoo.de>,
	"robh+dt@kernel.org" <robh+dt@kernel.org>,
	"Popa, Stefan Serban" <StefanSerban.Popa@analog.com>,
	"knaack.h@gmx.de" <knaack.h@gmx.de>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	"Hennerich, Michael" <Michael.Hennerich@analog.com>,
	"linux-iio@vger.kernel.org" <linux-iio@vger.kernel.org>,
	"devel@driverdev.osuosl.org" <devel@driverdev.osuosl.org>,
	"mark.rutland@arm.com" <mark.rutland@arm.com>,
	"pmeerw@pmeerw.net" <pmeerw@pmeerw.net>,
	"gregkh@linuxfoundation.org" <gregkh@linuxfoundation.org>
Subject: Re: [PATCH] dt-bindings: iio: adc: add adi,ad7780.yaml binding
Date: Fri, 24 May 2019 21:28:02 -0300	[thread overview]
Message-ID: <20190525002801.ccq54fczbj3wxhan@renatolg> (raw)
In-Reply-To: <5d7ad2935d1e357f1c0885badc5ce3c351c8ed89.camel@analog.com>

Hi Jonathan, Alex,

Thanks for the review. Some comments inline.

Thanks,
Renato

On 05/20, Ardelean, Alexandru wrote:
>On Sun, 2019-05-19 at 12:32 +0100, Jonathan Cameron wrote:
>> [External]
>>
>>
>> On Sat, 18 May 2019 19:41:12 -0300
>> Renato Lui Geh <renatogeh@gmail.com> wrote:
>>
>> > This patch adds a YAML binding for the Analog Devices AD7780/1 and
>> > AD7170/1 analog-to-digital converters.
>> >
>> > Signed-off-by: Renato Lui Geh <renatogeh@gmail.com>
>>
>> One comment inline.  I'll also be needing an ack from Analog on this,
>> preferably Michael's.
>>
>> Thanks,
>>
>> Jonathan
>> > ---
>> >  .../bindings/iio/adc/adi,ad7780.txt           | 48 -----------
>> >  .../bindings/iio/adc/adi,ad7780.yaml          | 85 +++++++++++++++++++
>
>You should also update the MAINTAINERS file.
>Maybe in a following patch.
>It looks like there is not entry in there, so maybe you need to add a new
>one.
>
>Something like:
>
>
>ANALOG DEVICES INC AD7780 DRIVER
>M:      Michael Hennerich <Michael.Hennerich@analog.com>
>M:      Renato Lui Geh <renatogeh@gmail.com>
>L:      linux-iio@vger.kernel.org
>W:      http://ez.analog.com/community/linux-device-drivers
>S:      Supported
>F:      drivers/iio/adc/ad7780.c
>F:      Documentation/devicetree/bindings/iio/adc/adi,ad7780.yaml
>
>This should be after this block
>ANALOG DEVICES INC AD7768-1 DRIVER
>
>Note that I added you as a co-maintainer.
>If you want, you do not need to add that line.
>
>> >  2 files changed, 85 insertions(+), 48 deletions(-)
>> >  delete mode 100644
>> > Documentation/devicetree/bindings/iio/adc/adi,ad7780.txt
>> >  create mode 100644
>> > Documentation/devicetree/bindings/iio/adc/adi,ad7780.yaml
>> >
>> > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7780.txt
>> > b/Documentation/devicetree/bindings/iio/adc/adi,ad7780.txt
>> > deleted file mode 100644
>> > index 440e52555349..000000000000
>> > --- a/Documentation/devicetree/bindings/iio/adc/adi,ad7780.txt
>> > +++ /dev/null
>> > @@ -1,48 +0,0 @@
>> > -* Analog Devices AD7170/AD7171/AD7780/AD7781
>> > -
>> > -Data sheets:
>> > -
>> > -- AD7170:
>> > -     *
>> > https://www.analog.com/media/en/technical-documentation/data-sheets/AD7170.pdf
>> > -- AD7171:
>> > -     *
>> > https://www.analog.com/media/en/technical-documentation/data-sheets/AD7171.pdf
>> > -- AD7780:
>> > -     *
>> > https://www.analog.com/media/en/technical-documentation/data-sheets/ad7780.pdf
>> > -- AD7781:
>> > -     *
>> > https://www.analog.com/media/en/technical-documentation/data-sheets/AD7781.pdf
>> > -
>> > -Required properties:
>> > -
>> > -- compatible: should be one of
>> > -     * "adi,ad7170"
>> > -     * "adi,ad7171"
>> > -     * "adi,ad7780"
>> > -     * "adi,ad7781"
>> > -- reg: spi chip select number for the device
>> > -- vref-supply: the regulator supply for the ADC reference voltage
>> > -
>> > -Optional properties:
>> > -
>> > -- powerdown-gpios:  must be the device tree identifier of the PDRST
>> > pin. If
>> > -                 specified, it will be asserted during driver probe.
>> > As the
>> > -                 line is active high, it should be marked
>> > GPIO_ACTIVE_HIGH.
>> > -- adi,gain-gpios:   must be the device tree identifier of the GAIN
>> > pin. Only for
>> > -                 the ad778x chips. If specified, it will be asserted
>> > during
>> > -                 driver probe. As the line is active low, it should be
>> > marked
>> > -                 GPIO_ACTIVE_LOW.
>> > -- adi,filter-gpios: must be the device tree identifier of the FILTER
>> > pin. Only
>> > -                 for the ad778x chips. If specified, it will be
>> > asserted
>> > -                 during driver probe. As the line is active low, it
>> > should be
>> > -                 marked GPIO_ACTIVE_LOW.
>> > -
>> > -Example:
>> > -
>> > -adc@0 {
>> > -     compatible =  "adi,ad7780";
>> > -     reg =         <0>;
>> > -     vref-supply = <&vdd_supply>
>> > -
>> > -     powerdown-gpios  = <&gpio 12 GPIO_ACTIVE_HIGH>;
>> > -     adi,gain-gpios   = <&gpio  5 GPIO_ACTIVE_LOW>;
>> > -     adi,filter-gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
>> > -};
>> > diff --git a/Documentation/devicetree/bindings/iio/adc/adi,ad7780.yaml
>> > b/Documentation/devicetree/bindings/iio/adc/adi,ad7780.yaml
>> > new file mode 100644
>> > index 000000000000..931bc4f8ec04
>> > --- /dev/null
>> > +++ b/Documentation/devicetree/bindings/iio/adc/adi,ad7780.yaml
>> > @@ -0,0 +1,85 @@
>> > +# SPDX-License-Identifier: GPL-2.0
>> > +%YAML 1.2
>> > +---
>> > +$id: http://devicetree.org/schemas/iio/adc/adi,ad7780.yaml#
>> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> > +
>> > +title: Analog Devices AD7170/AD7171/AD7780/AD7781 analog to digital
>> > converters
>> > +
>> > +maintainers:
>> > +  - Michael Hennerich <michael.hennerich@analog.com>
>> > +
>> > +description: |
>> > +  The ad7780 is a sigma-delta analog to digital converter. This driver
>> > provides
>> > +  reading voltage values and status bits from both the ad778x and
>> > ad717x series.
>> > +  Its interface also allows writing on the FILTER and GAIN GPIO pins
>> > on the
>> > +  ad778x.
>> > +
>> > +  Specifications on the converters can be found at:
>> > +    AD7170:
>> > +
>> > https://www.analog.com/media/en/technical-documentation/data-sheets/AD7170.pdf
>> > +    AD7171:
>> > +
>> > https://www.analog.com/media/en/technical-documentation/data-sheets/AD7171.pdf
>> > +    AD7780:
>> > +
>> > https://www.analog.com/media/en/technical-documentation/data-sheets/ad7780.pdf
>> > +    AD7781:
>> > +
>> > https://www.analog.com/media/en/technical-documentation/data-sheets/AD7781.pdf
>> > +
>> > +properties:
>> > +  compatible:
>> > +    enum:
>> > +      - adi,ad7170
>> > +      - adi,ad7171
>> > +      - adi,ad7780
>> > +      - adi,ad7781
>> > +
>> > +  reg:
>> > +    description:
>> > +      Chip select number for the device
>
>No need to add a description.
>This is pretty standard.
>
>> > +    maxItems: 1
>> > +
>> > +  vref-supply:
>> > +    description:
>> > +      The regulator supply for the ADC reference voltage
>> > +    maxItems: 1
>> > +
>
>As I see in the driver, it's not vref-supply, it's avdd-supply.

You're absolutely right. Shouldn't have mindlessly copied
from the txt, even though the txt's was also my fault.

By the way, a quick look at ad7170 and ad7780's datasheets
shows that the 7170 uses VDD, and the 7780, AVDD. Are they
equivalent?
>
>> > +  powerdown-gpios:
>> > +    description:
>> > +      Must be the device tree identifier of the PDRST pin. If
>> > +      specified, it will be asserted during driver probe. As the
>> > +      line is active high, it should be marked GPIO_ACTIVE_HIGH.
>> > +    maxItems: 1
>> > +
>> > +  adi,gain-gpios:
>> > +    description:
>> > +      Must be the device tree identifier of the GAIN pin. Only for
>> > +      the ad778x chips. If specified, it will be asserted during
>> > +      driver probe. As the line is active low, it should be marked
>> > +      GPIO_ACTIVE_LOW.
>> > +    maxItems: 1
>> > +
>> > +  adi,filter-gpios:
>> > +    description:
>> > +      Must be the device tree identifier of the FILTER pin. Only
>> > +      for the ad778x chips. If specified, it will be asserted
>> > +      during driver probe. As the line is active low, it should be
>> > +      marked GPIO_ACTIVE_LOW.
>> > +    maxItems: 1
>> > +
>> > +required:
>> > +  - compatible
>> > +  - reg
>> > +  - vref-supply
>>
>> Is that actually true?  I'd imagine it'll use a stub regulator if
>> it isn't supplied.
>
>Hmm, I also think this can be omitted as required.
>devm_regulator_get() is used.
>devm_regulator_get_exclusive() would be needed to make this required.

I see. So the difference between devm_regulator_get and
devm_regulator_get_optional is that the former uses a stub
when the requested reg isn't supplied, and the latter
doesn't?
>
>>
>> > +
>> > +examples:
>> > +  - |
>> > +    #include <dt-bindings/gpio/gpio.h>
>> > +    adc@0 {
>
>The adc@0 block should be included in a spi block.
>
>So, something like
>
>spi0 {
>     adc@0 {
>            compatible =  "adi,ad7780";
>            reg =         <0>;
>            avdd-supply = <&vdd_supply>
>
>            powerdown-gpios  = <&gpio 12 GPIO_ACTIVE_HIGH>;
>            adi,gain-gpios   = <&gpio  5 GPIO_ACTIVE_LOW>;
>            adi,filter-gpios = <&gpio 15 GPIO_ACTIVE_LOW>;
>     };
>};
>
>I know this wasn't the case before, but it should be (from what I recall).
>
>> > +      compatible =  "adi,ad7780";
>> > +      reg = <0>;
>> > +      vref-supply = <&vdd_supply>;
>> > +
>> > +      powerdown-gpios  = <&gpio0 12 GPIO_ACTIVE_HIGH>;
>> > +      adi,gain-gpios   = <&gpio1  5 GPIO_ACTIVE_LOW>;
>> > +      adi,filter-gpios = <&gpio2 15 GPIO_ACTIVE_LOW>;
>
>Rest looks good.
>
>Thanks
>Alex
>
>> > +    };
>>
>>

  reply	other threads:[~2019-05-25  0:28 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-18 22:41 Renato Lui Geh
2019-05-19 11:32 ` Jonathan Cameron
2019-05-20  8:32   ` Ardelean, Alexandru
2019-05-25  0:28     ` Renato Lui Geh [this message]
2019-05-26 17:50       ` Jonathan Cameron

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190525002801.ccq54fczbj3wxhan@renatolg \
    --to=renatogeh@gmail.com \
    --cc=Michael.Hennerich@analog.com \
    --cc=StefanSerban.Popa@analog.com \
    --cc=alexandru.Ardelean@analog.com \
    --cc=devel@driverdev.osuosl.org \
    --cc=devicetree@vger.kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jic23@kernel.org \
    --cc=kernel-usp@googlegroups.com \
    --cc=knaack.h@gmx.de \
    --cc=lars@metafoo.de \
    --cc=linux-iio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=pmeerw@pmeerw.net \
    --cc=robh+dt@kernel.org \
    --subject='Re: [PATCH] dt-bindings: iio: adc: add adi,ad7780.yaml binding' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).