Message ID | 20220523170449.1763039-1-robh@kernel.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | dt-bindings: input: matrix-keymap: Add common 'linux,no-autorepeat' property | expand |
On Mon, May 23, 2022 at 12:04:49PM -0500, Rob Herring wrote: > 'linux,no-autorepeat' is a common property used in multiple bindings, > but doesn't have a common type definition nor description. Add a common > definition and drop the now redundant description from > holtek,ht16k33.yaml. We have "autorepeat" in the common input binding description, should we not promote it over "no-autorepeat"? Thanks.
On Mon, May 23, 2022 at 11:47:01AM -0700, Dmitry Torokhov wrote: > On Mon, May 23, 2022 at 12:04:49PM -0500, Rob Herring wrote: > > 'linux,no-autorepeat' is a common property used in multiple bindings, > > but doesn't have a common type definition nor description. Add a common > > definition and drop the now redundant description from > > holtek,ht16k33.yaml. > > We have "autorepeat" in the common input binding description, should we > not promote it over "no-autorepeat"? We're kind of stuck with it I think. We can't just deprecate one and switch existing users as what would neither property present mean? Hopefully, documented in input.yaml vs. matrix-keypad.yaml is enough to say which one is preferred for new users. Rob
On Mon, May 23, 2022 at 02:45:03PM -0500, Rob Herring wrote: > On Mon, May 23, 2022 at 11:47:01AM -0700, Dmitry Torokhov wrote: > > On Mon, May 23, 2022 at 12:04:49PM -0500, Rob Herring wrote: > > > 'linux,no-autorepeat' is a common property used in multiple bindings, > > > but doesn't have a common type definition nor description. Add a common > > > definition and drop the now redundant description from > > > holtek,ht16k33.yaml. > > > > We have "autorepeat" in the common input binding description, should we > > not promote it over "no-autorepeat"? > > We're kind of stuck with it I think. We can't just deprecate one and > switch existing users as what would neither property present mean? I agree, we should not change existng bindings. > > Hopefully, documented in input.yaml vs. matrix-keypad.yaml is enough to > say which one is preferred for new users. So this is what I have issue with, as I think it will introduce confusion: we have drivers/input/matrix-keymap.c and corresponding binding Documentation/devicetree/bindings/input/matrix-keymap.yaml that deals with parsing keymap-related properties for various matrix keypads. It does not specify autorepeat handling one way or another. Then we have drivers/input/keyboard/matrix_keypad.c that is one implementation of matrix keypads, and it does have linux,no-autorepeat, but it does not mean that other devices resembling matrix keypad are forced to use linux,no-autorepeat. And that is why I think putting this property into the generic binding Documentation/devicetree/bindings/input/matrix-keymap.yaml is not a good idea. Thanks.
On Mon, May 23, 2022 at 03:02:42PM -0700, Dmitry Torokhov wrote: > On Mon, May 23, 2022 at 02:45:03PM -0500, Rob Herring wrote: > > On Mon, May 23, 2022 at 11:47:01AM -0700, Dmitry Torokhov wrote: > > > On Mon, May 23, 2022 at 12:04:49PM -0500, Rob Herring wrote: > > > > 'linux,no-autorepeat' is a common property used in multiple bindings, > > > > but doesn't have a common type definition nor description. Add a common > > > > definition and drop the now redundant description from > > > > holtek,ht16k33.yaml. > > > > > > We have "autorepeat" in the common input binding description, should we > > > not promote it over "no-autorepeat"? > > > > We're kind of stuck with it I think. We can't just deprecate one and > > switch existing users as what would neither property present mean? > > I agree, we should not change existng bindings. > > > > > Hopefully, documented in input.yaml vs. matrix-keypad.yaml is enough to > > say which one is preferred for new users. > > So this is what I have issue with, as I think it will introduce > confusion: we have drivers/input/matrix-keymap.c and corresponding > binding Documentation/devicetree/bindings/input/matrix-keymap.yaml that > deals with parsing keymap-related properties for various matrix keypads. > It does not specify autorepeat handling one way or another. Then we have > drivers/input/keyboard/matrix_keypad.c that is one implementation of > matrix keypads, and it does have linux,no-autorepeat, but it does not > mean that other devices resembling matrix keypad are forced to use > linux,no-autorepeat. And that is why I think putting this property into > the generic binding > Documentation/devicetree/bindings/input/matrix-keymap.yaml is not a good > idea. You are right. As it looks like there are only 3 users of linux,no-autorepeat, we can live with multiple definitions. Looks like we have a variety of other autorepeat properties too. Rob
diff --git a/Documentation/devicetree/bindings/auxdisplay/holtek,ht16k33.yaml b/Documentation/devicetree/bindings/auxdisplay/holtek,ht16k33.yaml index fc4873deb76f..f4579e9f44a1 100644 --- a/Documentation/devicetree/bindings/auxdisplay/holtek,ht16k33.yaml +++ b/Documentation/devicetree/bindings/auxdisplay/holtek,ht16k33.yaml @@ -39,8 +39,7 @@ properties: linux,keymap: true - linux,no-autorepeat: - description: Disable keyrepeat + linux,no-autorepeat: true default-brightness-level: minimum: 1 diff --git a/Documentation/devicetree/bindings/input/matrix-keymap.yaml b/Documentation/devicetree/bindings/input/matrix-keymap.yaml index 6699d5e32dca..9f703bb51e12 100644 --- a/Documentation/devicetree/bindings/input/matrix-keymap.yaml +++ b/Documentation/devicetree/bindings/input/matrix-keymap.yaml @@ -27,6 +27,10 @@ properties: column and linux key-code. The 32-bit big endian cell is packed as: row << 24 | column << 16 | key-code + linux,no-autorepeat: + type: boolean + description: Disable keyrepeat + keypad,num-rows: $ref: /schemas/types.yaml#/definitions/uint32 description: Number of row lines connected to the keypad controller.
'linux,no-autorepeat' is a common property used in multiple bindings, but doesn't have a common type definition nor description. Add a common definition and drop the now redundant description from holtek,ht16k33.yaml. Signed-off-by: Rob Herring <robh@kernel.org> --- .../devicetree/bindings/auxdisplay/holtek,ht16k33.yaml | 3 +-- Documentation/devicetree/bindings/input/matrix-keymap.yaml | 4 ++++ 2 files changed, 5 insertions(+), 2 deletions(-)