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