From: Kamel Bouhara <kamel.bouhara@bootlin.com>
To: Maxime Ripard <maxime@cerno.tech>
Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>,
William Breathitt Gray <vilhelm.gray@gmail.com>,
Rob Herring <robh+dt@kernel.org>,
Mark Rutland <mark.rutland@arm.com>,
Nicolas Ferre <nicolas.ferre@microchip.com>,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
Ludovic Desroches <ludovic.desroches@microchip.com>,
linux-arm-kernel@lists.infradead.org,
Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
linux-input@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-iio@vger.kernel.org
Subject: Re: [PATCH 2/3] Input: rotary-encoder-counter: add DT bindings
Date: Tue, 7 Apr 2020 13:03:39 +0200 [thread overview]
Message-ID: <20200407110339.GA1489441@kb-xps> (raw)
In-Reply-To: <20200407094159.xtbhtsxorvs2g22c@gilmour.lan>
On Tue, Apr 07, 2020 at 11:41:59AM +0200, Maxime Ripard wrote:
> Hi Kamel,
>
Hi Maxime,
> The prefix for device tree bindings is usually dt-bindings:
> $framework: $title
>
> So a title like "dt-bindings: input: Add a counter-based rotary
> encoder binding" would be better.
>
OK, to be fixed then.
> On Mon, Apr 06, 2020 at 05:58:05PM +0200, Kamel Bouhara wrote:
> > Add dt binding for the counter variant of the rotary encoder driver.
> >
> > Signed-off-by: Kamel Bouhara <kamel.bouhara@bootlin.com>
> > ---
> > .../input/rotary-encoder-counter.yaml | 67 +++++++++++++++++++
> > 1 file changed, 67 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/input/rotary-encoder-counter.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/input/rotary-encoder-counter.yaml b/Documentation/devicetree/bindings/input/rotary-encoder-counter.yaml
> > new file mode 100644
> > index 000000000000..a59f7c1faf0c
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/input/rotary-encoder-counter.yaml
> > @@ -0,0 +1,67 @@
> > +# SPDX-License-Identifier: GPL-2.0
>
> Bindings are usually used by other OS's, so you should consider
> putting it under a more permissive license, usually that would be GPL2
> and the BSD-2-Clause
>
Well to be honest I just looked into an existing binding and I guess
the wrong one :).
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/input/rotary-encoder-counter.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Rotary Encoder Counter
> > +
> > +maintainers:
> > + - Kamel Bouhara <kamel.bouhara@bootlin.com>
> > +
> > +description:
> > + Registers a Rotary encoder connected through a counter device.
>
> You shouldn't really describe the action here, but more what the
> binding is about. The registration will not depend on the presence of
> the node following that binding, but rather on whether or not the OS
> that uses it has support for it.
>
Then shall it be better with just :
"A rotary encoder device using a generic counter interface." ?
> > +properties:
> > + compatible:
> > + const: rotary-encoder-counter
> > +
> > + counter:
> > + description: Phandle for the counter device providing rotary position.
>
> This should have a type
>
> > + linux-axis:
> > + description: The input subsystem axis to map to this rotary encoder.
> > + type: boolean
> > +
> > + qdec-mode:
> > + description: |
> > + Quadrature decoder function to set in the counter device.
> > + 3: x1-PHA
> > + 4: x1-PHB
> > + 5: x2-PHA
> > + 6: x2-PHB
> > + 7: x4-PHA and PHB
>
> That range (even though it's a bit odd) should be expressed through an
> enum so that you can check that the values are actually within that
> range.
>
Indeed, that make sens to check it from the binding.
Will fix it in v2.
> > + steps:
> > + description: Number of steps in a full turnaround of the encoder.
>
> Muli-line strings should have either quotes around them, or a | or >
> like you did for the description. | will keep the \n, > will make that
> a single string.
>
> This should also have a type
>
> > + Only relevant for absolute axis.
>
> This should be expressed through a if / then clause, or a dependencies one
>
> > Defaults to 24 which is a typical
> > + value for such devices.
>
> This should be expressed through a default property.
>
The devil is in the details and yet quite lot of them to fix.
Thanks.
> > + relative-axis:
> > + description: Register a relative axis rather than an absolute one.
> > + type: boolean
> > +
> > + rollover:
> > + description: Automatic rollover when the rotary value becomes greater
> > + than the specified steps or smaller than 0. For absolute axis only.
> > + type: boolean
>
> Same story than steps for the dependency. Also, what is is the
> behaviour when this property isn't set?
>
OK, if rollover isn't set then the count is unbounded, of course this
shall be described here.
> > + poll-interval:
> > + description: Poll interval at which the position is read from the counter
> > + device (default 500ms).
>
> It should have a type too, and a default property
>
> > +
> > +required:
> > + - compatible
> > + - counter
> > + - qdec-mode
> > +
> > +examples:
> > + - |
> > + rotary@0 {
> > + compatible = "rotary-encoder-counter";
>
> A unit-address (the part after @) only makes sense for a node if
> there's a matching reg property in the node. This will trigger a DTC
> warning, so you should remove the @0
>
Ok I'll fix it then.
Thanks again.
> Maxime
--
Kamel Bouhara, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com
WARNING: multiple messages have this Message-ID (diff)
From: Kamel Bouhara <kamel.bouhara@bootlin.com>
To: Maxime Ripard <maxime@cerno.tech>
Cc: Mark Rutland <mark.rutland@arm.com>,
devicetree@vger.kernel.org,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
linux-iio@vger.kernel.org, linux-kernel@vger.kernel.org,
Dmitry Torokhov <dmitry.torokhov@gmail.com>,
William Breathitt Gray <vilhelm.gray@gmail.com>,
Ludovic Desroches <ludovic.desroches@microchip.com>,
Rob Herring <robh+dt@kernel.org>,
Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
linux-input@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 2/3] Input: rotary-encoder-counter: add DT bindings
Date: Tue, 7 Apr 2020 13:03:39 +0200 [thread overview]
Message-ID: <20200407110339.GA1489441@kb-xps> (raw)
In-Reply-To: <20200407094159.xtbhtsxorvs2g22c@gilmour.lan>
On Tue, Apr 07, 2020 at 11:41:59AM +0200, Maxime Ripard wrote:
> Hi Kamel,
>
Hi Maxime,
> The prefix for device tree bindings is usually dt-bindings:
> $framework: $title
>
> So a title like "dt-bindings: input: Add a counter-based rotary
> encoder binding" would be better.
>
OK, to be fixed then.
> On Mon, Apr 06, 2020 at 05:58:05PM +0200, Kamel Bouhara wrote:
> > Add dt binding for the counter variant of the rotary encoder driver.
> >
> > Signed-off-by: Kamel Bouhara <kamel.bouhara@bootlin.com>
> > ---
> > .../input/rotary-encoder-counter.yaml | 67 +++++++++++++++++++
> > 1 file changed, 67 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/input/rotary-encoder-counter.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/input/rotary-encoder-counter.yaml b/Documentation/devicetree/bindings/input/rotary-encoder-counter.yaml
> > new file mode 100644
> > index 000000000000..a59f7c1faf0c
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/input/rotary-encoder-counter.yaml
> > @@ -0,0 +1,67 @@
> > +# SPDX-License-Identifier: GPL-2.0
>
> Bindings are usually used by other OS's, so you should consider
> putting it under a more permissive license, usually that would be GPL2
> and the BSD-2-Clause
>
Well to be honest I just looked into an existing binding and I guess
the wrong one :).
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/input/rotary-encoder-counter.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Rotary Encoder Counter
> > +
> > +maintainers:
> > + - Kamel Bouhara <kamel.bouhara@bootlin.com>
> > +
> > +description:
> > + Registers a Rotary encoder connected through a counter device.
>
> You shouldn't really describe the action here, but more what the
> binding is about. The registration will not depend on the presence of
> the node following that binding, but rather on whether or not the OS
> that uses it has support for it.
>
Then shall it be better with just :
"A rotary encoder device using a generic counter interface." ?
> > +properties:
> > + compatible:
> > + const: rotary-encoder-counter
> > +
> > + counter:
> > + description: Phandle for the counter device providing rotary position.
>
> This should have a type
>
> > + linux-axis:
> > + description: The input subsystem axis to map to this rotary encoder.
> > + type: boolean
> > +
> > + qdec-mode:
> > + description: |
> > + Quadrature decoder function to set in the counter device.
> > + 3: x1-PHA
> > + 4: x1-PHB
> > + 5: x2-PHA
> > + 6: x2-PHB
> > + 7: x4-PHA and PHB
>
> That range (even though it's a bit odd) should be expressed through an
> enum so that you can check that the values are actually within that
> range.
>
Indeed, that make sens to check it from the binding.
Will fix it in v2.
> > + steps:
> > + description: Number of steps in a full turnaround of the encoder.
>
> Muli-line strings should have either quotes around them, or a | or >
> like you did for the description. | will keep the \n, > will make that
> a single string.
>
> This should also have a type
>
> > + Only relevant for absolute axis.
>
> This should be expressed through a if / then clause, or a dependencies one
>
> > Defaults to 24 which is a typical
> > + value for such devices.
>
> This should be expressed through a default property.
>
The devil is in the details and yet quite lot of them to fix.
Thanks.
> > + relative-axis:
> > + description: Register a relative axis rather than an absolute one.
> > + type: boolean
> > +
> > + rollover:
> > + description: Automatic rollover when the rotary value becomes greater
> > + than the specified steps or smaller than 0. For absolute axis only.
> > + type: boolean
>
> Same story than steps for the dependency. Also, what is is the
> behaviour when this property isn't set?
>
OK, if rollover isn't set then the count is unbounded, of course this
shall be described here.
> > + poll-interval:
> > + description: Poll interval at which the position is read from the counter
> > + device (default 500ms).
>
> It should have a type too, and a default property
>
> > +
> > +required:
> > + - compatible
> > + - counter
> > + - qdec-mode
> > +
> > +examples:
> > + - |
> > + rotary@0 {
> > + compatible = "rotary-encoder-counter";
>
> A unit-address (the part after @) only makes sense for a node if
> there's a matching reg property in the node. This will trigger a DTC
> warning, so you should remove the @0
>
Ok I'll fix it then.
Thanks again.
> Maxime
--
Kamel Bouhara, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-04-07 11:03 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-06 15:58 [PATCH 0/3] Introduce a counter inkernel API Kamel Bouhara
2020-04-06 15:58 ` Kamel Bouhara
2020-04-06 15:58 ` [PATCH 1/3] counter: add an " Kamel Bouhara
2020-04-06 15:58 ` Kamel Bouhara
2020-04-10 17:34 ` Randy Dunlap
2020-04-10 17:34 ` Randy Dunlap
2020-04-11 9:58 ` Kamel Bouhara
2020-04-11 9:58 ` Kamel Bouhara
2020-04-06 15:58 ` [PATCH 2/3] Input: rotary-encoder-counter: add DT bindings Kamel Bouhara
2020-04-06 15:58 ` Kamel Bouhara
2020-04-07 9:41 ` Maxime Ripard
2020-04-07 9:41 ` Maxime Ripard
2020-04-07 11:03 ` Kamel Bouhara [this message]
2020-04-07 11:03 ` Kamel Bouhara
2020-04-07 14:22 ` Maxime Ripard
2020-04-07 14:22 ` Maxime Ripard
2020-04-07 14:55 ` Kamel Bouhara
2020-04-07 14:55 ` Kamel Bouhara
2020-04-09 22:21 ` Dmitry Torokhov
2020-04-09 22:21 ` Dmitry Torokhov
2020-04-09 22:39 ` Alexandre Belloni
2020-04-09 22:39 ` Alexandre Belloni
2020-04-09 23:46 ` Dmitry Torokhov
2020-04-09 23:46 ` Dmitry Torokhov
2020-04-11 10:43 ` Kamel Bouhara
2020-04-11 10:43 ` Kamel Bouhara
2020-04-06 15:58 ` [PATCH 3/3] Input: add a rotary encoders based on counter devices Kamel Bouhara
2020-04-06 15:58 ` Kamel Bouhara
2020-04-11 17:22 ` [PATCH 0/3] Introduce a counter inkernel API William Breathitt Gray
2020-04-11 17:22 ` William Breathitt Gray
2020-04-11 23:31 ` Alexandre Belloni
2020-04-11 23:31 ` Alexandre Belloni
2020-04-12 1:48 ` William Breathitt Gray
2020-04-12 1:48 ` William Breathitt Gray
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=20200407110339.GA1489441@kb-xps \
--to=kamel.bouhara@bootlin.com \
--cc=alexandre.belloni@bootlin.com \
--cc=devicetree@vger.kernel.org \
--cc=dmitry.torokhov@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-iio@vger.kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ludovic.desroches@microchip.com \
--cc=mark.rutland@arm.com \
--cc=maxime@cerno.tech \
--cc=nicolas.ferre@microchip.com \
--cc=robh+dt@kernel.org \
--cc=thomas.petazzoni@bootlin.com \
--cc=vilhelm.gray@gmail.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.