linux-iio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Rui Miguel Silva <rmfrfs@gmail.com>
To: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: Jonathan Cameron <jic23@kernel.org>,
	Rob Herring <robh+dt@kernel.org>,
	Fabio Estevam <fabio.estevam@nxp.com>,
	linux-iio@vger.kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH] dt-bindings: fxas21002c: convert bindings to yaml
Date: Tue, 13 Oct 2020 22:47:58 +0100	[thread overview]
Message-ID: <20201013214758.imirylgu2p6hc54r@arch-thunder.localdomain> (raw)
In-Reply-To: <20201013205403.6tni6zi7bfg7ogye@arch-thunder.localdomain>

Hi Jonathan,
forgot the link bellow...

On Tue, Oct 13, 2020 at 09:54:06PM +0100, Rui Miguel Silva wrote:
> Hi Jonathan,
> On Tue, Oct 13, 2020 at 04:34:31PM +0100, Jonathan Cameron wrote:
> > On Tue, 13 Oct 2020 14:15:45 +0100
> > Rui Miguel Silva <rui.silva@linaro.org> wrote:
> > 
> > > Convert fxas21002c gyroscope sensor bindings documentation to
> > > yaml schema and remove the textual bindings document.
> > > 
> > > Signed-off-by: Rui Miguel Silva <rmfrfs@gmail.com>
> > 
> > Hi Rui,
> > 
> > Always good to see a yaml conversion.
> > 
> > Comments inline...
> 
> Thanks for the review, I will address all your comments, just a small
> note bellow regarding the unevaluatedProperties.
> 
> > 
> > > ---
> > >  .../bindings/iio/gyroscope/nxp,fxas21002c.txt | 31 --------
> > >  .../iio/gyroscope/nxp,fxas21002c.yaml         | 77 +++++++++++++++++++
> > >  MAINTAINERS                                   |  2 +-
> > >  3 files changed, 78 insertions(+), 32 deletions(-)
> > >  delete mode 100644 Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.txt
> > >  create mode 100644 Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.yaml
> > > 
> > > diff --git a/Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.txt b/Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.txt
> > > deleted file mode 100644
> > > index 465e104bbf14..000000000000
> > > --- a/Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.txt
> > > +++ /dev/null
> > > @@ -1,31 +0,0 @@
> > > -* NXP FXAS21002C Gyroscope device tree bindings
> > > -
> > > -http://www.nxp.com/products/sensors/gyroscopes/3-axis-digital-gyroscope:FXAS21002C
> > > -
> > > -Required properties:
> > > -  - compatible : should be "nxp,fxas21002c"
> > > -  - reg : the I2C address of the sensor or SPI chip select number for the
> > > -          device.
> > > -  - vdd-supply: phandle to the regulator that provides power to the sensor.
> > > -  - vddio-supply: phandle to the regulator that provides power to the bus.
> > > -
> > > -Optional properties:
> > > -  - reset-gpios : gpio used to reset the device, see gpio/gpio.txt
> > > -  - interrupts : device support 2 interrupts, INT1 and INT2,
> > > -                 the interrupts can be triggered on rising or falling edges.
> > > -                 See interrupt-controller/interrupts.txt
> > > -  - interrupt-names: should contain "INT1" or "INT2", the gyroscope interrupt
> > > -                     line in use.
> > > -  - drive-open-drain: the interrupt/data ready line will be configured
> > > -                      as open drain, which is useful if several sensors share
> > > -                      the same interrupt line. This is a boolean property.
> > > -                      (This binding is taken from pinctrl/pinctrl-bindings.txt)
> > > -
> > > -Example:
> > > -
> > > -gyroscope@20 {
> > > -	compatible = "nxp,fxas21002c";
> > > -	reg = <0x20>;
> > > -	vdd-supply = <&reg_peri_3p15v>;
> > > -	vddio-supply = <&reg_peri_3p15v>;
> > > -};
> > > diff --git a/Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.yaml b/Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.yaml
> > > new file mode 100644
> > > index 000000000000..7680e97cf1d9
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.yaml
> > > @@ -0,0 +1,77 @@
> > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> > > +%YAML 1.2
> > > +---
> > > +$id: http://devicetree.org/schemas/iio/gyroscope/nxp,fxas21002c.yaml#
> > > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > > +
> > > +title: NXP FXAS21002C Gyroscope Unit
> > 
> > Why Unit? Gyroscope seems fine to me.
> > 
> > > +
> > > +maintainers:
> > > +  - Rui Miguel Silva <rmfrfs@gmail.com>
> > > +
> > > +description: |
> > > +  3 axis digital gyroscope device with an I2C and SPI interface.
> > 
> > Can we document the SPI binding as well?  With an example.
> > 
> > > +  http://www.nxp.com/products/sensors/gyroscopes/3-axis-digital-gyroscope:FXAS21002C
> > > +
> > > +properties:
> > > +  compatible:
> > > +    enum:
> > > +      - nxp,fxas21002c
> > 
> > Unless we think it likely this binding is going to shortly include other options,
> >        const: nxp... 
> > (doesn't matter that much though!)
> > 
> > > +
> > > +  reg:
> > > +    maxItems: 1
> > > +    description: base address of the device
> > 
> > No it isn't. It is the i2c address. Also this is standard so no description needed.
> > 
> > 
> > > +
> > > +  vdd-supply:
> > > +    description: Regulator that provides power to the sensor
> > > +
> > > +  vddio-supply:
> > > +    description: Regulator that provides power to the bus
> > > +
> > > +  reset-gpios:
> > > +    maxItems: 1
> > > +    description: GPIO connected to reset
> > > +
> > > +  interrupts:
> > > +    minItems: 1
> > > +    maxItems: 2
> > > +    description: device support 2 interrupts,
> > I'd argue that's obvious from the maxItems. So no need to repeat it.
> > 
> > 
> >  INT1 and INT2,
> > This part is clear form interrupt-names so again, I wouldn't say it again.
> > 
> >  the interrupts can
> > > +                 be triggered on rising or falling edges.
> > This last bit is useful so I would have just this or something like
> > 
> > Either interrupt may be triggered on rising or falling edges.
> > 
> > > +
> > > +  interrupt-names:
> > > +    minItems: 1
> > > +    maxItems: 2
> > > +    items:
> > > +      enum:
> > > +        - INT1
> > > +        - INT2
> > > +    description: gyroscope interrupt line in use.
> > 
> > Singular with 2 interrupts.  Personally I'd just drop the description as not
> > adding anything.
> > 
> > > +
> > > +  drive-open-drain:
> > > +    type: boolean
> > > +    description: the interrupt/data ready line will be configured as open drain,
> > > +                 which is useful if several sensors share the same interrupt
> > > +                 line.
> > > +
> > > +required:
> > > +  - compatible
> > > +  - reg
> > > +  - vdd-supply
> > 
> > Why required?  If it's hard wired on will a stub regulator not work fine
> > with this device.  Do we need to read it's voltage or similar?
> > 
> > > +  - vddio-supply
> > > +
> > > +unevaluatedProperties: false
> > 
> > Why unevalutatedProperties rather than additionalProperties?
> > I'll confess I don't really understand when to use unevaluatedProperties.
> 
> Yeah, it is not very clear also to me, I was just following this
> clean up series from Rob, and from my understanding here is a case for

here is the missing link to the clean up series:
https://lkml.kernel.org/lkml/20201006100036.00007ec7@Huawei.com/T/

Cheers,
   Rui

> unevaluatedProperties. But maybe I got it all wrong.
> 
> Cheers,
>    Rui
> 
> > I'm guessing issue here is we don't have the SPI bindings stuff?
> > 
> > > +
> > > +examples:
> > > +  - |
> > > +    i2c0 {
> > > +        #address-cells = <1>;
> > > +        #size-cells = <0>;
> > > +
> > > +        gyroscope@20 {
> > > +          compatible = "nxp,fxas21002c";
> > > +          reg = <0x20>;
> > > +
> > > +          vdd-supply = <&reg_peri_3p15v>;
> > > +          vddio-supply = <&reg_peri_3p15v>;
> > > +        };
> > > +    };
> > > diff --git a/MAINTAINERS b/MAINTAINERS
> > > index 6594f0966716..2e85e114c9c3 100644
> > > --- a/MAINTAINERS
> > > +++ b/MAINTAINERS
> > > @@ -12469,7 +12469,7 @@ NXP FXAS21002C DRIVER
> > >  M:	Rui Miguel Silva <rmfrfs@gmail.com>
> > >  L:	linux-iio@vger.kernel.org
> > >  S:	Maintained
> > > -F:	Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.txt
> > > +F:	Documentation/devicetree/bindings/iio/gyroscope/nxp,fxas21002c.yaml
> > >  F:	drivers/iio/gyro/fxas21002c.h
> > >  F:	drivers/iio/gyro/fxas21002c_core.c
> > >  F:	drivers/iio/gyro/fxas21002c_i2c.c
> > 

      reply	other threads:[~2020-10-14  9:21 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-13 13:15 [PATCH] dt-bindings: fxas21002c: convert bindings to yaml Rui Miguel Silva
2020-10-13 15:34 ` Jonathan Cameron
2020-10-13 20:54   ` Rui Miguel Silva
2020-10-13 21:47     ` Rui Miguel Silva [this message]

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=20201013214758.imirylgu2p6hc54r@arch-thunder.localdomain \
    --to=rmfrfs@gmail.com \
    --cc=Jonathan.Cameron@huawei.com \
    --cc=devicetree@vger.kernel.org \
    --cc=fabio.estevam@nxp.com \
    --cc=jic23@kernel.org \
    --cc=linux-iio@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).