Message ID | 20220516183452.942008-1-swboyd@chromium.org (mailing list archive) |
---|---|
Headers | show |
Series | Input: cros-ec-keyb: Better matrixless support | expand |
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. Thanks.
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. ---8<--- From: Stephen Boyd <swboyd@chromium.org> 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@chromium.org> Signed-off-by: Stephen Boyd <swboyd@chromium.org> --- .../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
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@chromium.org> > 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@chromium.org> > Signed-off-by: Stephen Boyd <swboyd@chromium.org> > --- > .../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
Hello: This series was applied to chrome-platform/linux.git (for-next) by Dmitry Torokhov <dmitry.torokhov@gmail.com>: On Mon, 16 May 2022 11:34:50 -0700 you 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. > > Changes from v4 (https://lore.kernel.org/r/20220503204212.3907925-1-swboyd@chromium.org): > * Make switches compatible fail probe if no switches present > * Add description to compatible list > > [...] Here is the summary with links: - [v5,1/2] dt-bindings: google,cros-ec-keyb: Introduce switches only compatible https://git.kernel.org/chrome-platform/c/52dc6d3bea3b - [v5,2/2] Input: cros-ec-keyb - skip keyboard registration w/o cros-ec-keyb compatible https://git.kernel.org/chrome-platform/c/ca1eadbfcd36 You are awesome, thank you!