Re: [PATCH 1/2] dt-bindings: google,cros-ec-keyb: Introduce switches only compatible

From: Krzysztof Kozlowski
Date: Fri Apr 29 2022 - 12:36:13 EST


On 29/04/2022 18:31, Doug Anderson wrote:
>> - $ref: "/schemas/input/matrix-keymap.yaml#"
>>
>> properties:
>> compatible:
>> - const: google,cros-ec-keyb
>> + oneOf:
>> + - items:
>> + - const: google,cros-ec-keyb-switches
>> + - const: google,cros-ec-keyb
>> + - items:
>> + - const: google,cros-ec-keyb
>
> nit: if I come back and read this binding later I'm not sure it would
> be obvious which compatible I should pick. Can we give any description
> here that indicates that the first choice is for devices that _only_
> have buttons and switches (the google,cros-ec-keyb is just for
> backward compatibility) and the second choice is for devices that have
> a physical keyboard and _also_ possibly some buttons/switches?
>
> I could also imagine people in the future being confused about whether
> it's allowed to specify matrix properties even for devices that don't
> have a matrix keyboard. It might be worth noting that it's allowed (to
> support old drivers that might still be matching against the
> google,cros-ec-keyb compatible) but not required.

+1

>
>
>> google,needs-ghost-filter:
>> description:
>> @@ -50,7 +56,7 @@ examples:
>> - |
>> #include <dt-bindings/input/input.h>
>> cros-ec-keyb {
>> - compatible = "google,cros-ec-keyb";
>> + compatible = "google,cros-ec-keyb-switches", "google,cros-ec-keyb";
>
> Feels like we should create a second example?

+1 as well, because it really would confuse what's the difference
between them.

Best regards,
Krzysztof