From: Rob Herring <robh@kernel.org>
To: Doug Anderson <dianders@chromium.org>
Cc: Stephen Boyd <swboyd@chromium.org>,
Benson Leung <bleung@chromium.org>,
LKML <linux-kernel@vger.kernel.org>,
patches@lists.linux.dev,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
"open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@vger.kernel.org>,
chrome-platform@lists.linux.dev,
Guenter Roeck <groeck@chromium.org>,
Craig Hesling <hesling@chromium.org>,
Tom Hughes <tomhughes@chromium.org>,
Alexandru M Stan <amstan@chromium.org>,
Tzung-Bi Shih <tzungbi@kernel.org>,
Matthias Kaehlcke <mka@chromium.org>,
Lee Jones <lee.jones@linaro.org>
Subject: Re: [PATCH v6 2/2] dt-bindings: cros-ec: Add ChromeOS fingerprint binding
Date: Mon, 27 Jun 2022 15:57:20 -0600 [thread overview]
Message-ID: <20220627215720.GA3004792-robh@kernel.org> (raw)
In-Reply-To: <CAD=FV=UU-AENyChCvVAKH709E4hFtgo4Txa8zFDY=JM1UifA0g@mail.gmail.com>
On Tue, Jun 14, 2022 at 03:41:25PM -0700, Doug Anderson wrote:
> Hi,
>
> On Tue, Jun 14, 2022 at 12:51 PM Stephen Boyd <swboyd@chromium.org> wrote:
> >
> > Add a binding to describe the fingerprint processor found on Chromebooks
> > with a fingerprint sensor. Previously we've been describing this with
> > the google,cros-ec-spi binding but it lacks gpio and regulator control
> > used during firmware flashing.
> >
> > Cc: Rob Herring <robh+dt@kernel.org>
> > Cc: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
> > Cc: <devicetree@vger.kernel.org>
> > Cc: <chrome-platform@lists.linux.dev>
> > Cc: Guenter Roeck <groeck@chromium.org>
> > Cc: Douglas Anderson <dianders@chromium.org>
> > Cc: Craig Hesling <hesling@chromium.org>
> > Cc: Tom Hughes <tomhughes@chromium.org>
> > Cc: Alexandru M Stan <amstan@chromium.org>
> > Cc: Tzung-Bi Shih <tzungbi@kernel.org>
> > Cc: Matthias Kaehlcke <mka@chromium.org>
> > Cc: Benson Leung <bleung@chromium.org>
> > Cc: Lee Jones <lee.jones@linaro.org>
> > Signed-off-by: Stephen Boyd <swboyd@chromium.org>
> > ---
> > .../bindings/chrome/google,cros-ec-fp.yaml | 97 +++++++++++++++++++
> > .../bindings/mfd/google,cros-ec.yaml | 9 ++
> > 2 files changed, 106 insertions(+)
> > create mode 100644 Documentation/devicetree/bindings/chrome/google,cros-ec-fp.yaml
> >
> > diff --git a/Documentation/devicetree/bindings/chrome/google,cros-ec-fp.yaml b/Documentation/devicetree/bindings/chrome/google,cros-ec-fp.yaml
> > new file mode 100644
> > index 000000000000..48c02bd4585c
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/chrome/google,cros-ec-fp.yaml
> > @@ -0,0 +1,97 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/chrome/google,cros-ec-fp.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: ChromeOS Embedded Fingerprint Controller
> > +
> > +description:
> > + Google's ChromeOS embedded fingerprint controller is a device which
> > + implements fingerprint functionality such as unlocking a Chromebook
> > + without typing a password.
> > +
> > +maintainers:
> > + - Tom Hughes <tomhughes@chromium.org>
> > +
> > +select:
> > + properties:
> > + compatible:
> > + contains:
> > + const: google,cros-ec-spi
> > + required:
> > + - compatible
> > + - boot0-gpios
>
> I've never personally used "select" before and I'm not sure where it's
> documented.
Documentation/devicetree/bindings/writing-schema.rst
> Without knowing anything, it seems weird to me that in
> this file we're matching against a compatible that's not
> google,cros-ec-fp. Randomly grabbing some other example that's similar
> (panel-lvds.yaml) looks more like what I would have expected. AKA in
> this file:
>
> select:
> properties:
> compatible:
> contains:
> const: google,cros-ec-fp
> required:
> - compatible
>
> ...and then in the other file:
>
> select:
> properties:
> compatible:
> contains:
> const: google,cros-ec-spi
What about i2c and rpmsg variants?
> not:
> properties:
> compatible:
> contains:
> const: google,cros-ec-fp
> required:
> - compatible
That is what is needed assuming the binding stands as-is. Otherwise,
boot0-gpios erroneously present or missing will give unexpected results.
If we were starting from scratch, I would say you should just drop
'google,cros-ec-spi' from this binding. But I guess you want to preserve
compatibility here. In that case, I think all this should be added to
the existing doc with an if/then schema for conditional parts. That also
avoids defining the common properties twice or moving them to a common,
shared schema.
Rob
next prev parent reply other threads:[~2022-06-27 21:57 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-14 19:51 [PATCH v6 0/2] dt-bindings: cros-ec: Update for fingerprint devices Stephen Boyd
2022-06-14 19:51 ` [PATCH v6 1/2] dt-bindings: cros-ec: Reorganize property availability Stephen Boyd
2022-06-14 22:41 ` Doug Anderson
2022-06-16 0:39 ` Stephen Boyd
2022-06-27 21:35 ` Rob Herring
2022-06-14 19:51 ` [PATCH v6 2/2] dt-bindings: cros-ec: Add ChromeOS fingerprint binding Stephen Boyd
2022-06-14 22:41 ` Doug Anderson
2022-06-16 0:50 ` Stephen Boyd
2022-06-27 21:57 ` Rob Herring [this message]
2022-06-29 7:29 ` Stephen Boyd
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=20220627215720.GA3004792-robh@kernel.org \
--to=robh@kernel.org \
--cc=amstan@chromium.org \
--cc=bleung@chromium.org \
--cc=chrome-platform@lists.linux.dev \
--cc=devicetree@vger.kernel.org \
--cc=dianders@chromium.org \
--cc=groeck@chromium.org \
--cc=hesling@chromium.org \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=lee.jones@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mka@chromium.org \
--cc=patches@lists.linux.dev \
--cc=swboyd@chromium.org \
--cc=tomhughes@chromium.org \
--cc=tzungbi@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 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.