Re: [PATCH v5 0/2] Input: cros-ec-keyb: Better matrixless support

From: Dmitry Torokhov
Date: Wed May 18 2022 - 18:08:02 EST


On Wed, May 18, 2022 at 01:07:55PM -0700, Stephen Boyd wrote:
> Quoting Dmitry Torokhov (2022-05-17 22:06:11)
> > Hi Stephen,
> >
> > On Mon, May 16, 2022 at 11:34:50AM -0700, Stephen Boyd wrote:
> > > This is a followup to my previous patch[1] that skips keyboard registration
> > > when the matrix properties aren't present. This adds a compatible string
> > > for this scenario so we can ease existing DTBs over to the new design.
> >
> > As discussed offlist I massaged the binding and the driver code a bit
> > and applied it to an immutable branch off v5.17:
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git ib/5.17-cros-ec-keyb
> >
> > that you can share with DTS maintainer(s) to accelerate DTS conversions.
> >
> > I also dropped the original patch as it did not make it to Linus' tree
> > yet.
> >
>
> Ok thanks. Doug noticed some problems with the dt binding. Here's a
> follow up patch that you can squash in or apply on top.

Added to the same branch, thank you.

>
> ---8<---
> From: Stephen Boyd <swboyd@xxxxxxxxxxxx>
> Date: Wed, 18 May 2022 13:03:58 -0700
> Subject: [PATCH] dt-bindings: google,cros-ec-keyb: Fixup bad compatible match
>
> This uses anyOf which is wrong. Use oneOf and move the items under the
> description. Also drop allOf for $ref.
>
> Reported-by: Douglas Anderson <dianders@xxxxxxxxxxxx>
> Signed-off-by: Stephen Boyd <swboyd@xxxxxxxxxxxx>
> ---
> .../bindings/input/google,cros-ec-keyb.yaml | 11 ++++-------
> 1 file changed, 4 insertions(+), 7 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> index e11cbf508723..c31a02149f37 100644
> --- a/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> +++ b/Documentation/devicetree/bindings/input/google,cros-ec-keyb.yaml
> @@ -20,13 +20,11 @@ description: |
>
> properties:
> compatible:
> - anyOf:
> + oneOf:
> - description: ChromeOS EC with only buttons/switches
> - - items:
> - - const: google,cros-ec-keyb-switches
> + const: google,cros-ec-keyb-switches
> - description: ChromeOS EC with keyboard and possibly buttons/switches
> - - items:
> - - const: google,cros-ec-keyb
> + const: google,cros-ec-keyb
>
> google,needs-ghost-filter:
> description:
> @@ -58,8 +56,7 @@ if:
> contains:
> const: google,cros-ec-keyb
> then:
> - allOf:
> - - $ref: "/schemas/input/matrix-keymap.yaml#"
> + $ref: "/schemas/input/matrix-keymap.yaml#"
> required:
> - keypad,num-rows
> - keypad,num-columns
> --
> https://chromeos.dev

--
Dmitry